about summary refs log tree commit diff
path: root/pkgs/development/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r--pkgs/development/libraries/LAStools/default.nix11
-rw-r--r--pkgs/development/libraries/SDL/default.nix136
-rw-r--r--pkgs/development/libraries/SDL/find-headers.patch26
-rw-r--r--pkgs/development/libraries/SDL/setup-hook.sh16
-rw-r--r--pkgs/development/libraries/SDL2/default.nix219
-rw-r--r--pkgs/development/libraries/SDL2_image/default.nix42
-rw-r--r--pkgs/development/libraries/SDL_compat/default.nix62
-rw-r--r--pkgs/development/libraries/aalib/default.nix2
-rw-r--r--pkgs/development/libraries/abseil-cpp/202103.nix2
-rw-r--r--pkgs/development/libraries/abseil-cpp/202301.nix2
-rw-r--r--pkgs/development/libraries/abseil-cpp/202401.nix8
-rw-r--r--pkgs/development/libraries/abseil-cpp/202407.nix (renamed from pkgs/development/libraries/abseil-cpp/202111.nix)31
-rw-r--r--pkgs/development/libraries/accounts-qml-module/default.nix2
-rw-r--r--pkgs/development/libraries/acl/default.nix2
-rw-r--r--pkgs/development/libraries/adns/default.nix17
-rw-r--r--pkgs/development/libraries/aemu/LFS64.patch98
-rw-r--r--pkgs/development/libraries/aemu/default.nix8
-rw-r--r--pkgs/development/libraries/afflib/default.nix2
-rw-r--r--pkgs/development/libraries/agda/1lab/default.nix8
-rw-r--r--pkgs/development/libraries/agda/agda-prelude/default.nix6
-rw-r--r--pkgs/development/libraries/agda/generics/default.nix28
-rw-r--r--pkgs/development/libraries/agda/standard-library/default.nix4
-rw-r--r--pkgs/development/libraries/agg/default.nix6
-rw-r--r--pkgs/development/libraries/allegro/5.nix2
-rw-r--r--pkgs/development/libraries/amdvlk/default.nix120
-rw-r--r--pkgs/development/libraries/amdvlk/test.nix49
-rw-r--r--pkgs/development/libraries/amf-headers/default.nix4
-rw-r--r--pkgs/development/libraries/aml/default.nix2
-rw-r--r--pkgs/development/libraries/apache-activemq/default.nix29
-rw-r--r--pkgs/development/libraries/appindicator-sharp/default.nix2
-rw-r--r--pkgs/development/libraries/appstream/default.nix6
-rw-r--r--pkgs/development/libraries/appstream/qt.nix4
-rw-r--r--pkgs/development/libraries/apr-util/default.nix12
-rw-r--r--pkgs/development/libraries/apr/default.nix6
-rw-r--r--pkgs/development/libraries/aqbanking/default.nix2
-rw-r--r--pkgs/development/libraries/aqbanking/gwenhywfar.nix2
-rw-r--r--pkgs/development/libraries/aravis/default.nix4
-rw-r--r--pkgs/development/libraries/argparse/default.nix4
-rw-r--r--pkgs/development/libraries/aribb25/default.nix6
-rw-r--r--pkgs/development/libraries/arpa2common/default.nix61
-rw-r--r--pkgs/development/libraries/arrayfire/default.nix15
-rw-r--r--pkgs/development/libraries/arrow-glib/default.nix34
-rw-r--r--pkgs/development/libraries/asio/generic.nix2
-rw-r--r--pkgs/development/libraries/assimp/default.nix4
-rw-r--r--pkgs/development/libraries/attr/default.nix1
-rw-r--r--pkgs/development/libraries/aubio/default.nix6
-rw-r--r--pkgs/development/libraries/audio/cubeb/default.nix6
-rw-r--r--pkgs/development/libraries/audio/game-music-emu/default.nix2
-rw-r--r--pkgs/development/libraries/audio/libbass/default.nix46
-rw-r--r--pkgs/development/libraries/audio/libkeyfinder/default.nix19
-rw-r--r--pkgs/development/libraries/audio/libmysofa/default.nix2
-rw-r--r--pkgs/development/libraries/audio/libopenmpt/default.nix6
-rw-r--r--pkgs/development/libraries/audio/libsmf/default.nix2
-rw-r--r--pkgs/development/libraries/audio/lilv/default.nix2
-rw-r--r--pkgs/development/libraries/audio/lv2/default.nix4
-rw-r--r--pkgs/development/libraries/audio/lvtk/default.nix2
-rw-r--r--pkgs/development/libraries/audio/mbelib/default.nix2
-rw-r--r--pkgs/development/libraries/audio/ntk/default.nix7
-rw-r--r--pkgs/development/libraries/audio/qm-dsp/default.nix4
-rw-r--r--pkgs/development/libraries/audio/raul/default.nix37
-rw-r--r--pkgs/development/libraries/audio/roc-toolkit/default.nix8
-rw-r--r--pkgs/development/libraries/audio/sratom/default.nix2
-rw-r--r--pkgs/development/libraries/audio/suil/default.nix70
-rw-r--r--pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix5
-rw-r--r--pkgs/development/libraries/audiofile/default.nix4
-rw-r--r--pkgs/development/libraries/avahi/default.nix10
-rw-r--r--pkgs/development/libraries/avro-c/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-auth/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-cal/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-common/default.nix6
-rw-r--r--pkgs/development/libraries/aws-c-common/setup-hook.sh2
-rw-r--r--pkgs/development/libraries/aws-c-compression/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-event-stream/default.nix6
-rw-r--r--pkgs/development/libraries/aws-c-io/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-s3/default.nix4
-rw-r--r--pkgs/development/libraries/aws-checksums/default.nix2
-rw-r--r--pkgs/development/libraries/aws-crt-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/aws-sdk-cpp/default.nix6
-rw-r--r--pkgs/development/libraries/ayatana-ido/default.nix29
-rw-r--r--pkgs/development/libraries/azmq/default.nix2
-rw-r--r--pkgs/development/libraries/babl/default.nix6
-rw-r--r--pkgs/development/libraries/backward-cpp/default.nix2
-rw-r--r--pkgs/development/libraries/bamf/default.nix4
-rw-r--r--pkgs/development/libraries/basu/default.nix56
-rw-r--r--pkgs/development/libraries/bencodetools/default.nix13
-rw-r--r--pkgs/development/libraries/biblesync/default.nix34
-rw-r--r--pkgs/development/libraries/blaze/default.nix2
-rw-r--r--pkgs/development/libraries/blitz/default.nix4
-rw-r--r--pkgs/development/libraries/blst/default.nix10
-rw-r--r--pkgs/development/libraries/boost/1.86.nix19
-rw-r--r--pkgs/development/libraries/boost/default.nix1
-rw-r--r--pkgs/development/libraries/boost/fix-clang-target.patch14
-rw-r--r--pkgs/development/libraries/boost/generic.nix35
-rw-r--r--pkgs/development/libraries/boringssl/default.nix2
-rw-r--r--pkgs/development/libraries/botan/2.0.nix7
-rw-r--r--pkgs/development/libraries/botan/3.0.nix7
-rw-r--r--pkgs/development/libraries/botan/botan3-macos.patch48
-rw-r--r--pkgs/development/libraries/botan/default.nix130
-rw-r--r--pkgs/development/libraries/botan/generic.nix67
-rw-r--r--pkgs/development/libraries/box2d/default.nix14
-rw-r--r--pkgs/development/libraries/brunsli/default.nix2
-rw-r--r--pkgs/development/libraries/bullet/default.nix10
-rw-r--r--pkgs/development/libraries/bullet/roboschool-fork.nix12
-rw-r--r--pkgs/development/libraries/c-blosc/2.nix4
-rw-r--r--pkgs/development/libraries/caf/default.nix8
-rw-r--r--pkgs/development/libraries/cairo/default.nix6
-rw-r--r--pkgs/development/libraries/cairomm/1.16.nix9
-rw-r--r--pkgs/development/libraries/cairomm/default.nix9
-rw-r--r--pkgs/development/libraries/capnproto/default.nix2
-rw-r--r--pkgs/development/libraries/capstone/4.nix2
-rw-r--r--pkgs/development/libraries/capstone/default.nix2
-rw-r--r--pkgs/development/libraries/catboost/default.nix8
-rw-r--r--pkgs/development/libraries/catch2/3.nix8
-rw-r--r--pkgs/development/libraries/cctag/default.nix2
-rw-r--r--pkgs/development/libraries/cctz/default.nix4
-rw-r--r--pkgs/development/libraries/cdo/default.nix12
-rw-r--r--pkgs/development/libraries/cegui/default.nix3
-rw-r--r--pkgs/development/libraries/cereal/1.3.0.nix39
-rw-r--r--pkgs/development/libraries/cereal/1.3.2.nix30
-rw-r--r--pkgs/development/libraries/cglm/default.nix4
-rw-r--r--pkgs/development/libraries/cgreen/default.nix34
-rw-r--r--pkgs/development/libraries/check/default.nix2
-rw-r--r--pkgs/development/libraries/chipmunk/default.nix4
-rw-r--r--pkgs/development/libraries/chromaprint/default.nix13
-rw-r--r--pkgs/development/libraries/clanlib/default.nix44
-rw-r--r--pkgs/development/libraries/classads/default.nix2
-rw-r--r--pkgs/development/libraries/clfft/default.nix4
-rw-r--r--pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch14
-rw-r--r--pkgs/development/libraries/clipper2/default.nix45
-rw-r--r--pkgs/development/libraries/cloog-ppl/default.nix72
-rw-r--r--pkgs/development/libraries/cloog-ppl/fix-ppl-version.patch16
-rw-r--r--pkgs/development/libraries/cloog/0.18.0.nix65
-rw-r--r--pkgs/development/libraries/cloog/default.nix67
-rw-r--r--pkgs/development/libraries/clucene-core/2.x.nix4
-rw-r--r--pkgs/development/libraries/clutter-gst/default.nix2
-rw-r--r--pkgs/development/libraries/clutter-gtk/default.nix2
-rw-r--r--pkgs/development/libraries/clutter/default.nix6
-rw-r--r--pkgs/development/libraries/cmark/default.nix6
-rw-r--r--pkgs/development/libraries/cminpack/default.nix2
-rw-r--r--pkgs/development/libraries/cmrt/default.nix2
-rw-r--r--pkgs/development/libraries/codec2/default.nix1
-rw-r--r--pkgs/development/libraries/cogl/default.nix10
-rw-r--r--pkgs/development/libraries/coin3d/default.nix8
-rw-r--r--pkgs/development/libraries/cpp-utilities/default.nix8
-rw-r--r--pkgs/development/libraries/cppcms/default.nix4
-rw-r--r--pkgs/development/libraries/cppcodec/default.nix2
-rw-r--r--pkgs/development/libraries/cracklib/default.nix18
-rw-r--r--pkgs/development/libraries/crc32c/default.nix2
-rw-r--r--pkgs/development/libraries/crocoddyl/default.nix63
-rw-r--r--pkgs/development/libraries/crossguid/default.nix4
-rw-r--r--pkgs/development/libraries/ctpl/default.nix4
-rw-r--r--pkgs/development/libraries/ctranslate2/default.nix10
-rw-r--r--pkgs/development/libraries/ctypes_sh/default.nix2
-rw-r--r--pkgs/development/libraries/cyrus-sasl/default.nix10
-rw-r--r--pkgs/development/libraries/dav1d/default.nix4
-rw-r--r--pkgs/development/libraries/db/clang-4.8.patch26
-rw-r--r--pkgs/development/libraries/db/db-4.8.nix6
-rw-r--r--pkgs/development/libraries/db/generic.nix5
-rw-r--r--pkgs/development/libraries/dbus-cplusplus/default.nix2
-rw-r--r--pkgs/development/libraries/dbus/default.nix10
-rw-r--r--pkgs/development/libraries/dbus/make-dbus-conf.nix1
-rw-r--r--pkgs/development/libraries/dbxml/default.nix2
-rw-r--r--pkgs/development/libraries/dclxvi/default.nix2
-rw-r--r--pkgs/development/libraries/dconf/default.nix4
-rw-r--r--pkgs/development/libraries/discord-rpc/default.nix4
-rw-r--r--pkgs/development/libraries/dlib/default.nix30
-rw-r--r--pkgs/development/libraries/doctest/default.nix2
-rw-r--r--pkgs/development/libraries/double-conversion/default.nix6
-rw-r--r--pkgs/development/libraries/dqlite/default.nix6
-rw-r--r--pkgs/development/libraries/drogon/default.nix8
-rw-r--r--pkgs/development/libraries/drogon/fix_find_package.patch24
-rw-r--r--pkgs/development/libraries/drumstick/default.nix55
-rw-r--r--pkgs/development/libraries/duckdb/default.nix13
-rw-r--r--pkgs/development/libraries/duckdb/versions.json6
-rw-r--r--pkgs/development/libraries/easyloggingpp/default.nix2
-rw-r--r--pkgs/development/libraries/eccodes/default.nix4
-rw-r--r--pkgs/development/libraries/edencommon/default.nix7
-rw-r--r--pkgs/development/libraries/edencommon/increase-test-discovery-timeout.patch20
-rw-r--r--pkgs/development/libraries/editline/default.nix2
-rw-r--r--pkgs/development/libraries/egl-wayland/default.nix4
-rw-r--r--pkgs/development/libraries/eigen/default.nix2
-rw-r--r--pkgs/development/libraries/elpa/default.nix8
-rw-r--r--pkgs/development/libraries/embree/default.nix6
-rw-r--r--pkgs/development/libraries/enchant/2.x.nix26
-rw-r--r--pkgs/development/libraries/enet/default.nix2
-rw-r--r--pkgs/development/libraries/ethash/default.nix2
-rw-r--r--pkgs/development/libraries/example-robot-data/default.nix62
-rw-r--r--pkgs/development/libraries/exempi/default.nix4
-rw-r--r--pkgs/development/libraries/exiv2/default.nix8
-rw-r--r--pkgs/development/libraries/expat/default.nix2
-rw-r--r--pkgs/development/libraries/exprtk/default.nix2
-rw-r--r--pkgs/development/libraries/faudio/default.nix4
-rw-r--r--pkgs/development/libraries/fb303/default.nix2
-rw-r--r--pkgs/development/libraries/fbjni/default.nix2
-rw-r--r--pkgs/development/libraries/fbthrift/default.nix4
-rw-r--r--pkgs/development/libraries/fcft/default.nix21
-rw-r--r--pkgs/development/libraries/fcgi/default.nix25
-rw-r--r--pkgs/development/libraries/fcgi/gcc-4.4.diff12
-rw-r--r--pkgs/development/libraries/febio/default.nix61
-rw-r--r--pkgs/development/libraries/febio/fix-cmake.patch26
-rw-r--r--pkgs/development/libraries/fflas-ffpack/default.nix2
-rw-r--r--pkgs/development/libraries/ffmpeg/0001-avfoundation.m-macOS-SDK-10.12-compatibility.patch25
-rw-r--r--pkgs/development/libraries/ffmpeg/default.nix26
-rw-r--r--pkgs/development/libraries/ffmpeg/generic.nix219
-rw-r--r--pkgs/development/libraries/ffmpegthumbnailer/default.nix5
-rw-r--r--pkgs/development/libraries/ffms/default.nix2
-rw-r--r--pkgs/development/libraries/fftw/default.nix2
-rw-r--r--pkgs/development/libraries/filter-audio/default.nix2
-rw-r--r--pkgs/development/libraries/fizz/default.nix2
-rw-r--r--pkgs/development/libraries/flann/default.nix2
-rw-r--r--pkgs/development/libraries/flatbuffers/23.nix47
-rw-r--r--pkgs/development/libraries/flatbuffers/default.nix4
-rw-r--r--pkgs/development/libraries/flatcc/default.nix17
-rw-r--r--pkgs/development/libraries/flite/default.nix51
-rw-r--r--pkgs/development/libraries/fmt/default.nix49
-rw-r--r--pkgs/development/libraries/folks/default.nix2
-rw-r--r--pkgs/development/libraries/folly/default.nix9
-rw-r--r--pkgs/development/libraries/fontconfig/default.nix3
-rw-r--r--pkgs/development/libraries/fontconfig/make-fonts-conf.nix12
-rw-r--r--pkgs/development/libraries/fontconfig/make-fonts-conf.xsl7
-rw-r--r--pkgs/development/libraries/fox/default.nix9
-rw-r--r--pkgs/development/libraries/fox/fox-1.6.nix9
-rw-r--r--pkgs/development/libraries/freealut/default.nix2
-rw-r--r--pkgs/development/libraries/freeglut/default.nix14
-rw-r--r--pkgs/development/libraries/freeimage/default.nix20
-rw-r--r--pkgs/development/libraries/freenect/default.nix10
-rw-r--r--pkgs/development/libraries/freetds/default.nix4
-rw-r--r--pkgs/development/libraries/freetts/default.nix2
-rw-r--r--pkgs/development/libraries/freetype/default.nix4
-rw-r--r--pkgs/development/libraries/freexl/default.nix2
-rw-r--r--pkgs/development/libraries/frei0r/default.nix6
-rw-r--r--pkgs/development/libraries/fribidi/default.nix6
-rw-r--r--pkgs/development/libraries/ftgl/default.nix76
-rw-r--r--pkgs/development/libraries/functionalplus/default.nix6
-rw-r--r--pkgs/development/libraries/g2o/default.nix4
-rw-r--r--pkgs/development/libraries/galario/default.nix6
-rw-r--r--pkgs/development/libraries/gamin/abstract-socket-namespace.patch73
-rw-r--r--pkgs/development/libraries/gamin/deadlock.patch68
-rw-r--r--pkgs/development/libraries/gamin/debian-patches.nix10
-rw-r--r--pkgs/development/libraries/gamin/debian-patches.txt2
-rw-r--r--pkgs/development/libraries/gamin/default.nix50
-rw-r--r--pkgs/development/libraries/gamin/returnval.patch12
-rw-r--r--pkgs/development/libraries/ganv/default.nix54
-rw-r--r--pkgs/development/libraries/garmintools/default.nix2
-rw-r--r--pkgs/development/libraries/gbenchmark/default.nix8
-rw-r--r--pkgs/development/libraries/gcc/libstdc++/5.nix2
-rw-r--r--pkgs/development/libraries/gd/default.nix4
-rw-r--r--pkgs/development/libraries/gdal/default.nix32
-rw-r--r--pkgs/development/libraries/gdbm/default.nix69
-rw-r--r--pkgs/development/libraries/gdcm/default.nix12
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/default.nix10
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/xlib.nix2
-rw-r--r--pkgs/development/libraries/gegl/default.nix4
-rw-r--r--pkgs/development/libraries/gensio/default.nix6
-rw-r--r--pkgs/development/libraries/geoclue/default.nix6
-rw-r--r--pkgs/development/libraries/geogram/default.nix4
-rw-r--r--pkgs/development/libraries/geographiclib/default.nix34
-rw-r--r--pkgs/development/libraries/geos/3.11.nix4
-rw-r--r--pkgs/development/libraries/geos/3.9.nix2
-rw-r--r--pkgs/development/libraries/geos/default.nix8
-rw-r--r--pkgs/development/libraries/getdns/default.nix73
-rw-r--r--pkgs/development/libraries/gettext/default.nix8
-rw-r--r--pkgs/development/libraries/gexiv2/default.nix6
-rw-r--r--pkgs/development/libraries/gfbgraph/default.nix1
-rw-r--r--pkgs/development/libraries/gfxstream/default.nix8
-rw-r--r--pkgs/development/libraries/giflib/default.nix4
-rw-r--r--pkgs/development/libraries/git2-cpp/default.nix2
-rw-r--r--pkgs/development/libraries/givaro/default.nix2
-rw-r--r--pkgs/development/libraries/gjs/default.nix6
-rw-r--r--pkgs/development/libraries/gl2ps/default.nix8
-rw-r--r--pkgs/development/libraries/gl3w/default.nix2
-rw-r--r--pkgs/development/libraries/gle/default.nix4
-rw-r--r--pkgs/development/libraries/glew/1.10.nix9
-rw-r--r--pkgs/development/libraries/glew/default.nix32
-rw-r--r--pkgs/development/libraries/glfw/3.x-wayland-minecraft.nix64
-rw-r--r--pkgs/development/libraries/glfw/3.x.nix68
-rw-r--r--pkgs/development/libraries/glfw/wayland.patch25
-rw-r--r--pkgs/development/libraries/glfw/x11.patch18
-rw-r--r--pkgs/development/libraries/glib/default.nix42
-rw-r--r--pkgs/development/libraries/glib/gdb_script.patch23
-rw-r--r--pkgs/development/libraries/glib/gmodule-rtld_local.patch13
-rw-r--r--pkgs/development/libraries/glibc/2.39-revert-cet-default-disable.patch49
-rw-r--r--pkgs/development/libraries/glibc/common.nix9
-rw-r--r--pkgs/development/libraries/glibc/default.nix6
-rw-r--r--pkgs/development/libraries/glibc/locales.nix153
-rw-r--r--pkgs/development/libraries/glibmm/2.68.nix2
-rw-r--r--pkgs/development/libraries/glibmm/default.nix2
-rw-r--r--pkgs/development/libraries/glm/default.nix47
-rw-r--r--pkgs/development/libraries/glog/default.nix6
-rw-r--r--pkgs/development/libraries/gloox/default.nix2
-rw-r--r--pkgs/development/libraries/glpng/default.nix39
-rw-r--r--pkgs/development/libraries/glui/default.nix4
-rw-r--r--pkgs/development/libraries/gmime/2.nix2
-rw-r--r--pkgs/development/libraries/gmime/3.nix8
-rw-r--r--pkgs/development/libraries/gmp/4.3.2.nix6
-rw-r--r--pkgs/development/libraries/gmp/5.1.x.nix10
-rw-r--r--pkgs/development/libraries/gmp/6.x.nix8
-rw-r--r--pkgs/development/libraries/gmtk/default.nix32
-rw-r--r--pkgs/development/libraries/gmtk/fix-paths.patch20
-rw-r--r--pkgs/development/libraries/gnome-desktop/default.nix8
-rw-r--r--pkgs/development/libraries/gnome-online-accounts/default.nix6
-rw-r--r--pkgs/development/libraries/gnu-efi/default.nix2
-rw-r--r--pkgs/development/libraries/gnutls/default.nix23
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix6
-rw-r--r--pkgs/development/libraries/gom/default.nix2
-rw-r--r--pkgs/development/libraries/goocanvas/2.x.nix2
-rw-r--r--pkgs/development/libraries/goocanvasmm/default.nix2
-rw-r--r--pkgs/development/libraries/google-cloud-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/gperftools/default.nix6
-rw-r--r--pkgs/development/libraries/gpgme/LFS64.patch34
-rw-r--r--pkgs/development/libraries/gpgme/default.nix132
-rw-r--r--pkgs/development/libraries/graphene/default.nix12
-rw-r--r--pkgs/development/libraries/grilo-plugins/default.nix1
-rw-r--r--pkgs/development/libraries/grpc/default.nix4
-rw-r--r--pkgs/development/libraries/gsasl/default.nix2
-rw-r--r--pkgs/development/libraries/gsignond/default.nix2
-rw-r--r--pkgs/development/libraries/gsignond/plugins/lastfm.nix2
-rw-r--r--pkgs/development/libraries/gsignond/plugins/mail.nix2
-rw-r--r--pkgs/development/libraries/gsignond/plugins/oauth.nix2
-rw-r--r--pkgs/development/libraries/gsignond/plugins/sasl.nix2
-rw-r--r--pkgs/development/libraries/gsl-lite/default.nix2
-rw-r--r--pkgs/development/libraries/gsl/default.nix18
-rw-r--r--pkgs/development/libraries/gsm/default.nix2
-rw-r--r--pkgs/development/libraries/gsoap/default.nix7
-rw-r--r--pkgs/development/libraries/gss/default.nix14
-rw-r--r--pkgs/development/libraries/gssdp/1.6.nix2
-rw-r--r--pkgs/development/libraries/gssdp/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix36
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix25
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix32
-rw-r--r--pkgs/development/libraries/gstreamer/devtools/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/ges/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix16
-rw-r--r--pkgs/development/libraries/gstreamer/good/souploader-darwin.diff128
-rw-r--r--pkgs/development/libraries/gstreamer/good/souploader.diff13
-rw-r--r--pkgs/development/libraries/gstreamer/icamerasrc/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/libav/default.nix11
-rw-r--r--pkgs/development/libraries/gstreamer/rs/Cargo.lock1255
-rw-r--r--pkgs/development/libraries/gstreamer/rs/default.nix29
-rw-r--r--pkgs/development/libraries/gstreamer/rtsp-server/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/ugly/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/vaapi/default.nix7
-rw-r--r--pkgs/development/libraries/gthree/default.nix6
-rw-r--r--pkgs/development/libraries/gtk-frdp/default.nix2
-rw-r--r--pkgs/development/libraries/gtk-layer-shell/default.nix5
-rw-r--r--pkgs/development/libraries/gtk/2.x.nix23
-rw-r--r--pkgs/development/libraries/gtk/3.x.nix31
-rw-r--r--pkgs/development/libraries/gtk/4.x.nix29
-rw-r--r--pkgs/development/libraries/gtk4-layer-shell/default.nix6
-rw-r--r--pkgs/development/libraries/gtkd/default.nix2
-rw-r--r--pkgs/development/libraries/gtkmm/4.x.nix4
-rw-r--r--pkgs/development/libraries/gtksourceview/3.x.nix2
-rw-r--r--pkgs/development/libraries/gtksourceview/5.x.nix7
-rw-r--r--pkgs/development/libraries/gtkspell/3.nix2
-rw-r--r--pkgs/development/libraries/gts/default.nix2
-rw-r--r--pkgs/development/libraries/gupnp/default.nix2
-rw-r--r--pkgs/development/libraries/gusb/default.nix1
-rw-r--r--pkgs/development/libraries/gvfs/default.nix9
-rw-r--r--pkgs/development/libraries/gvm-libs/default.nix8
-rw-r--r--pkgs/development/libraries/hamlib/4.nix6
-rw-r--r--pkgs/development/libraries/hamlib/default.nix7
-rw-r--r--pkgs/development/libraries/harfbuzz/default.nix10
-rw-r--r--pkgs/development/libraries/hax11/default.nix50
-rw-r--r--pkgs/development/libraries/hfst-ospell/default.nix2
-rw-r--r--pkgs/development/libraries/hidapi/default.nix12
-rw-r--r--pkgs/development/libraries/highfive/default.nix4
-rw-r--r--pkgs/development/libraries/hiredis/default.nix5
-rw-r--r--pkgs/development/libraries/hivex/default.nix2
-rw-r--r--pkgs/development/libraries/hmat-oss/default.nix4
-rw-r--r--pkgs/development/libraries/hnswlib/default.nix2
-rw-r--r--pkgs/development/libraries/hpp-fcl/default.nix72
-rw-r--r--pkgs/development/libraries/hpx/default.nix1
-rw-r--r--pkgs/development/libraries/http-parser/default.nix2
-rw-r--r--pkgs/development/libraries/httplib/default.nix4
-rw-r--r--pkgs/development/libraries/hunspell/default.nix2
-rw-r--r--pkgs/development/libraries/hunspell/dictionaries.nix11
-rw-r--r--pkgs/development/libraries/hwloc/default.nix10
-rw-r--r--pkgs/development/libraries/hyperscan/default.nix2
-rw-r--r--pkgs/development/libraries/hyphen/default.nix12
-rw-r--r--pkgs/development/libraries/hyphen/dictionaries.nix91
-rw-r--r--pkgs/development/libraries/icu/default.nix8
-rw-r--r--pkgs/development/libraries/icu/make-icu.nix16
-rw-r--r--pkgs/development/libraries/igraph/default.nix8
-rw-r--r--pkgs/development/libraries/ilmbase/default.nix2
-rw-r--r--pkgs/development/libraries/imgui/default.nix13
-rw-r--r--pkgs/development/libraries/imlib2/default.nix10
-rw-r--r--pkgs/development/libraries/imtui/default.nix2
-rw-r--r--pkgs/development/libraries/inchi/default.nix6
-rw-r--r--pkgs/development/libraries/iniparser/default.nix6
-rw-r--r--pkgs/development/libraries/intel-gmmlib/default.nix4
-rw-r--r--pkgs/development/libraries/intel-media-driver/default.nix6
-rw-r--r--pkgs/development/libraries/intel-vaapi-driver/default.nix11
-rw-r--r--pkgs/development/libraries/ip2location-c/default.nix2
-rw-r--r--pkgs/development/libraries/ipu6-camera-hal/default.nix2
-rw-r--r--pkgs/development/libraries/irrlicht/default.nix4
-rw-r--r--pkgs/development/libraries/irrlicht/mac.nix2
-rw-r--r--pkgs/development/libraries/irrlichtmt/default.nix51
-rw-r--r--pkgs/development/libraries/isa-l/default.nix2
-rw-r--r--pkgs/development/libraries/isl/0.11.1.nix8
-rw-r--r--pkgs/development/libraries/isl/0.14.1.nix8
-rw-r--r--pkgs/development/libraries/isl/fix-gcc-build.diff12
-rw-r--r--pkgs/development/libraries/itk/generic.nix154
-rw-r--r--pkgs/development/libraries/itk/itk.egg-info5
-rw-r--r--pkgs/development/libraries/jabcode/default.nix2
-rw-r--r--pkgs/development/libraries/jansson/default.nix30
-rw-r--r--pkgs/development/libraries/java/commons/bcel/default.nix4
-rw-r--r--pkgs/development/libraries/java/commons/daemon/default.nix4
-rw-r--r--pkgs/development/libraries/java/commons/lang/default.nix4
-rw-r--r--pkgs/development/libraries/java/hsqldb/default.nix4
-rw-r--r--pkgs/development/libraries/java/jffi/default.nix4
-rw-r--r--pkgs/development/libraries/java/lombok/default.nix4
-rw-r--r--pkgs/development/libraries/java/saxon/default.nix115
-rw-r--r--pkgs/development/libraries/java/swt/awt-libs.patch8
-rw-r--r--pkgs/development/libraries/java/swt/default.nix158
-rw-r--r--pkgs/development/libraries/java/swt/gtk-libs.patch14
-rw-r--r--pkgs/development/libraries/jbigkit/default.nix15
-rw-r--r--pkgs/development/libraries/jellyfin-ffmpeg/default.nix4
-rw-r--r--pkgs/development/libraries/jemalloc/default.nix8
-rw-r--r--pkgs/development/libraries/jitterentropy/default.nix4
-rw-r--r--pkgs/development/libraries/jose/default.nix2
-rw-r--r--pkgs/development/libraries/json-fortran/default.nix4
-rw-r--r--pkgs/development/libraries/jsoncpp/default.nix2
-rw-r--r--pkgs/development/libraries/jsonrpc-glib/default.nix4
-rw-r--r--pkgs/development/libraries/kcp/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kauth/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kcalendarcore.nix1
-rw-r--r--pkgs/development/libraries/kde-frameworks/kdoctools/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kguiaddons.nix4
-rw-r--r--pkgs/development/libraries/kde-frameworks/ki18n.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kidletime.nix11
-rw-r--r--pkgs/development/libraries/kde-frameworks/kinit/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kio/default.nix4
-rw-r--r--pkgs/development/libraries/kde-frameworks/kitemviews.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/knotifications.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kquickcharts.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/ktexteditor.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kwayland.nix4
-rw-r--r--pkgs/development/libraries/kde-frameworks/solid/default.nix4
-rw-r--r--pkgs/development/libraries/kerberos/heimdal.nix13
-rw-r--r--pkgs/development/libraries/kerberos/krb5.nix99
-rw-r--r--pkgs/development/libraries/keybinder/default.nix4
-rw-r--r--pkgs/development/libraries/keybinder3/default.nix4
-rw-r--r--pkgs/development/libraries/khronos-ocl-icd-loader/default.nix4
-rw-r--r--pkgs/development/libraries/kissfft/0001-pkgconfig-darwin.patch48
-rw-r--r--pkgs/development/libraries/kissfft/default.nix85
-rw-r--r--pkgs/development/libraries/kmsxx/default.nix4
-rw-r--r--pkgs/development/libraries/kronosnet/default.nix4
-rw-r--r--pkgs/development/libraries/ktextaddons/default.nix2
-rw-r--r--pkgs/development/libraries/kyotocabinet/default.nix2
-rw-r--r--pkgs/development/libraries/l-smash/default.nix2
-rw-r--r--pkgs/development/libraries/lasso/default.nix9
-rw-r--r--pkgs/development/libraries/lcrq/default.nix4
-rw-r--r--pkgs/development/libraries/ldacbt/default.nix2
-rw-r--r--pkgs/development/libraries/ldb/default.nix8
-rw-r--r--pkgs/development/libraries/ldutils/default.nix2
-rw-r--r--pkgs/development/libraries/lemon-graph/default.nix2
-rw-r--r--pkgs/development/libraries/lensfun/default.nix4
-rw-r--r--pkgs/development/libraries/leptonica/default.nix2
-rw-r--r--pkgs/development/libraries/lerc/default.nix12
-rw-r--r--pkgs/development/libraries/level-zero/default.nix10
-rw-r--r--pkgs/development/libraries/leveldb/default.nix2
-rw-r--r--pkgs/development/libraries/lib2geom/default.nix2
-rw-r--r--pkgs/development/libraries/lib3mf/default.nix2
-rw-r--r--pkgs/development/libraries/libLAS/default.nix10
-rw-r--r--pkgs/development/libraries/libabigail/default.nix8
-rw-r--r--pkgs/development/libraries/libabw/default.nix4
-rw-r--r--pkgs/development/libraries/libaccounts-glib/default.nix2
-rw-r--r--pkgs/development/libraries/libad9361/default.nix2
-rw-r--r--pkgs/development/libraries/libadwaita/default.nix17
-rw-r--r--pkgs/development/libraries/libagar/default.nix2
-rw-r--r--pkgs/development/libraries/libagar/libagar_test.nix2
-rw-r--r--pkgs/development/libraries/libajantv2/default.nix2
-rw-r--r--pkgs/development/libraries/libantlr3c/default.nix2
-rw-r--r--pkgs/development/libraries/libao/default.nix6
-rw-r--r--pkgs/development/libraries/libaom/default.nix6
-rw-r--r--pkgs/development/libraries/libaosd/default.nix2
-rw-r--r--pkgs/development/libraries/libarchive-qt/default.nix2
-rw-r--r--pkgs/development/libraries/libarchive/default.nix128
-rw-r--r--pkgs/development/libraries/libargon2/default.nix2
-rw-r--r--pkgs/development/libraries/libargs/default.nix2
-rw-r--r--pkgs/development/libraries/libass/default.nix6
-rw-r--r--pkgs/development/libraries/libast/default.nix32
-rw-r--r--pkgs/development/libraries/libasyncns/default.nix2
-rw-r--r--pkgs/development/libraries/libatomic_ops/default.nix4
-rw-r--r--pkgs/development/libraries/libav/default.nix137
-rw-r--r--pkgs/development/libraries/libav/vpx-12.3-libvpx-1.8.patch46
-rw-r--r--pkgs/development/libraries/libav/vpxenc-0.8.17-libvpx-1.5.patch22
-rw-r--r--pkgs/development/libraries/libavif/default.nix9
-rw-r--r--pkgs/development/libraries/libayatana-indicator/default.nix32
-rw-r--r--pkgs/development/libraries/libbacktrace/default.nix2
-rw-r--r--pkgs/development/libraries/libbladeRF/default.nix8
-rw-r--r--pkgs/development/libraries/libbluray/default.nix3
-rw-r--r--pkgs/development/libraries/libbpkg/default.nix4
-rw-r--r--pkgs/development/libraries/libbsd/darwin-enable-strtonum.patch13
-rw-r--r--pkgs/development/libraries/libbsd/darwin-fix-libbsd.sym.patch15
-rw-r--r--pkgs/development/libraries/libbsd/default.nix12
-rw-r--r--pkgs/development/libraries/libbtbb/default.nix2
-rw-r--r--pkgs/development/libraries/libbutl/default.nix8
-rw-r--r--pkgs/development/libraries/libbytesize/default.nix57
-rw-r--r--pkgs/development/libraries/libcaca/default.nix74
-rw-r--r--pkgs/development/libraries/libcacard/default.nix4
-rw-r--r--pkgs/development/libraries/libcanberra/default.nix13
-rw-r--r--pkgs/development/libraries/libcaption/default.nix2
-rw-r--r--pkgs/development/libraries/libcbor/default.nix2
-rw-r--r--pkgs/development/libraries/libcdada/default.nix4
-rw-r--r--pkgs/development/libraries/libcdio-paranoia/default.nix37
-rw-r--r--pkgs/development/libraries/libcdio/default.nix4
-rw-r--r--pkgs/development/libraries/libcdr/default.nix2
-rw-r--r--pkgs/development/libraries/libcec/default.nix2
-rw-r--r--pkgs/development/libraries/libchop/default.nix2
-rw-r--r--pkgs/development/libraries/libcifpp/default.nix2
-rw-r--r--pkgs/development/libraries/libcommuni/default.nix2
-rw-r--r--pkgs/development/libraries/libconfig/default.nix2
-rw-r--r--pkgs/development/libraries/libcouchbase/default.nix2
-rw-r--r--pkgs/development/libraries/libcutl/default.nix34
-rw-r--r--pkgs/development/libraries/libcxxrt/default.nix6
-rw-r--r--pkgs/development/libraries/libcyaml/default.nix27
-rw-r--r--pkgs/development/libraries/libdatachannel/default.nix39
-rw-r--r--pkgs/development/libraries/libdatrie/default.nix4
-rw-r--r--pkgs/development/libraries/libdazzle/default.nix4
-rw-r--r--pkgs/development/libraries/libdbi-drivers/default.nix4
-rw-r--r--pkgs/development/libraries/libdc1394/default.nix11
-rw-r--r--pkgs/development/libraries/libde265/test-corpus-decode.nix3
-rw-r--r--pkgs/development/libraries/libdeltachat/Cargo.lock7694
-rw-r--r--pkgs/development/libraries/libdeltachat/default.nix98
-rw-r--r--pkgs/development/libraries/libdeltachat/no-static-lib.patch38
-rw-r--r--pkgs/development/libraries/libdevil/default.nix7
-rw-r--r--pkgs/development/libraries/libdigidocpp/default.nix8
-rw-r--r--pkgs/development/libraries/libdiscid/default.nix4
-rw-r--r--pkgs/development/libraries/libdmapsharing/default.nix104
-rw-r--r--pkgs/development/libraries/libdnet/default.nix34
-rw-r--r--pkgs/development/libraries/libdovi/Cargo.lock182
-rw-r--r--pkgs/development/libraries/libdovi/default.nix4
-rw-r--r--pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--pkgs/development/libraries/libdv/default.nix2
-rw-r--r--pkgs/development/libraries/libdvdcss/default.nix2
-rw-r--r--pkgs/development/libraries/libdwarf/common.nix2
-rw-r--r--pkgs/development/libraries/libdwg/default.nix2
-rw-r--r--pkgs/development/libraries/libe57format/default.nix2
-rw-r--r--pkgs/development/libraries/libeatmydata/LFS64.patch70
-rw-r--r--pkgs/development/libraries/libeatmydata/default.nix5
-rw-r--r--pkgs/development/libraries/libebml/default.nix2
-rw-r--r--pkgs/development/libraries/libei/default.nix4
-rw-r--r--pkgs/development/libraries/libelfin/default.nix2
-rw-r--r--pkgs/development/libraries/libepc/default.nix3
-rw-r--r--pkgs/development/libraries/libepoxy/default.nix20
-rw-r--r--pkgs/development/libraries/libevdev/default.nix4
-rw-r--r--pkgs/development/libraries/libevent/default.nix13
-rw-r--r--pkgs/development/libraries/libewf/default.nix2
-rw-r--r--pkgs/development/libraries/libexecinfo/default.nix2
-rw-r--r--pkgs/development/libraries/libextractor/default.nix30
-rw-r--r--pkgs/development/libraries/libfabric/default.nix8
-rw-r--r--pkgs/development/libraries/libfakekey/default.nix43
-rw-r--r--pkgs/development/libraries/libff/default.nix2
-rw-r--r--pkgs/development/libraries/libffi/3.3.nix2
-rw-r--r--pkgs/development/libraries/libfido2/default.nix18
-rw-r--r--pkgs/development/libraries/libfilezilla/default.nix4
-rw-r--r--pkgs/development/libraries/libfive/default.nix16
-rw-r--r--pkgs/development/libraries/libfixposix/default.nix2
-rw-r--r--pkgs/development/libraries/libfm/default.nix2
-rw-r--r--pkgs/development/libraries/libfprint/default.nix1
-rw-r--r--pkgs/development/libraries/libfpx/default.nix2
-rw-r--r--pkgs/development/libraries/libfreeaptx/default.nix4
-rw-r--r--pkgs/development/libraries/libfreefare/default.nix2
-rw-r--r--pkgs/development/libraries/libftdi/1.x.nix6
-rw-r--r--pkgs/development/libraries/libftdi/default.nix6
-rw-r--r--pkgs/development/libraries/libgbinder/default.nix4
-rw-r--r--pkgs/development/libraries/libgcrypt/1.8.nix2
-rw-r--r--pkgs/development/libraries/libgcrypt/default.nix24
-rw-r--r--pkgs/development/libraries/libgda/6.x.nix2
-rw-r--r--pkgs/development/libraries/libgda/default.nix4
-rw-r--r--pkgs/development/libraries/libgdiplus/default.nix4
-rw-r--r--pkgs/development/libraries/libgee/default.nix1
-rw-r--r--pkgs/development/libraries/libgig/default.nix2
-rw-r--r--pkgs/development/libraries/libgit2-glib/default.nix10
-rw-r--r--pkgs/development/libraries/libgit2/default.nix24
-rw-r--r--pkgs/development/libraries/libglvnd/default.nix12
-rw-r--r--pkgs/development/libraries/libgnome-keyring/default.nix43
-rw-r--r--pkgs/development/libraries/libgnurl/default.nix2
-rw-r--r--pkgs/development/libraries/libgourou/default.nix2
-rw-r--r--pkgs/development/libraries/libgpg-error/default.nix18
-rw-r--r--pkgs/development/libraries/libgpiod/default.nix4
-rw-r--r--pkgs/development/libraries/libgpod/default.nix1
-rw-r--r--pkgs/development/libraries/libgrss/default.nix2
-rw-r--r--pkgs/development/libraries/libgsf/default.nix9
-rw-r--r--pkgs/development/libraries/libgssglue/default.nix28
-rw-r--r--pkgs/development/libraries/libgudev/default.nix2
-rw-r--r--pkgs/development/libraries/libgweather/default.nix2
-rw-r--r--pkgs/development/libraries/libhandy/0.x.nix4
-rw-r--r--pkgs/development/libraries/libhandy/default.nix2
-rw-r--r--pkgs/development/libraries/libheif/default.nix6
-rw-r--r--pkgs/development/libraries/libhsts/default.nix2
-rw-r--r--pkgs/development/libraries/libhv/default.nix2
-rw-r--r--pkgs/development/libraries/libhwy/default.nix6
-rw-r--r--pkgs/development/libraries/libical/default.nix5
-rw-r--r--pkgs/development/libraries/libiconv/default.nix2
-rw-r--r--pkgs/development/libraries/libidn/default.nix4
-rw-r--r--pkgs/development/libraries/libidn2/default.nix4
-rw-r--r--pkgs/development/libraries/libieee1284/default.nix10
-rw-r--r--pkgs/development/libraries/libiio/default.nix4
-rw-r--r--pkgs/development/libraries/libimagequant/Cargo.lock69
-rw-r--r--pkgs/development/libraries/libimagequant/default.nix5
-rw-r--r--pkgs/development/libraries/libimobiledevice-glue/default.nix17
-rw-r--r--pkgs/development/libraries/libimobiledevice/default.nix36
-rw-r--r--pkgs/development/libraries/libinotify-kqueue/default.nix2
-rw-r--r--pkgs/development/libraries/libinput/default.nix4
-rw-r--r--pkgs/development/libraries/libint/default.nix40
-rw-r--r--pkgs/development/libraries/libiodbc/default.nix2
-rw-r--r--pkgs/development/libraries/libipt/default.nix3
-rw-r--r--pkgs/development/libraries/libiptcdata/default.nix2
-rw-r--r--pkgs/development/libraries/libiscsi/default.nix2
-rw-r--r--pkgs/development/libraries/libivykis/default.nix6
-rw-r--r--pkgs/development/libraries/libjaylink/default.nix36
-rw-r--r--pkgs/development/libraries/libjcat/default.nix2
-rw-r--r--pkgs/development/libraries/libjodycode/default.nix41
-rw-r--r--pkgs/development/libraries/libjpeg/default.nix26
-rw-r--r--pkgs/development/libraries/libjson-rpc-cpp/default.nix43
-rw-r--r--pkgs/development/libraries/libjwt/default.nix4
-rw-r--r--pkgs/development/libraries/libjxl/default.nix4
-rw-r--r--pkgs/development/libraries/libkrun/default.nix52
-rw-r--r--pkgs/development/libraries/libkrunfw/default.nix25
-rw-r--r--pkgs/development/libraries/libks/default.nix10
-rw-r--r--pkgs/development/libraries/libksba/default.nix6
-rw-r--r--pkgs/development/libraries/libksi/default.nix4
-rw-r--r--pkgs/development/libraries/liblastfm/default.nix2
-rw-r--r--pkgs/development/libraries/liblc3/default.nix3
-rw-r--r--pkgs/development/libraries/liblcf/default.nix2
-rw-r--r--pkgs/development/libraries/libliftoff/default.nix33
-rw-r--r--pkgs/development/libraries/libliftoff/generic.nix3
-rw-r--r--pkgs/development/libraries/liblinear/default.nix2
-rw-r--r--pkgs/development/libraries/liblinphone/default.nix2
-rw-r--r--pkgs/development/libraries/liblouis/default.nix11
-rw-r--r--pkgs/development/libraries/liblqr-1/default.nix2
-rw-r--r--pkgs/development/libraries/liblscp/default.nix25
-rw-r--r--pkgs/development/libraries/liblxi/default.nix2
-rw-r--r--pkgs/development/libraries/libmanette/default.nix4
-rw-r--r--pkgs/development/libraries/libmatroska/default.nix30
-rw-r--r--pkgs/development/libraries/libmaxminddb/default.nix4
-rw-r--r--pkgs/development/libraries/libmcrypt/default.nix4
-rw-r--r--pkgs/development/libraries/libmemcached/default.nix4
-rw-r--r--pkgs/development/libraries/libmesode/default.nix2
-rw-r--r--pkgs/development/libraries/libmicrohttpd/1.0.nix10
-rw-r--r--pkgs/development/libraries/libmicrohttpd/generic.nix12
-rw-r--r--pkgs/development/libraries/libmikmod/default.nix8
-rw-r--r--pkgs/development/libraries/libmilter/default.nix4
-rw-r--r--pkgs/development/libraries/libminc/default.nix2
-rw-r--r--pkgs/development/libraries/libmodbus/default.nix2
-rw-r--r--pkgs/development/libraries/libmodulemd/default.nix2
-rw-r--r--pkgs/development/libraries/libmongocrypt/default.nix2
-rw-r--r--pkgs/development/libraries/libmpeg2/default.nix4
-rw-r--r--pkgs/development/libraries/libmrss/default.nix23
-rw-r--r--pkgs/development/libraries/libmtp/default.nix2
-rw-r--r--pkgs/development/libraries/libmx/default.nix4
-rw-r--r--pkgs/development/libraries/libmypaint/default.nix2
-rw-r--r--pkgs/development/libraries/libmysqlconnectorcpp/default.nix4
-rw-r--r--pkgs/development/libraries/libnatpmp/default.nix2
-rw-r--r--pkgs/development/libraries/libnbd/default.nix72
-rw-r--r--pkgs/development/libraries/libnbd/libnbd-metadata3
-rw-r--r--pkgs/development/libraries/libndctl/default.nix84
-rw-r--r--pkgs/development/libraries/libndp/default.nix20
-rw-r--r--pkgs/development/libraries/libnfc/default.nix2
-rw-r--r--pkgs/development/libraries/libnftnl/default.nix13
-rw-r--r--pkgs/development/libraries/libngspice/default.nix9
-rw-r--r--pkgs/development/libraries/libnxml/default.nix22
-rw-r--r--pkgs/development/libraries/libodb-sqlite/default.nix4
-rw-r--r--pkgs/development/libraries/libodb/default.nix4
-rw-r--r--pkgs/development/libraries/libofx/default.nix2
-rw-r--r--pkgs/development/libraries/liboil/default.nix4
-rw-r--r--pkgs/development/libraries/liboop/default.nix18
-rw-r--r--pkgs/development/libraries/libopenshot-audio/default.nix8
-rw-r--r--pkgs/development/libraries/libopenshot/default.nix10
-rw-r--r--pkgs/development/libraries/libossp-uuid/default.nix2
-rw-r--r--pkgs/development/libraries/libowlevelzs/default.nix6
-rw-r--r--pkgs/development/libraries/libpam-wrapper/default.nix27
-rw-r--r--pkgs/development/libraries/libpam-wrapper/python.patch38
-rw-r--r--pkgs/development/libraries/libpanel/default.nix47
-rw-r--r--pkgs/development/libraries/libpcap/default.nix8
-rw-r--r--pkgs/development/libraries/libpeas/2.x.nix4
-rw-r--r--pkgs/development/libraries/libphonenumber/default.nix6
-rw-r--r--pkgs/development/libraries/libpipeline/default.nix8
-rw-r--r--pkgs/development/libraries/libplacebo/default.nix22
-rw-r--r--pkgs/development/libraries/libplctag/default.nix4
-rw-r--r--pkgs/development/libraries/libplist/default.nix4
-rw-r--r--pkgs/development/libraries/libpng/default.nix2
-rw-r--r--pkgs/development/libraries/libpointmatcher/default.nix4
-rw-r--r--pkgs/development/libraries/libpqxx/6.nix30
-rw-r--r--pkgs/development/libraries/libpqxx/default.nix2
-rw-r--r--pkgs/development/libraries/libproxy/default.nix4
-rw-r--r--pkgs/development/libraries/libproxy/hardcode-gsettings.patch6
-rw-r--r--pkgs/development/libraries/libpsl/default.nix15
-rw-r--r--pkgs/development/libraries/libpst/default.nix2
-rw-r--r--pkgs/development/libraries/libpulsar/default.nix4
-rw-r--r--pkgs/development/libraries/libqglviewer/default.nix2
-rw-r--r--pkgs/development/libraries/libqofono/default.nix16
-rw-r--r--pkgs/development/libraries/libqtav/default.nix71
-rw-r--r--pkgs/development/libraries/libraqm/default.nix4
-rw-r--r--pkgs/development/libraries/librasterlite2/default.nix2
-rw-r--r--pkgs/development/libraries/librdf/raptor2.nix7
-rw-r--r--pkgs/development/libraries/libre/default.nix2
-rw-r--r--pkgs/development/libraries/librealsense/default.nix25
-rw-r--r--pkgs/development/libraries/libredwg/default.nix4
-rw-r--r--pkgs/development/libraries/libremidi/default.nix4
-rw-r--r--pkgs/development/libraries/librep/default.nix55
-rw-r--r--pkgs/development/libraries/librep/setup-hook.sh5
-rw-r--r--pkgs/development/libraries/libresample/default.nix29
-rw-r--r--pkgs/development/libraries/libressl/default.nix20
-rw-r--r--pkgs/development/libraries/librime/default.nix3
-rw-r--r--pkgs/development/libraries/librsb/default.nix2
-rw-r--r--pkgs/development/libraries/librsvg/default.nix12
-rw-r--r--pkgs/development/libraries/librtprocess/default.nix2
-rw-r--r--pkgs/development/libraries/libs3/default.nix32
-rw-r--r--pkgs/development/libraries/libsamplerate/default.nix6
-rw-r--r--pkgs/development/libraries/libsass/default.nix2
-rw-r--r--pkgs/development/libraries/libsbsms/common.nix2
-rw-r--r--pkgs/development/libraries/libscrypt/default.nix4
-rw-r--r--pkgs/development/libraries/libseccomp/default.nix2
-rw-r--r--pkgs/development/libraries/libsecret/default.nix2
-rw-r--r--pkgs/development/libraries/libsegfault/default.nix2
-rw-r--r--pkgs/development/libraries/libserdes/default.nix2
-rw-r--r--pkgs/development/libraries/libserialport/default.nix4
-rw-r--r--pkgs/development/libraries/libshout/default.nix4
-rw-r--r--pkgs/development/libraries/libshumate/default.nix6
-rw-r--r--pkgs/development/libraries/libsidplayfp/default.nix4
-rw-r--r--pkgs/development/libraries/libsignon-glib/default.nix2
-rw-r--r--pkgs/development/libraries/libsixel/default.nix3
-rw-r--r--pkgs/development/libraries/libskk/default.nix6
-rw-r--r--pkgs/development/libraries/libslirp/default.nix4
-rw-r--r--pkgs/development/libraries/libsndfile/default.nix8
-rw-r--r--pkgs/development/libraries/libsodium/default.nix4
-rw-r--r--pkgs/development/libraries/libsolv/default.nix6
-rw-r--r--pkgs/development/libraries/libsoundio/default.nix8
-rw-r--r--pkgs/development/libraries/libsoup/3.x.nix4
-rw-r--r--pkgs/development/libraries/libsoup/default.nix4
-rw-r--r--pkgs/development/libraries/libspatialindex/default.nix38
-rw-r--r--pkgs/development/libraries/libspatialite/default.nix8
-rw-r--r--pkgs/development/libraries/libspiro/default.nix4
-rw-r--r--pkgs/development/libraries/libspnav/default.nix2
-rw-r--r--pkgs/development/libraries/libssh2/default.nix22
-rw-r--r--pkgs/development/libraries/libstatgrab/default.nix4
-rw-r--r--pkgs/development/libraries/libsurvive/default.nix6
-rw-r--r--pkgs/development/libraries/libsvm/default.nix8
-rw-r--r--pkgs/development/libraries/libtap/default.nix28
-rw-r--r--pkgs/development/libraries/libtasn1/default.nix2
-rw-r--r--pkgs/development/libraries/libtcod/default.nix34
-rw-r--r--pkgs/development/libraries/libthai/default.nix4
-rw-r--r--pkgs/development/libraries/libtheora/default.nix37
-rw-r--r--pkgs/development/libraries/libtheora/mingw-remove-export.patch18
-rw-r--r--pkgs/development/libraries/libticalcs2/default.nix4
-rw-r--r--pkgs/development/libraries/libtiff/default.nix10
-rw-r--r--pkgs/development/libraries/libtiger/default.nix2
-rw-r--r--pkgs/development/libraries/libtomcrypt/default.nix4
-rw-r--r--pkgs/development/libraries/libtommath/default.nix2
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/1.2.nix54
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix63
-rw-r--r--pkgs/development/libraries/libtsm/default.nix2
-rw-r--r--pkgs/development/libraries/libubox/default.nix2
-rw-r--r--pkgs/development/libraries/libuchardet/default.nix4
-rw-r--r--pkgs/development/libraries/libucl/default.nix10
-rw-r--r--pkgs/development/libraries/libui/default.nix14
-rw-r--r--pkgs/development/libraries/libuiohook/default.nix2
-rw-r--r--pkgs/development/libraries/libunarr/default.nix2
-rw-r--r--pkgs/development/libraries/libuninameslist/default.nix7
-rw-r--r--pkgs/development/libraries/libunistring/default.nix53
-rw-r--r--pkgs/development/libraries/libunity/default.nix2
-rw-r--r--pkgs/development/libraries/libunwind/default.nix22
-rw-r--r--pkgs/development/libraries/liburing/default.nix60
-rw-r--r--pkgs/development/libraries/libusb1/default.nix4
-rw-r--r--pkgs/development/libraries/libusbgx/default.nix4
-rw-r--r--pkgs/development/libraries/libusbmuxd/default.nix42
-rw-r--r--pkgs/development/libraries/libusbsio/default.nix6
-rw-r--r--pkgs/development/libraries/libuv/default.nix8
-rw-r--r--pkgs/development/libraries/libva/1.nix2
-rw-r--r--pkgs/development/libraries/libva/default.nix14
-rw-r--r--pkgs/development/libraries/libvarlink/default.nix2
-rw-r--r--pkgs/development/libraries/libvdpau/default.nix5
-rw-r--r--pkgs/development/libraries/libverto/default.nix54
-rw-r--r--pkgs/development/libraries/libvirt-glib/default.nix2
-rw-r--r--pkgs/development/libraries/libvirt/default.nix17
-rw-r--r--pkgs/development/libraries/libvisio/default.nix2
-rw-r--r--pkgs/development/libraries/libvmi/default.nix49
-rw-r--r--pkgs/development/libraries/libvncserver/default.nix7
-rw-r--r--pkgs/development/libraries/libvncserver/pkgconfig.patch28
-rw-r--r--pkgs/development/libraries/libvpx/1_8.nix185
-rw-r--r--pkgs/development/libraries/libvpx/default.nix24
-rw-r--r--pkgs/development/libraries/libwacom/default.nix77
-rw-r--r--pkgs/development/libraries/libwacom/surface.nix41
-rw-r--r--pkgs/development/libraries/libwebp/default.nix5
-rw-r--r--pkgs/development/libraries/libwnck/2.nix2
-rw-r--r--pkgs/development/libraries/libwpe/fdo.nix3
-rw-r--r--pkgs/development/libraries/libx86/default.nix2
-rw-r--r--pkgs/development/libraries/libx86emu/default.nix2
-rw-r--r--pkgs/development/libraries/libxkbcommon/default.nix6
-rw-r--r--pkgs/development/libraries/libxklavier/default.nix2
-rw-r--r--pkgs/development/libraries/libxl/default.nix2
-rw-r--r--pkgs/development/libraries/libxlsxwriter/default.nix6
-rw-r--r--pkgs/development/libraries/libxml2/default.nix35
-rw-r--r--pkgs/development/libraries/libxmlb/default.nix2
-rw-r--r--pkgs/development/libraries/libxmlxx/default.nix2
-rw-r--r--pkgs/development/libraries/libxnd/default.nix29
-rw-r--r--pkgs/development/libraries/libxslt/default.nix16
-rw-r--r--pkgs/development/libraries/libxsmm/default.nix14
-rw-r--r--pkgs/development/libraries/libxsmm/rpath.patch13
-rw-r--r--pkgs/development/libraries/libykclient/default.nix2
-rw-r--r--pkgs/development/libraries/libyuv/default.nix4
-rw-r--r--pkgs/development/libraries/libz/default.nix32
-rw-r--r--pkgs/development/libraries/libzapojit/default.nix2
-rw-r--r--pkgs/development/libraries/libzdb/default.nix4
-rw-r--r--pkgs/development/libraries/libzim/default.nix4
-rw-r--r--pkgs/development/libraries/libzip/default.nix2
-rw-r--r--pkgs/development/libraries/lief/default.nix17
-rw-r--r--pkgs/development/libraries/lightgbm/default.nix14
-rw-r--r--pkgs/development/libraries/linbox/default.nix5
-rw-r--r--pkgs/development/libraries/linenoise-ng/default.nix2
-rw-r--r--pkgs/development/libraries/linenoise/default.nix4
-rw-r--r--pkgs/development/libraries/liquid-dsp/default.nix4
-rw-r--r--pkgs/development/libraries/lmdb/default.nix2
-rw-r--r--pkgs/development/libraries/loudmouth/default.nix2
-rw-r--r--pkgs/development/libraries/lpcnetfreedv/default.nix2
-rw-r--r--pkgs/development/libraries/lrdf/default.nix3
-rw-r--r--pkgs/development/libraries/luabridge/default.nix2
-rw-r--r--pkgs/development/libraries/lyra/default.nix2
-rw-r--r--pkgs/development/libraries/mac/default.nix2
-rw-r--r--pkgs/development/libraries/magic-enum/default.nix2
-rw-r--r--pkgs/development/libraries/mailcore2/default.nix12
-rw-r--r--pkgs/development/libraries/mapnik/catch2-src.patch14
-rw-r--r--pkgs/development/libraries/mapnik/default.nix83
-rw-r--r--pkgs/development/libraries/mapnik/export-pkg-config-full-paths.patch17
-rw-r--r--pkgs/development/libraries/matrix-sdk-crypto-nodejs/generic.nix2
-rw-r--r--pkgs/development/libraries/maui-core/default.nix1
-rw-r--r--pkgs/development/libraries/mbedtls/2.nix4
-rw-r--r--pkgs/development/libraries/mbedtls/3.nix18
-rw-r--r--pkgs/development/libraries/mdds/default.nix40
-rw-r--r--pkgs/development/libraries/mdk-sdk/default.nix8
-rw-r--r--pkgs/development/libraries/medfile/default.nix2
-rw-r--r--pkgs/development/libraries/mediastreamer/default.nix11
-rw-r--r--pkgs/development/libraries/mediastreamer/msopenh264.nix4
-rw-r--r--pkgs/development/libraries/memorymapping/default.nix2
-rw-r--r--pkgs/development/libraries/mesa-glu/default.nix9
-rw-r--r--pkgs/development/libraries/mesa/common.nix35
-rw-r--r--pkgs/development/libraries/mesa/darwin-build-fix.patch13
-rw-r--r--pkgs/development/libraries/mesa/darwin.nix63
-rw-r--r--pkgs/development/libraries/mesa/darwin.patch17
-rw-r--r--pkgs/development/libraries/mesa/default.nix381
-rw-r--r--pkgs/development/libraries/mesa/llvmpipe-hook.sh14
-rw-r--r--pkgs/development/libraries/mesa/stubs.nix88
-rw-r--r--pkgs/development/libraries/meshoptimizer/default.nix4
-rw-r--r--pkgs/development/libraries/mimalloc/default.nix4
-rw-r--r--pkgs/development/libraries/mimetic/default.nix2
-rw-r--r--pkgs/development/libraries/minixml/default.nix4
-rw-r--r--pkgs/development/libraries/minizip-ng/default.nix4
-rw-r--r--pkgs/development/libraries/mitama-cpp-result/default.nix2
-rw-r--r--pkgs/development/libraries/mlt/default.nix19
-rw-r--r--pkgs/development/libraries/mongoc/default.nix6
-rw-r--r--pkgs/development/libraries/mongocxx/default.nix19
-rw-r--r--pkgs/development/libraries/motif/default.nix7
-rw-r--r--pkgs/development/libraries/movit/default.nix6
-rw-r--r--pkgs/development/libraries/mpdecimal/default.nix2
-rw-r--r--pkgs/development/libraries/mpfr/default.nix4
-rw-r--r--pkgs/development/libraries/mpich/default.nix10
-rw-r--r--pkgs/development/libraries/mpir/default.nix2
-rw-r--r--pkgs/development/libraries/msgpack-c/default.nix4
-rw-r--r--pkgs/development/libraries/multipart-parser-c/default.nix2
-rw-r--r--pkgs/development/libraries/mvapich/default.nix18
-rw-r--r--pkgs/development/libraries/mvfst/default.nix2
-rw-r--r--pkgs/development/libraries/mygui/default.nix6
-rw-r--r--pkgs/development/libraries/nanoflann/default.nix48
-rw-r--r--pkgs/development/libraries/nanosvg/default.nix11
-rw-r--r--pkgs/development/libraries/ncnn/default.nix6
-rw-r--r--pkgs/development/libraries/nco/default.nix6
-rw-r--r--pkgs/development/libraries/ncurses/default.nix20
-rw-r--r--pkgs/development/libraries/ndi/default.nix8
-rw-r--r--pkgs/development/libraries/ndn-cxx/default.nix63
-rw-r--r--pkgs/development/libraries/ndpi/default.nix4
-rw-r--r--pkgs/development/libraries/neardal/default.nix4
-rw-r--r--pkgs/development/libraries/neatvnc/default.nix4
-rw-r--r--pkgs/development/libraries/neon/default.nix2
-rw-r--r--pkgs/development/libraries/netcdf-cxx4/default.nix2
-rw-r--r--pkgs/development/libraries/netcdf-fortran/default.nix4
-rw-r--r--pkgs/development/libraries/netcdf/default.nix5
-rw-r--r--pkgs/development/libraries/nettle/default.nix4
-rw-r--r--pkgs/development/libraries/nettle/generic.nix4
-rw-r--r--pkgs/development/libraries/newt/default.nix6
-rw-r--r--pkgs/development/libraries/nghttp2/default.nix8
-rw-r--r--pkgs/development/libraries/nghttp3/default.nix6
-rw-r--r--pkgs/development/libraries/ngtcp2/default.nix6
-rw-r--r--pkgs/development/libraries/ngtcp2/gnutls.nix6
-rw-r--r--pkgs/development/libraries/nlopt/default.nix2
-rw-r--r--pkgs/development/libraries/notcurses/default.nix79
-rw-r--r--pkgs/development/libraries/nspr/default.nix6
-rw-r--r--pkgs/development/libraries/nss/esr.nix4
-rw-r--r--pkgs/development/libraries/nss/generic.nix12
-rw-r--r--pkgs/development/libraries/nss/latest.nix4
-rw-r--r--pkgs/development/libraries/nss/remove-c25519-support.patch69
-rw-r--r--pkgs/development/libraries/nss_wrapper/default.nix6
-rw-r--r--pkgs/development/libraries/nsync/default.nix4
-rw-r--r--pkgs/development/libraries/ntbtls/default.nix2
-rw-r--r--pkgs/development/libraries/ntirpc/default.nix5
-rw-r--r--pkgs/development/libraries/numcpp/default.nix2
-rw-r--r--pkgs/development/libraries/nuspell/default.nix8
-rw-r--r--pkgs/development/libraries/nv-codec-headers/default.nix32
-rw-r--r--pkgs/development/libraries/nv-codec-headers/make-nv-codec-headers.nix32
-rw-r--r--pkgs/development/libraries/nvidia-vaapi-driver/default.nix6
-rw-r--r--pkgs/development/libraries/oatpp/default.nix2
-rw-r--r--pkgs/development/libraries/ocl-icd/default.nix1
-rw-r--r--pkgs/development/libraries/ode/default.nix2
-rw-r--r--pkgs/development/libraries/odpic/default.nix12
-rw-r--r--pkgs/development/libraries/ogre/default.nix20
-rw-r--r--pkgs/development/libraries/ois/default.nix4
-rw-r--r--pkgs/development/libraries/okapi/default.nix2
-rw-r--r--pkgs/development/libraries/olm/default.nix46
-rw-r--r--pkgs/development/libraries/omorfi/default.nix2
-rw-r--r--pkgs/development/libraries/oneDNN/default.nix4
-rw-r--r--pkgs/development/libraries/onnxruntime/0001-eigen-allow-dependency-injection.patch41
-rw-r--r--pkgs/development/libraries/onnxruntime/default.nix77
-rw-r--r--pkgs/development/libraries/onnxruntime/nvcc-gsl.patch5
-rw-r--r--pkgs/development/libraries/onnxruntime/update-re2.patch132
-rw-r--r--pkgs/development/libraries/openal-soft/default.nix10
-rw-r--r--pkgs/development/libraries/openbabel/default.nix38
-rw-r--r--pkgs/development/libraries/openbsm/default.nix2
-rw-r--r--pkgs/development/libraries/opencascade-occt/default.nix2
-rw-r--r--pkgs/development/libraries/opencl-clang/default.nix19
-rw-r--r--pkgs/development/libraries/opencl-clhpp/default.nix4
-rw-r--r--pkgs/development/libraries/opencollada/default.nix6
-rw-r--r--pkgs/development/libraries/opencolorio/1.x.nix8
-rw-r--r--pkgs/development/libraries/opencolorio/default.nix21
-rw-r--r--pkgs/development/libraries/opencsg/default.nix12
-rw-r--r--pkgs/development/libraries/openct/default.nix2
-rw-r--r--pkgs/development/libraries/opencv/3.x.nix304
-rw-r--r--pkgs/development/libraries/opencv/4.x.nix296
-rw-r--r--pkgs/development/libraries/opencv/default.nix84
-rw-r--r--pkgs/development/libraries/opencv/no-build-info.patch14
-rw-r--r--pkgs/development/libraries/opencv/tests.nix6
-rw-r--r--pkgs/development/libraries/opendbx/default.nix4
-rw-r--r--pkgs/development/libraries/opendht/default.nix6
-rw-r--r--pkgs/development/libraries/opendkim/default.nix4
-rw-r--r--pkgs/development/libraries/openexr/3.nix4
-rw-r--r--pkgs/development/libraries/openexr/default.nix2
-rw-r--r--pkgs/development/libraries/openfec/default.nix6
-rw-r--r--pkgs/development/libraries/openfst/default.nix40
-rw-r--r--pkgs/development/libraries/opengrm-ngram/default.nix25
-rw-r--r--pkgs/development/libraries/openimagedenoise/default.nix6
-rw-r--r--pkgs/development/libraries/openimageio/default.nix10
-rw-r--r--pkgs/development/libraries/openjpeg/default.nix4
-rw-r--r--pkgs/development/libraries/openldap/default.nix8
-rw-r--r--pkgs/development/libraries/openmpi/default.nix338
-rw-r--r--pkgs/development/libraries/openpam/default.nix19
-rw-r--r--pkgs/development/libraries/opensaml-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/openscenegraph/default.nix6
-rw-r--r--pkgs/development/libraries/openslp/default.nix2
-rw-r--r--pkgs/development/libraries/openssl/3.3/CVE-2024-5535.patch108
-rw-r--r--pkgs/development/libraries/openssl/default.nix57
-rw-r--r--pkgs/development/libraries/opensubdiv/default.nix10
-rw-r--r--pkgs/development/libraries/openvdb/default.nix2
-rw-r--r--pkgs/development/libraries/openvino/default.nix12
-rw-r--r--pkgs/development/libraries/openwsman/default.nix2
-rw-r--r--pkgs/development/libraries/openxr-loader/default.nix4
-rw-r--r--pkgs/development/libraries/openzwave/default.nix4
-rw-r--r--pkgs/development/libraries/oracle-instantclient/default.nix8
-rw-r--r--pkgs/development/libraries/osm-gps-map/default.nix7
-rw-r--r--pkgs/development/libraries/p11-kit/default.nix4
-rw-r--r--pkgs/development/libraries/packr/default.nix4
-rw-r--r--pkgs/development/libraries/pagmo2/default.nix10
-rw-r--r--pkgs/development/libraries/pango/default.nix4
-rw-r--r--pkgs/development/libraries/pangolin/default.nix6
-rw-r--r--pkgs/development/libraries/pangomm/2.42.nix4
-rw-r--r--pkgs/development/libraries/pangomm/2.48.nix2
-rw-r--r--pkgs/development/libraries/pangomm/default.nix2
-rw-r--r--pkgs/development/libraries/parson/default.nix6
-rw-r--r--pkgs/development/libraries/partio/default.nix10
-rw-r--r--pkgs/development/libraries/pc-ble-driver/default.nix6
-rw-r--r--pkgs/development/libraries/pcaudiolib/default.nix8
-rw-r--r--pkgs/development/libraries/pcg-c/default.nix2
-rw-r--r--pkgs/development/libraries/pcl/default.nix6
-rw-r--r--pkgs/development/libraries/pcre/default.nix17
-rw-r--r--pkgs/development/libraries/pcre2/default.nix16
-rw-r--r--pkgs/development/libraries/pdal/default.nix18
-rw-r--r--pkgs/development/libraries/pdfhummus/default.nix4
-rw-r--r--pkgs/development/libraries/physfs/default.nix2
-rw-r--r--pkgs/development/libraries/physics/applgrid/default.nix4
-rw-r--r--pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch94
-rw-r--r--pkgs/development/libraries/physics/cernlib/default.nix125
-rw-r--r--pkgs/development/libraries/physics/cernlib/patch.patch186
-rw-r--r--pkgs/development/libraries/physics/cernlib/setup-hook.sh2
-rw-r--r--pkgs/development/libraries/physics/geant4/default.nix12
-rw-r--r--pkgs/development/libraries/physics/hepmc3/default.nix2
-rw-r--r--pkgs/development/libraries/physics/herwig/default.nix2
-rw-r--r--pkgs/development/libraries/physics/lhapdf/default.nix2
-rw-r--r--pkgs/development/libraries/physics/nlojet/default.nix2
-rw-r--r--pkgs/development/libraries/physics/pythia/default.nix2
-rw-r--r--pkgs/development/libraries/pico-sdk/default.nix32
-rw-r--r--pkgs/development/libraries/pinocchio/default.nix92
-rw-r--r--pkgs/development/libraries/pipewire/0.2.nix54
-rw-r--r--pkgs/development/libraries/pipewire/default.nix80
-rw-r--r--pkgs/development/libraries/pipewire/wireplumber.nix4
-rw-r--r--pkgs/development/libraries/pixman/default.nix9
-rw-r--r--pkgs/development/libraries/pkger/default.nix2
-rw-r--r--pkgs/development/libraries/platform-folders/default.nix2
-rw-r--r--pkgs/development/libraries/plib/default.nix4
-rw-r--r--pkgs/development/libraries/plplot/default.nix49
-rw-r--r--pkgs/development/libraries/pmix/default.nix104
-rw-r--r--pkgs/development/libraries/png++/default.nix2
-rw-r--r--pkgs/development/libraries/podofo/0.10.x.nix6
-rw-r--r--pkgs/development/libraries/polkit-qt-1/default.nix2
-rw-r--r--pkgs/development/libraries/polkit/default.nix14
-rw-r--r--pkgs/development/libraries/poppler/default.nix38
-rw-r--r--pkgs/development/libraries/popt/default.nix2
-rw-r--r--pkgs/development/libraries/portaudio/default.nix8
-rw-r--r--pkgs/development/libraries/portmidi/default.nix4
-rw-r--r--pkgs/development/libraries/ppl/default.nix2
-rw-r--r--pkgs/development/libraries/precice/default.nix2
-rw-r--r--pkgs/development/libraries/proj-datumgrid/default.nix2
-rw-r--r--pkgs/development/libraries/proj/default.nix2
-rw-r--r--pkgs/development/libraries/protobuf/25.nix4
-rw-r--r--pkgs/development/libraries/protobuf/27.nix4
-rw-r--r--pkgs/development/libraries/protobuf/28.nix9
-rw-r--r--pkgs/development/libraries/protobuf/generic-v3.nix2
-rw-r--r--pkgs/development/libraries/protobuf/generic.nix6
-rw-r--r--pkgs/development/libraries/pslib/default.nix6
-rw-r--r--pkgs/development/libraries/psqlodbc/default.nix29
-rw-r--r--pkgs/development/libraries/pth/default.nix2
-rw-r--r--pkgs/development/libraries/pulseaudio-qt/default.nix2
-rw-r--r--pkgs/development/libraries/py3c/default.nix4
-rw-r--r--pkgs/development/libraries/python-qt/default.nix11
-rw-r--r--pkgs/development/libraries/qca/default.nix4
-rw-r--r--pkgs/development/libraries/qgnomeplatform/default.nix3
-rw-r--r--pkgs/development/libraries/qhull/default.nix2
-rw-r--r--pkgs/development/libraries/qmlbox2d/default.nix2
-rw-r--r--pkgs/development/libraries/qmltermwidget/default.nix2
-rw-r--r--pkgs/development/libraries/qpdf/default.nix36
-rw-r--r--pkgs/development/libraries/qrcodegen/default.nix52
-rw-r--r--pkgs/development/libraries/qrencode/default.nix4
-rw-r--r--pkgs/development/libraries/qrupdate/default.nix5
-rw-r--r--pkgs/development/libraries/qrupdate/disable-zch1dn-test.patch13
-rw-r--r--pkgs/development/libraries/qscintilla/default.nix8
-rw-r--r--pkgs/development/libraries/qt-5/5.15/default.nix30
-rw-r--r--pkgs/development/libraries/qt-5/5.15/srcs-generated.json4
-rw-r--r--pkgs/development/libraries/qt-5/hooks/qmake-hook.sh36
-rw-r--r--pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qt3d.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtbase.nix20
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtconnectivity.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtdatavis3d.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtdeclarative.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtgamepad.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtimageformats.nix1
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtlocation.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtmultimedia.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtserialport.nix2
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtspeech.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qttools.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebengine.nix73
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebkit.nix12
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebview.nix4
-rw-r--r--pkgs/development/libraries/qt-6/default.nix8
-rw-r--r--pkgs/development/libraries/qt-6/hooks/qmake-hook.sh28
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtbase.nix6
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtdeclarative.nix9
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtmultimedia.nix4
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtspeech.nix4
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtwayland.nix37
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtwebengine.nix15
-rw-r--r--pkgs/development/libraries/qtfeedback/default.nix1
-rw-r--r--pkgs/development/libraries/qtkeychain/default.nix6
-rw-r--r--pkgs/development/libraries/qtpbfimageplugin/default.nix2
-rw-r--r--pkgs/development/libraries/qtutilities/default.nix4
-rw-r--r--pkgs/development/libraries/quantlib/default.nix10
-rw-r--r--pkgs/development/libraries/quarto/default.nix6
-rw-r--r--pkgs/development/libraries/quazip/default.nix2
-rw-r--r--pkgs/development/libraries/quickder/default.nix2
-rw-r--r--pkgs/development/libraries/quickfix/default.nix27
-rw-r--r--pkgs/development/libraries/quickmem/default.nix2
-rw-r--r--pkgs/development/libraries/quictls/default.nix2
-rw-r--r--pkgs/development/libraries/qwt/default.nix6
-rw-r--r--pkgs/development/libraries/qxmpp/default.nix4
-rw-r--r--pkgs/development/libraries/raft-canonical/default.nix2
-rw-r--r--pkgs/development/libraries/range-v3/default.nix6
-rw-r--r--pkgs/development/libraries/rapidcheck/default.nix2
-rw-r--r--pkgs/development/libraries/rapidfuzz-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/rapidjson/default.nix80
-rw-r--r--pkgs/development/libraries/rapidjson/suppress-valgrind-failures.patch (renamed from pkgs/development/libraries/rapidjson/0001-unstable-valgrind-suppress-failures.patch)0
-rw-r--r--pkgs/development/libraries/rapidjson/test-skip-valgrind.diff7
-rw-r--r--pkgs/development/libraries/rapidjson/unstable.nix80
-rw-r--r--pkgs/development/libraries/rapidjson/use-nixpkgs-gtest.patch (renamed from pkgs/development/libraries/rapidjson/0000-unstable-use-nixpkgs-gtest.patch)28
-rw-r--r--pkgs/development/libraries/rapidxml/default.nix2
-rw-r--r--pkgs/development/libraries/rapidyaml/default.nix6
-rw-r--r--pkgs/development/libraries/raylib/default.nix25
-rw-r--r--pkgs/development/libraries/rdkafka/default.nix4
-rw-r--r--pkgs/development/libraries/re2/default.nix88
-rw-r--r--pkgs/development/libraries/relibc/Cargo.lock600
-rw-r--r--pkgs/development/libraries/relibc/default.nix85
-rw-r--r--pkgs/development/libraries/rep-gtk/default.nix44
-rw-r--r--pkgs/development/libraries/rep-gtk/setup-hook.sh5
-rw-r--r--pkgs/development/libraries/retro-gtk/default.nix3
-rw-r--r--pkgs/development/libraries/rinutils/default.nix6
-rw-r--r--pkgs/development/libraries/rlottie/default.nix2
-rw-r--r--pkgs/development/libraries/rnnoise-plugin/default.nix8
-rw-r--r--pkgs/development/libraries/robin-map/default.nix2
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix16
-rw-r--r--pkgs/development/libraries/rocksdb/fix-findliburing.patch29
-rw-r--r--pkgs/development/libraries/rtlcss/default.nix2
-rw-r--r--pkgs/development/libraries/rttr/default.nix2
-rw-r--r--pkgs/development/libraries/rubberband/default.nix4
-rw-r--r--pkgs/development/libraries/rure/Cargo.lock24
-rw-r--r--pkgs/development/libraries/rure/pin.json2
-rwxr-xr-xpkgs/development/libraries/rure/update.sh2
-rw-r--r--pkgs/development/libraries/rustls-ffi/Cargo.lock369
-rw-r--r--pkgs/development/libraries/rustls-ffi/default.nix17
-rw-r--r--pkgs/development/libraries/s2n-tls/default.nix6
-rw-r--r--pkgs/development/libraries/safefile/default.nix2
-rw-r--r--pkgs/development/libraries/schroedinger/default.nix2
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/default.nix8
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix1159
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix82
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-full.nix29
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix18
-rw-r--r--pkgs/development/libraries/science/astronomy/stellarsolver/default.nix4
-rw-r--r--pkgs/development/libraries/science/biology/bicgl/default.nix6
-rw-r--r--pkgs/development/libraries/science/biology/bpp-core/default.nix2
-rw-r--r--pkgs/development/libraries/science/biology/bpp-phyl/default.nix2
-rw-r--r--pkgs/development/libraries/science/biology/bpp-popgen/default.nix2
-rw-r--r--pkgs/development/libraries/science/biology/bpp-seq/default.nix2
-rw-r--r--pkgs/development/libraries/science/biology/elastix/default.nix31
-rw-r--r--pkgs/development/libraries/science/biology/gifticlib/default.nix2
-rw-r--r--pkgs/development/libraries/science/biology/mirtk/default.nix2
-rw-r--r--pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix2
-rw-r--r--pkgs/development/libraries/science/chemistry/dftd4/default.nix5
-rw-r--r--pkgs/development/libraries/science/chemistry/dftd4/fortran-module-dir.patch56
-rw-r--r--pkgs/development/libraries/science/chemistry/mctc-lib/default.nix4
-rw-r--r--pkgs/development/libraries/science/chemistry/openmm/default.nix10
-rw-r--r--pkgs/development/libraries/science/chemistry/plumed/default.nix4
-rw-r--r--pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix4
-rw-r--r--pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix2
-rw-r--r--pkgs/development/libraries/science/math/arpack/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/blas/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/bonmin/default.nix48
-rw-r--r--pkgs/development/libraries/science/math/clblas/default.nix9
-rw-r--r--pkgs/development/libraries/science/math/clblast/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/dbcsr/default.nix8
-rw-r--r--pkgs/development/libraries/science/math/faiss/default.nix220
-rw-r--r--pkgs/development/libraries/science/math/faiss/tests.nix37
-rw-r--r--pkgs/development/libraries/science/math/ipopt/default.nix23
-rw-r--r--pkgs/development/libraries/science/math/itpp/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/latte-integrale/default.nix41
-rw-r--r--pkgs/development/libraries/science/math/lcalc/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/libamplsolver/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/liblapack/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/liblbfgs/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/libtorch/bin.nix17
-rw-r--r--pkgs/development/libraries/science/math/m4rie/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/magma/generic.nix19
-rw-r--r--pkgs/development/libraries/science/math/mkl/default.nix28
-rw-r--r--pkgs/development/libraries/science/math/mkl/test/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix27
-rw-r--r--pkgs/development/libraries/science/math/or-tools/default.nix72
-rw-r--r--pkgs/development/libraries/science/math/or-tools/fix-stringview-compile.patch36
-rw-r--r--pkgs/development/libraries/science/math/or-tools/offline.patch16
-rw-r--r--pkgs/development/libraries/science/math/osqp/default.nix10
-rw-r--r--pkgs/development/libraries/science/math/p4est-sc/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/parmetis/default.nix34
-rw-r--r--pkgs/development/libraries/science/math/petsc/default.nix96
-rw-r--r--pkgs/development/libraries/science/math/petsc/filter_mpi_warnings.patch100
-rw-r--r--pkgs/development/libraries/science/math/rubiks/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/scalapack/default.nix19
-rw-r--r--pkgs/development/libraries/science/math/scs/default.nix52
-rw-r--r--pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix26
-rw-r--r--pkgs/development/libraries/science/math/suitesparse/4.4.nix6
-rw-r--r--pkgs/development/libraries/science/math/suitesparse/default.nix20
-rw-r--r--pkgs/development/libraries/science/math/sympow/default.nix17
-rw-r--r--pkgs/development/libraries/science/math/tensorflow-lite/default.nix3
-rw-r--r--pkgs/development/libraries/science/math/tensorrt/extension.nix12
-rw-r--r--pkgs/development/libraries/science/math/tiny-cuda-nn/default.nix22
-rw-r--r--pkgs/development/libraries/science/networking/ns-3/default.nix4
-rw-r--r--pkgs/development/libraries/scmccid/default.nix2
-rw-r--r--pkgs/development/libraries/sentry-native/default.nix4
-rw-r--r--pkgs/development/libraries/serd/default.nix2
-rw-r--r--pkgs/development/libraries/serf/default.nix4
-rw-r--r--pkgs/development/libraries/sfml/default.nix6
-rw-r--r--pkgs/development/libraries/shapelib/default.nix26
-rw-r--r--pkgs/development/libraries/shibboleth-sp/default.nix2
-rw-r--r--pkgs/development/libraries/silgraphite/graphite2.nix9
-rw-r--r--pkgs/development/libraries/simdjson/default.nix4
-rw-r--r--pkgs/development/libraries/simgear/default.nix4
-rw-r--r--pkgs/development/libraries/simpleitk/default.nix8
-rw-r--r--pkgs/development/libraries/slang/default.nix102
-rw-r--r--pkgs/development/libraries/smpeg/default.nix2
-rw-r--r--pkgs/development/libraries/smpeg2/default.nix2
-rw-r--r--pkgs/development/libraries/snappy/default.nix4
-rw-r--r--pkgs/development/libraries/soci/default.nix2
-rw-r--r--pkgs/development/libraries/socket_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/sofia-sip/default.nix2
-rw-r--r--pkgs/development/libraries/sonic/default.nix2
-rw-r--r--pkgs/development/libraries/sope/default.nix2
-rw-r--r--pkgs/development/libraries/soqt/default.nix4
-rw-r--r--pkgs/development/libraries/sord/default.nix2
-rw-r--r--pkgs/development/libraries/soundtouch/default.nix2
-rw-r--r--pkgs/development/libraries/spdk/default.nix2
-rw-r--r--pkgs/development/libraries/spdlog/default.nix4
-rw-r--r--pkgs/development/libraries/speech-tools/default.nix4
-rw-r--r--pkgs/development/libraries/speechd/default.nix8
-rw-r--r--pkgs/development/libraries/speexdsp/default.nix2
-rw-r--r--pkgs/development/libraries/spglib/default.nix6
-rw-r--r--pkgs/development/libraries/spice-gtk/default.nix8
-rw-r--r--pkgs/development/libraries/spice/default.nix4
-rw-r--r--pkgs/development/libraries/spirv-headers/default.nix4
-rw-r--r--pkgs/development/libraries/sqlcipher/default.nix6
-rw-r--r--pkgs/development/libraries/sqlite/default.nix10
-rw-r--r--pkgs/development/libraries/sqlite/tools.nix6
-rw-r--r--pkgs/development/libraries/sqlitecpp/default.nix4
-rw-r--r--pkgs/development/libraries/sregex/default.nix2
-rw-r--r--pkgs/development/libraries/stargate-libcds/default.nix2
-rw-r--r--pkgs/development/libraries/stb/default.nix2
-rw-r--r--pkgs/development/libraries/stfl/default.nix2
-rw-r--r--pkgs/development/libraries/stxxl/default.nix4
-rw-r--r--pkgs/development/libraries/sundials/default.nix4
-rw-r--r--pkgs/development/libraries/swiftshader/default.nix11
-rw-r--r--pkgs/development/libraries/sycl-info/default.nix1
-rw-r--r--pkgs/development/libraries/symengine/default.nix2
-rw-r--r--pkgs/development/libraries/t1lib/default.nix2
-rw-r--r--pkgs/development/libraries/tachyon/default.nix2
-rw-r--r--pkgs/development/libraries/taco/default.nix2
-rw-r--r--pkgs/development/libraries/tagparser/default.nix5
-rw-r--r--pkgs/development/libraries/talloc/default.nix2
-rw-r--r--pkgs/development/libraries/taskflow/default.nix4
-rw-r--r--pkgs/development/libraries/tbb/2020_3.nix2
-rw-r--r--pkgs/development/libraries/tbb/2021_5.nix2
-rw-r--r--pkgs/development/libraries/tbb/default.nix2
-rw-r--r--pkgs/development/libraries/tbox/default.nix4
-rw-r--r--pkgs/development/libraries/tdb/default.nix2
-rw-r--r--pkgs/development/libraries/tdlib/default.nix8
-rw-r--r--pkgs/development/libraries/test-drive/default.nix6
-rw-r--r--pkgs/development/libraries/tezos-rust-libs/default.nix4
-rw-r--r--pkgs/development/libraries/thrift/default.nix11
-rw-r--r--pkgs/development/libraries/ti-rpc/default.nix4
-rw-r--r--pkgs/development/libraries/tiledb/default.nix2
-rw-r--r--pkgs/development/libraries/tinyxml/2.6.2.nix4
-rw-r--r--pkgs/development/libraries/tix/default.nix1
-rw-r--r--pkgs/development/libraries/tk/8.5.nix2
-rw-r--r--pkgs/development/libraries/tk/8.6.nix4
-rw-r--r--pkgs/development/libraries/tk/generic.nix10
-rw-r--r--pkgs/development/libraries/tkimg/default.nix2
-rw-r--r--pkgs/development/libraries/tl-expected/default.nix2
-rw-r--r--pkgs/development/libraries/tllist/default.nix45
-rw-r--r--pkgs/development/libraries/toml-f/default.nix2
-rw-r--r--pkgs/development/libraries/toml11/default.nix47
-rw-r--r--pkgs/development/libraries/tomlc99/default.nix30
-rw-r--r--pkgs/development/libraries/tomlcpp/default.nix27
-rw-r--r--pkgs/development/libraries/tpm2-tss/default.nix16
-rw-r--r--pkgs/development/libraries/tpm2-tss/no-shadow.patch16
-rw-r--r--pkgs/development/libraries/tracker/default.nix12
-rw-r--r--pkgs/development/libraries/tremor/default.nix2
-rw-r--r--pkgs/development/libraries/trompeloeil/default.nix4
-rw-r--r--pkgs/development/libraries/twolame/default.nix35
-rw-r--r--pkgs/development/libraries/ubus/default.nix2
-rw-r--r--pkgs/development/libraries/uclient/default.nix2
-rw-r--r--pkgs/development/libraries/ucommon/default.nix2
-rw-r--r--pkgs/development/libraries/ucx/default.nix2
-rw-r--r--pkgs/development/libraries/udns/default.nix8
-rw-r--r--pkgs/development/libraries/udunits/default.nix50
-rw-r--r--pkgs/development/libraries/uhttpmock/default.nix2
-rw-r--r--pkgs/development/libraries/umockdev/default.nix4
-rw-r--r--pkgs/development/libraries/unicorn/default.nix48
-rw-r--r--pkgs/development/libraries/unittest-cpp/default.nix2
-rw-r--r--pkgs/development/libraries/unixODBCDrivers/default.nix59
-rw-r--r--pkgs/development/libraries/usbredir/default.nix1
-rw-r--r--pkgs/development/libraries/v8/default.nix12
-rw-r--r--pkgs/development/libraries/vapoursynth-mvtools/default.nix29
-rw-r--r--pkgs/development/libraries/vapoursynth/0001-Call-weak-function-to-allow-adding-preloaded-plugins.patch74
-rw-r--r--pkgs/development/libraries/vapoursynth/default.nix67
-rw-r--r--pkgs/development/libraries/vapoursynth/editor.nix59
-rw-r--r--pkgs/development/libraries/vapoursynth/plugin-interface.nix114
-rw-r--r--pkgs/development/libraries/vc/0.7.nix2
-rw-r--r--pkgs/development/libraries/vcdimager/default.nix2
-rw-r--r--pkgs/development/libraries/vectorscan/default.nix4
-rw-r--r--pkgs/development/libraries/vigra/default.nix45
-rw-r--r--pkgs/development/libraries/virglrenderer/default.nix4
-rw-r--r--pkgs/development/libraries/virtualpg/default.nix2
-rw-r--r--pkgs/development/libraries/vkd3d-proton/default.nix41
-rw-r--r--pkgs/development/libraries/vmime/default.nix2
-rw-r--r--pkgs/development/libraries/vmmlib/default.nix6
-rw-r--r--pkgs/development/libraries/volk/2.5.0.nix60
-rw-r--r--pkgs/development/libraries/volk/default.nix58
-rw-r--r--pkgs/development/libraries/volume-key/default.nix3
-rw-r--r--pkgs/development/libraries/vrpn/default.nix4
-rw-r--r--pkgs/development/libraries/vsqlite/default.nix2
-rw-r--r--pkgs/development/libraries/vte/default.nix2
-rw-r--r--pkgs/development/libraries/vtk/generic.nix24
-rw-r--r--pkgs/development/libraries/vulkan-headers/default.nix7
-rw-r--r--pkgs/development/libraries/vulkan-loader/default.nix24
-rw-r--r--pkgs/development/libraries/vulkan-utility-libraries/default.nix4
-rw-r--r--pkgs/development/libraries/vxl/default.nix4
-rw-r--r--pkgs/development/libraries/waffle/default.nix12
-rw-r--r--pkgs/development/libraries/wangle/default.nix4
-rw-r--r--pkgs/development/libraries/wapp/default.nix6
-rw-r--r--pkgs/development/libraries/wayland/darwin.patch22
-rw-r--r--pkgs/development/libraries/wayland/default.nix49
-rw-r--r--pkgs/development/libraries/wayland/protocols.nix27
-rw-r--r--pkgs/development/libraries/wayland/scanner.nix49
-rw-r--r--pkgs/development/libraries/waylib/default.nix5
-rw-r--r--pkgs/development/libraries/webkit2-sharp/default.nix2
-rw-r--r--pkgs/development/libraries/webkitgtk/default.nix95
-rw-r--r--pkgs/development/libraries/webrtc-audio-processing/0.3.nix2
-rw-r--r--pkgs/development/libraries/webrtc-audio-processing/default.nix4
-rw-r--r--pkgs/development/libraries/wfa2-lib/default.nix2
-rw-r--r--pkgs/development/libraries/wlroots/default.nix45
-rw-r--r--pkgs/development/libraries/wolfssl/default.nix13
-rw-r--r--pkgs/development/libraries/wxSVG/default.nix2
-rw-r--r--pkgs/development/libraries/wxsqlite3/default.nix4
-rw-r--r--pkgs/development/libraries/wxsqliteplus/default.nix12
-rw-r--r--pkgs/development/libraries/wxwidgets/wxGTK31.nix20
-rw-r--r--pkgs/development/libraries/wxwidgets/wxGTK32.nix19
-rw-r--r--pkgs/development/libraries/x264/default.nix6
-rw-r--r--pkgs/development/libraries/x265/darwin-__rdtsc.patch29
-rw-r--r--pkgs/development/libraries/x265/default.nix45
-rw-r--r--pkgs/development/libraries/x265/fix-clang-asm.patch34
-rw-r--r--pkgs/development/libraries/x265/fix-neon-detection.patch28
-rw-r--r--pkgs/development/libraries/xapian/default.nix13
-rw-r--r--pkgs/development/libraries/xapian/tools/omega/default.nix2
-rw-r--r--pkgs/development/libraries/xavs/default.nix2
-rw-r--r--pkgs/development/libraries/xdg-dbus-proxy/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix18
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix14
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal/default.nix13
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal/trash-test.patch18
-rw-r--r--pkgs/development/libraries/xed/default.nix4
-rw-r--r--pkgs/development/libraries/xgboost/default.nix4
-rw-r--r--pkgs/development/libraries/xml-security-c/default.nix21
-rw-r--r--pkgs/development/libraries/xmlrpc-c/default.nix9
-rw-r--r--pkgs/development/libraries/xmlsec/default.nix21
-rw-r--r--pkgs/development/libraries/xmlsec/remove_bsd_base64_decode_flag.patch8
-rw-r--r--pkgs/development/libraries/xsimd/default.nix54
-rw-r--r--pkgs/development/libraries/xsimd/disable-test_error_gamma.patch30
-rw-r--r--pkgs/development/libraries/xtensor/default.nix1
-rw-r--r--pkgs/development/libraries/xtl/default.nix1
-rw-r--r--pkgs/development/libraries/xvidcore/default.nix10
-rw-r--r--pkgs/development/libraries/xxHash/default.nix7
-rw-r--r--pkgs/development/libraries/yaml-cpp/default.nix3
-rw-r--r--pkgs/development/libraries/yas/default.nix2
-rw-r--r--pkgs/development/libraries/yubico-pam/default.nix4
-rw-r--r--pkgs/development/libraries/yyjson/default.nix4
-rw-r--r--pkgs/development/libraries/zchunk/default.nix51
-rw-r--r--pkgs/development/libraries/zeroc-ice/default.nix10
-rw-r--r--pkgs/development/libraries/zimlib/default.nix2
-rw-r--r--pkgs/development/libraries/zlib-ng/default.nix4
-rw-r--r--pkgs/development/libraries/zmusic/default.nix12
-rw-r--r--pkgs/development/libraries/zxing-cpp/default.nix56
-rw-r--r--pkgs/development/libraries/zydis/default.nix43
-rw-r--r--pkgs/development/libraries/zydis/zycore.nix25
-rw-r--r--pkgs/development/libraries/zziplib/default.nix64
1350 files changed, 10220 insertions, 22522 deletions
diff --git a/pkgs/development/libraries/LAStools/default.nix b/pkgs/development/libraries/LAStools/default.nix
index 5dfd6570c0808..e4d86733ab392 100644
--- a/pkgs/development/libraries/LAStools/default.nix
+++ b/pkgs/development/libraries/LAStools/default.nix
@@ -1,4 +1,9 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+}:
 
 stdenv.mkDerivation rec {
   pname = "LAStools";
@@ -19,6 +24,8 @@ stdenv.mkDerivation rec {
     "format"
   ];
 
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isAarch64 "-Wno-narrowing";
+
   nativeBuildInputs = [
     cmake
   ];
@@ -27,7 +34,7 @@ stdenv.mkDerivation rec {
     description = "Software for rapid LiDAR processing";
     homepage = "http://lastools.org/";
     license = licenses.unfree;
-    maintainers = with maintainers; [ stephenwithph ];
+    maintainers = with maintainers; teams.geospatial.members ++ [ stephenwithph ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix
deleted file mode 100644
index 8038407090b43..0000000000000
--- a/pkgs/development/libraries/SDL/default.nix
+++ /dev/null
@@ -1,136 +0,0 @@
-{ lib, stdenv, config, fetchurl, fetchpatch, pkg-config, audiofile, libcap, libiconv
-, libGLSupported ? lib.meta.availableOn stdenv.hostPlatform libGL
-, openglSupport ? libGLSupported, libGL, libGLU
-, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid, alsa-lib
-, x11Support ? !stdenv.isCygwin && !stdenv.hostPlatform.isAndroid
-, libXext, libICE, libXrandr
-, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux && !stdenv.hostPlatform.isAndroid && lib.meta.availableOn stdenv.hostPlatform libpulseaudio, libpulseaudio
-, OpenGL, GLUT, CoreAudio, CoreServices, AudioUnit, Kernel, Cocoa
-}:
-
-# NOTE: When editing this expression see if the same change applies to
-# SDL2 expression too
-
-let
-  extraPropagatedBuildInputs = [ ]
-    ++ lib.optionals x11Support [ libXext libICE libXrandr ]
-    ++ lib.optionals (openglSupport && stdenv.isLinux) [ libGL libGLU ]
-    ++ lib.optionals (openglSupport && stdenv.isDarwin) [ OpenGL GLUT ]
-    ++ lib.optional alsaSupport alsa-lib
-    ++ lib.optional pulseaudioSupport libpulseaudio
-    ++ lib.optional stdenv.isDarwin Cocoa;
-  rpath = lib.makeLibraryPath extraPropagatedBuildInputs;
-in
-
-stdenv.mkDerivation rec {
-  pname = "SDL";
-  version = "1.2.15";
-
-  src = fetchurl {
-    url    = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
-    sha256 = "005d993xcac8236fpvd1iawkz4wqjybkpn8dbwaliqz5jfkidlyn";
-  };
-
-  outputs = [ "out" "dev" ];
-  outputBin = "dev"; # sdl-config
-
-  nativeBuildInputs = [ pkg-config ]
-    ++ lib.optional stdenv.isLinux libcap;
-
-  propagatedBuildInputs = [ libiconv ] ++ extraPropagatedBuildInputs;
-
-  buildInputs = [ ]
-    ++ lib.optional (!stdenv.hostPlatform.isMinGW && alsaSupport) audiofile
-    ++ lib.optionals stdenv.isDarwin [ AudioUnit CoreAudio CoreServices Kernel OpenGL ];
-
-  configureFlags = [
-    "--disable-oss"
-    "--disable-video-x11-xme"
-    "--enable-rpath"
-  # Building without this fails on Darwin with
-  #
-  #   ./src/video/x11/SDL_x11sym.h:168:17: error: conflicting types for '_XData32'
-  #   SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
-  #
-  # Please try revert the change that introduced this comment when updating SDL.
-  ] ++ lib.optional stdenv.isDarwin "--disable-x11-shared"
-    ++ lib.optional (!x11Support) "--without-x"
-    ++ lib.optional alsaSupport "--with-alsa-prefix=${alsa-lib.out}/lib";
-
-  patches = [
-    ./find-headers.patch
-
-    # Fix window resizing issues, e.g. for xmonad
-    # Ticket: http://bugzilla.libsdl.org/show_bug.cgi?id=1430
-    (fetchpatch {
-      name = "fix_window_resizing.diff";
-      url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?msg=10;filename=fix_window_resizing.diff;att=2;bug=665779";
-      sha256 = "1z35azc73vvi19pzi6byck31132a8w1vzrghp1x3hy4a4f9z4gc6";
-    })
-    # Fix drops of keyboard events for SDL_EnableUNICODE
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/0332e2bb18dc68d6892c3b653b2547afe323854b.patch";
-      sha256 = "0g458iv6pp9sikdch6ms8svz60lf5ks2q5wgid8s9rydhk98lpp5";
-    })
-    # Ignore insane joystick axis events
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/ab99cc82b0a898ad528d46fa128b649a220a94f4.patch";
-      sha256 = "1b3473sawfdbkkxaqf1hg0vn37yk8hf655jhnjwdk296z4gclazh";
-    })
-    # https://bugzilla.libsdl.org/show_bug.cgi?id=1769
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/5d79977ec7a6b58afa6e4817035aaaba186f7e9f.patch";
-      sha256 = "1k7y57b1zy5afib1g7w3in36n8cswbcrzdbrjpn5cb105rnb9vmp";
-    })
-    # Workaround X11 bug to allow changing gamma
-    # Ticket: https://bugs.freedesktop.org/show_bug.cgi?id=27222
-    (fetchpatch {
-      name = "SDL_SetGamma.patch";
-      url = "https://src.fedoraproject.org/rpms/SDL/raw/7a07323e5cec08bea6f390526f86a1ce5341596d/f/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch";
-      sha256 = "0x52s4328kilyq43i7psqkqg7chsfwh0aawr50j566nzd7j51dlv";
-    })
-    # Fix a build failure on OS X Mavericks
-    # Ticket: https://bugzilla.libsdl.org/show_bug.cgi?id=2085
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/19039324be71738d8990e91b9ba341b2ea068445.patch";
-      sha256 = "0ckwling2ad27c9vxgp97ndjd098d6zbrydza8b9l77k8airj98c";
-    })
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/7933032ad4d57c24f2230db29f67eb7d21bb5654.patch";
-      sha256 = "1by16firaxyr0hjvn35whsgcmq6bl0nwhnpjf75grjzsw9qvwyia";
-    })
-    (fetchpatch {
-      name = "CVE-2022-34568.patch";
-      url = "https://github.com/libsdl-org/SDL-1.2/commit/d7e00208738a0bc6af302723fe64908ac35b777b.patch";
-      sha256 = "sha256-fuxXsqZW94/C8CKu9LakppCU4zHupj66O2MngQ4BO9o=";
-    })
-  ];
-
-  postInstall = ''
-    moveToOutput share/aclocal "$dev"
-  '';
-
-  # See the same place in the expression for SDL2
-  postFixup = ''
-    for lib in $out/lib/*.so* ; do
-      if [[ -L "$lib" ]]; then
-        patchelf --set-rpath "$(patchelf --print-rpath $lib):${rpath}" "$lib"
-      fi
-    done
-  '';
-
-  setupHook = ./setup-hook.sh;
-
-  passthru = { inherit openglSupport; };
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "Cross-platform multimedia library";
-    mainProgram = "sdl-config";
-    homepage    = "http://www.libsdl.org/";
-    maintainers = with maintainers; [ lovek323 ];
-    platforms   = platforms.unix;
-    license     = licenses.lgpl21;
-  };
-}
diff --git a/pkgs/development/libraries/SDL/find-headers.patch b/pkgs/development/libraries/SDL/find-headers.patch
deleted file mode 100644
index fd498117fd646..0000000000000
--- a/pkgs/development/libraries/SDL/find-headers.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/sdl-config.in b/sdl-config.in
-index e0fcc0c..bf7928a 100644
---- a/sdl-config.in
-+++ b/sdl-config.in
-@@ -42,14 +42,18 @@ while test $# -gt 0; do
-       echo @SDL_VERSION@
-       ;;
-     --cflags)
--      echo -I@includedir@/SDL @SDL_CFLAGS@
-+      SDL_CFLAGS=""
-+      for i in @includedir@/SDL $SDL_PATH; do
-+        SDL_CFLAGS="$SDL_CFLAGS -I$i"
-+      done
-+      echo $SDL_CFLAGS @SDL_CFLAGS@
-       ;;
- @ENABLE_SHARED_TRUE@    --libs)
--@ENABLE_SHARED_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
-+@ENABLE_SHARED_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@ $SDL_LIB_PATH
- @ENABLE_SHARED_TRUE@      ;;
- @ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@    --static-libs)
- @ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@    --libs|--static-libs)
--@ENABLE_STATIC_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@
-+@ENABLE_STATIC_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@ $SDL_LIB_PATH
- @ENABLE_STATIC_TRUE@      ;;
-     *)
-       echo "${usage}" 1>&2
diff --git a/pkgs/development/libraries/SDL/setup-hook.sh b/pkgs/development/libraries/SDL/setup-hook.sh
deleted file mode 100644
index 54a9b3e8bfab4..0000000000000
--- a/pkgs/development/libraries/SDL/setup-hook.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-addSDLPath () {
-  if [ -e "$1/include/SDL" ]; then
-    export SDL_PATH="${SDL_PATH-}${SDL_PATH:+ }$1/include/SDL"
-    # NB this doesn’t work with split dev packages because different packages
-    # will contain "include/SDL/" and "lib/" directories.
-    #
-    # However the SDL_LIB_PATH is consumed by SDL itself and serves to locate
-    # libraries like SDL_mixer, SDL_image, etc which are not split-package
-    # so the check above will only trigger on them.
-    if [ -e "$1/lib" ]; then
-      export SDL_LIB_PATH="${SDL_LIB_PATH-}${SDL_LIB_PATH:+ }-L$1/lib"
-    fi
-  fi
-}
-
-addEnvHooks "$hostOffset" addSDLPath
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index 91903c9f68516..9e319154717bf 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -1,56 +1,67 @@
-{ lib
-, stdenv
-, config
-, fetchFromGitHub
-, nix-update-script
-, pkg-config
-, libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
-, openglSupport ? libGLSupported
-, libGL
-, alsaSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, alsa-lib
-, x11Support ? !stdenv.hostPlatform.isWindows && !stdenv.hostPlatform.isAndroid
-, libX11
-, xorgproto
-, libICE
-, libXi
-, libXScrnSaver
-, libXcursor
-, libXinerama
-, libXext
-, libXxf86vm
-, libXrandr
-, waylandSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, wayland
-, wayland-protocols
-, wayland-scanner
-, drmSupport ? false
-, libdrm
-, mesa
-, libxkbcommon
-, dbusSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, dbus
-, udevSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, udev
-, ibusSupport ? false
-, ibus
-, libdecorSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, libdecor
-, pipewireSupport ? stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, pipewire # NOTE: must be built with SDL2 without pipewire support
-, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux && !stdenv.hostPlatform.isAndroid
-, libpulseaudio
-, AudioUnit
-, Cocoa
-, CoreAudio
-, CoreServices
-, ForceFeedback
-, OpenGL
-, audiofile
-, libiconv
-, withStatic ? stdenv.hostPlatform.isMinGW
+{
+  lib,
+  stdenv,
+  config,
+  fetchFromGitHub,
+  nix-update-script,
+  pkg-config,
+  libGLSupported ? lib.elem stdenv.hostPlatform.system mesa.meta.platforms,
+  openglSupport ? libGLSupported,
+  libGL,
+  alsaSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  alsa-lib,
+  x11Support ? !stdenv.hostPlatform.isWindows && !stdenv.hostPlatform.isAndroid,
+  libX11,
+  xorgproto,
+  libICE,
+  libXi,
+  libXScrnSaver,
+  libXcursor,
+  libXinerama,
+  libXext,
+  libXxf86vm,
+  libXrandr,
+  waylandSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  wayland,
+  wayland-protocols,
+  wayland-scanner,
+  drmSupport ? false,
+  libdrm,
+  mesa,
+  libxkbcommon,
+  dbusSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  dbus,
+  udevSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  udev,
+  ibusSupport ? false,
+  ibus,
+  libdecorSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  libdecor,
+  pipewireSupport ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  pipewire, # NOTE: must be built with SDL2 without pipewire support
+  pulseaudioSupport ?
+    config.pulseaudio or stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid,
+  libpulseaudio,
+  AudioUnit,
+  Cocoa,
+  CoreAudio,
+  CoreServices,
+  ForceFeedback,
+  OpenGL,
+  audiofile,
+  libiconv,
+  withStatic ? stdenv.hostPlatform.isMinGW,
   # passthru.tests
-, testers
+  testers,
+  guile-sdl2,
+  jazz2,
+  SDL2_ttf,
+  SDL2_net,
+  SDL2_gfx,
+  SDL2_sound,
+  SDL2_mixer,
+  SDL2_image,
+  python3Packages,
 }:
 
 # NOTE: When editing this expression see if the same change applies to
@@ -58,16 +69,19 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "SDL2";
-  version = "2.30.3";
+  version = "2.30.6";
 
   src = fetchFromGitHub {
     owner = "libsdl-org";
     repo = "SDL";
     rev = "release-${finalAttrs.version}";
-    hash = "sha256-ycY/AkWulV3vAu/+vKw+j/b6jTZWjqKjIgjRwqNHFl8=";
+    hash = "sha256-ij9/VhSacUaPbMGX1hx2nz0n8b1tDb1PnC7IO9TlNhE=";
   };
   dontDisableStatic = if withStatic then 1 else 0;
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
   outputBin = "dev"; # sdl-config
 
   patches = [
@@ -89,41 +103,74 @@ stdenv.mkDerivation (finalAttrs: {
 
   depsBuildBuild = [ pkg-config ];
 
-  nativeBuildInputs = [ pkg-config ] ++ lib.optionals waylandSupport [ wayland wayland-scanner ];
+  nativeBuildInputs =
+    [ pkg-config ]
+    ++ lib.optionals waylandSupport [
+      wayland
+      wayland-scanner
+    ];
 
-  dlopenPropagatedBuildInputs = [ ]
+  dlopenPropagatedBuildInputs =
+    [ ]
     # Propagated for #include <GLES/gl.h> in SDL_opengles.h.
-    ++ lib.optional (openglSupport && !stdenv.isDarwin) libGL
+    ++ lib.optional (openglSupport && !stdenv.hostPlatform.isDarwin) libGL
     # Propagated for #include <X11/Xlib.h> and <X11/Xatom.h> in SDL_syswm.h.
     ++ lib.optionals x11Support [ libX11 ];
 
-  propagatedBuildInputs = lib.optionals x11Support [ xorgproto ]
-    ++ finalAttrs.dlopenPropagatedBuildInputs;
+  propagatedBuildInputs =
+    lib.optionals x11Support [ xorgproto ] ++ finalAttrs.dlopenPropagatedBuildInputs;
 
-  dlopenBuildInputs = lib.optionals alsaSupport [ alsa-lib audiofile ]
+  dlopenBuildInputs =
+    lib.optionals alsaSupport [
+      alsa-lib
+      audiofile
+    ]
     ++ lib.optional dbusSupport dbus
     ++ lib.optional libdecorSupport libdecor
     ++ lib.optional pipewireSupport pipewire
     ++ lib.optional pulseaudioSupport libpulseaudio
     ++ lib.optional udevSupport udev
-    ++ lib.optionals waylandSupport [ wayland libxkbcommon ]
-    ++ lib.optionals x11Support [ libICE libXi libXScrnSaver libXcursor libXinerama libXext libXrandr libXxf86vm ]
-    ++ lib.optionals drmSupport [ libdrm mesa ];
+    ++ lib.optionals waylandSupport [
+      wayland
+      libxkbcommon
+    ]
+    ++ lib.optionals x11Support [
+      libICE
+      libXi
+      libXScrnSaver
+      libXcursor
+      libXinerama
+      libXext
+      libXrandr
+      libXxf86vm
+    ]
+    ++ lib.optionals drmSupport [
+      libdrm
+      mesa
+    ];
 
-  buildInputs = [ libiconv ]
+  buildInputs =
+    [ libiconv ]
     ++ finalAttrs.dlopenBuildInputs
     ++ lib.optional ibusSupport ibus
     ++ lib.optionals waylandSupport [ wayland-protocols ]
-    ++ lib.optionals stdenv.isDarwin [ AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
+      AudioUnit
+      Cocoa
+      CoreAudio
+      CoreServices
+      ForceFeedback
+      OpenGL
+    ];
 
   enableParallelBuilding = true;
 
-  configureFlags = [
-    "--disable-oss"
-  ] ++ lib.optional (!x11Support) "--without-x"
-  ++ lib.optional alsaSupport "--with-alsa-prefix=${alsa-lib.out}/lib"
-  ++ lib.optional stdenv.hostPlatform.isWindows "--disable-video-opengles"
-  ++ lib.optional stdenv.isDarwin "--disable-sdltest";
+  configureFlags =
+    [ "--disable-oss" ]
+    ++ lib.optional (!x11Support) "--without-x"
+    ++ lib.optional alsaSupport "--with-alsa-prefix=${alsa-lib.out}/lib"
+    ++ lib.optional stdenv.hostPlatform.isWindows "--disable-video-opengles"
+    ++ lib.optional stdenv.hostPlatform.isDarwin "--disable-sdltest";
 
   # We remove libtool .la files when static libs are requested,
   # because they make the builds of downstream libs like `SDL_tff`
@@ -158,7 +205,9 @@ stdenv.mkDerivation (finalAttrs: {
   # list the symbols used in this way.
   postFixup =
     let
-      rpath = lib.makeLibraryPath (finalAttrs.dlopenPropagatedBuildInputs ++ finalAttrs.dlopenBuildInputs);
+      rpath = lib.makeLibraryPath (
+        finalAttrs.dlopenPropagatedBuildInputs ++ finalAttrs.dlopenBuildInputs
+      );
     in
     lib.optionalString (stdenv.hostPlatform.extensions.sharedLibrary == ".so") ''
       for lib in $out/lib/*.so* ; do
@@ -172,9 +221,25 @@ stdenv.mkDerivation (finalAttrs: {
 
   passthru = {
     inherit openglSupport;
-    updateScript = nix-update-script { extraArgs = [ "--version-regex" "release-(.*)" ]; };
-    tests.pkg-config = testers.hasPkgConfigModules {
-      package = finalAttrs.finalPackage;
+    updateScript = nix-update-script {
+      extraArgs = [
+        "--version-regex"
+        "release-(.*)"
+      ];
+    };
+    tests = {
+      pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; };
+      inherit
+        guile-sdl2
+        jazz2
+        SDL2_ttf
+        SDL2_net
+        SDL2_gfx
+        SDL2_sound
+        SDL2_mixer
+        SDL2_image
+        ;
+      inherit (python3Packages) pygame pygame-ce pygame-sdl2;
     };
   };
 
@@ -185,7 +250,7 @@ stdenv.mkDerivation (finalAttrs: {
     changelog = "https://github.com/libsdl-org/SDL/releases/tag/release-${finalAttrs.version}";
     license = licenses.zlib;
     platforms = platforms.all;
-    maintainers = with maintainers; [ cpages ];
+    maintainers = lib.teams.sdl.members;
     pkgConfigModules = [ "sdl2" ];
   };
 })
diff --git a/pkgs/development/libraries/SDL2_image/default.nix b/pkgs/development/libraries/SDL2_image/default.nix
deleted file mode 100644
index 03b3f146ca939..0000000000000
--- a/pkgs/development/libraries/SDL2_image/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv, fetchurl
-, pkg-config
-, SDL2, libpng, libjpeg, libtiff, giflib, libwebp, libXpm, zlib, Foundation
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "SDL2_image";
-  version = "2.8.2";
-
-  src = fetchurl {
-    url = "https://www.libsdl.org/projects/SDL_image/release/SDL2_image-${finalAttrs.version}.tar.gz";
-    hash = "sha256-j0hrv7z4Rk3VjJ5dkzlKsCVc5otRxalmqRgkSCCnbdw=";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ SDL2 libpng libjpeg libtiff giflib libwebp libXpm zlib ]
-    ++ lib.optional stdenv.isDarwin Foundation;
-
-  configureFlags = [
-    # Disable dynamically loaded dependencies
-    "--disable-jpg-shared"
-    "--disable-png-shared"
-    "--disable-tif-shared"
-    "--disable-webp-shared"
-  ] ++ lib.optionals stdenv.isDarwin [
-    # Darwin headless will hang when trying to run the SDL test program
-    "--disable-sdltest"
-    # Don't use native macOS frameworks
-    "--disable-imageio"
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "SDL image library";
-    homepage = "http://www.libsdl.org/projects/SDL_image/";
-    platforms = platforms.unix;
-    license = licenses.zlib;
-    maintainers = with maintainers; [ cpages ];
-  };
-})
diff --git a/pkgs/development/libraries/SDL_compat/default.nix b/pkgs/development/libraries/SDL_compat/default.nix
deleted file mode 100644
index 3c3df10f91672..0000000000000
--- a/pkgs/development/libraries/SDL_compat/default.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-, SDL2
-, libiconv
-, Cocoa
-, autoSignDarwinBinariesHook
-, libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
-, openglSupport ? libGLSupported
-, libGL
-, libGLU
-}:
-
-let
-  inherit (lib) optionals makeLibraryPath;
-
-in
-stdenv.mkDerivation rec {
-  pname = "SDL_compat";
-  version = "1.2.68";
-
-  src = fetchFromGitHub {
-    owner = "libsdl-org";
-    repo = "sdl12-compat";
-    rev = "release-" + version;
-    hash = "sha256-f2dl3L7/qoYNl4sjik1npcW/W09zsEumiV9jHuKnUmM=";
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ]
-    ++ optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ];
-
-  propagatedBuildInputs = [ SDL2 ]
-    ++ optionals stdenv.hostPlatform.isDarwin [ libiconv Cocoa ]
-    ++ optionals openglSupport [ libGL libGLU ];
-
-  enableParallelBuilding = true;
-
-  setupHook = ../SDL/setup-hook.sh;
-
-  postFixup = ''
-    for lib in $out/lib/*${stdenv.hostPlatform.extensions.sharedLibrary}* ; do
-      if [[ -L "$lib" ]]; then
-        ${if stdenv.hostPlatform.isDarwin then ''
-          install_name_tool ${lib.strings.concatMapStrings (x: " -add_rpath ${makeLibraryPath [x]} ") propagatedBuildInputs} "$lib"
-        '' else ''
-          patchelf --set-rpath "$(patchelf --print-rpath $lib):${makeLibraryPath propagatedBuildInputs}" "$lib"
-        ''}
-      fi
-    done
-  '';
-
-  meta = with lib; {
-    description = "Cross-platform multimedia library - build SDL 1.2 applications against 2.0";
-    mainProgram = "sdl-config";
-    homepage = "https://www.libsdl.org/";
-    license = licenses.zlib;
-    maintainers = with maintainers; [ peterhoeg ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/aalib/default.nix b/pkgs/development/libraries/aalib/default.nix
index 903364ea27f61..3ba1620fe8f38 100644
--- a/pkgs/development/libraries/aalib/default.nix
+++ b/pkgs/development/libraries/aalib/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   setOutputFlags = false; # Doesn't support all the flags
 
   patches = [ ./clang.patch ] # Fix implicit `int` on `main` error with newer versions of clang
-    ++ lib.optionals stdenv.isDarwin [ ./darwin.patch ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ ./darwin.patch ];
 
   # The fuloong2f is not supported by aalib still
   preConfigure = ''
diff --git a/pkgs/development/libraries/abseil-cpp/202103.nix b/pkgs/development/libraries/abseil-cpp/202103.nix
index 04af3153719a3..0dfd60d17507a 100644
--- a/pkgs/development/libraries/abseil-cpp/202103.nix
+++ b/pkgs/development/libraries/abseil-cpp/202103.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       url = "https://github.com/abseil/abseil-cpp/commit/808bc202fc13e85a7948db0d7fb58f0f051200b1.patch";
       sha256 = "sha256-ayY/aV/xWOdEyFSDqV7B5WDGvZ0ASr/aeBeYwP5RZVc=";
     })
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # Don’t propagate the path to CoreFoundation. Otherwise, it’s impossible to build packages
     # that require a different SDK other than the default one.
     ./cmake-core-foundation.patch
diff --git a/pkgs/development/libraries/abseil-cpp/202301.nix b/pkgs/development/libraries/abseil-cpp/202301.nix
index 62d98d77a38f3..5024372802461 100644
--- a/pkgs/development/libraries/abseil-cpp/202301.nix
+++ b/pkgs/development/libraries/abseil-cpp/202301.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-7C/QIXYRyUyNVVE0tqmv8b5g/uWc58iBI5jzdtddQ+U=";
   };
 
-  patches = lib.optionals stdenv.isDarwin [
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
     # Don’t propagate the path to CoreFoundation. Otherwise, it’s impossible to build packages
     # that require a different SDK other than the default one.
     ./cmake-core-foundation.patch
diff --git a/pkgs/development/libraries/abseil-cpp/202401.nix b/pkgs/development/libraries/abseil-cpp/202401.nix
index 8352007b3413a..ad5417d6eb623 100644
--- a/pkgs/development/libraries/abseil-cpp/202401.nix
+++ b/pkgs/development/libraries/abseil-cpp/202401.nix
@@ -32,11 +32,11 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildInputs = [ gtest ];
 
-  meta = with lib; {
+  meta = {
     description = "Open-source collection of C++ code designed to augment the C++ standard library";
     homepage = "https://abseil.io/";
-    license = licenses.asl20;
-    platforms = platforms.all;
-    maintainers = [ maintainers.GaetanLepage ];
+    license = lib.licenses.asl20;
+    platforms = lib.platforms.all;
+    maintainers = [ lib.maintainers.GaetanLepage ];
   };
 })
diff --git a/pkgs/development/libraries/abseil-cpp/202111.nix b/pkgs/development/libraries/abseil-cpp/202407.nix
index 303f0c60d6390..49e18c271e64b 100644
--- a/pkgs/development/libraries/abseil-cpp/202111.nix
+++ b/pkgs/development/libraries/abseil-cpp/202407.nix
@@ -2,40 +2,41 @@
 , stdenv
 , fetchFromGitHub
 , cmake
+, gtest
 , static ? stdenv.hostPlatform.isStatic
 , cxxStandard ? null
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "abseil-cpp";
-  version = "20211102.0";
+  version = "20240722.0";
 
   src = fetchFromGitHub {
     owner = "abseil";
     repo = "abseil-cpp";
-    rev = version;
-    sha256 = "sha256-sSXT6D4JSrk3dA7kVaxfKkzOMBpqXQb0WbMYWG+nGwk=";
+    rev = "refs/tags/${finalAttrs.version}";
+    hash = "sha256-51jpDhdZ0n+KLmxh8KVaTz53pZAB0dHjmILFX+OLud4=";
   };
 
-  patches = lib.optionals stdenv.isDarwin [
-    # Don’t propagate the path to CoreFoundation. Otherwise, it’s impossible to build packages
-    # that require a different SDK other than the default one.
-    ./cmake-core-foundation.patch
-  ];
-
   cmakeFlags = [
+    "-DABSL_BUILD_TEST_HELPERS=ON"
+    "-DABSL_USE_EXTERNAL_GOOGLETEST=ON"
     "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
   ] ++ lib.optionals (cxxStandard != null) [
     "-DCMAKE_CXX_STANDARD=${cxxStandard}"
   ];
 
+  strictDeps = true;
+
   nativeBuildInputs = [ cmake ];
 
-  meta = with lib; {
+  buildInputs = [ gtest ];
+
+  meta = {
     description = "Open-source collection of C++ code designed to augment the C++ standard library";
     homepage = "https://abseil.io/";
-    license = licenses.asl20;
-    platforms = platforms.all;
-    maintainers = [ maintainers.andersk ];
+    license = lib.licenses.asl20;
+    platforms = lib.platforms.all;
+    maintainers = [ lib.maintainers.GaetanLepage ];
   };
-}
+})
diff --git a/pkgs/development/libraries/accounts-qml-module/default.nix b/pkgs/development/libraries/accounts-qml-module/default.nix
index aa68cb105af37..858f9c0d57b80 100644
--- a/pkgs/development/libraries/accounts-qml-module/default.nix
+++ b/pkgs/development/libraries/accounts-qml-module/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
     # Don't install test binary
     sed -i tests/tst_plugin.pro \
       -e '/TARGET = tst_plugin/a INSTALLS -= target'
-  '' + lib.optionalString (!finalAttrs.doCheck) ''
+  '' + lib.optionalString (!finalAttrs.finalPackage.doCheck) ''
     sed -i accounts-qml-module.pro -e '/tests/d'
   '';
 
diff --git a/pkgs/development/libraries/acl/default.nix b/pkgs/development/libraries/acl/default.nix
index 7d8a04a2f0a97..d4c1956914b9d 100644
--- a/pkgs/development/libraries/acl/default.nix
+++ b/pkgs/development/libraries/acl/default.nix
@@ -24,9 +24,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
+    inherit (attr.meta) platforms badPlatforms;
     homepage = "https://savannah.nongnu.org/projects/acl";
     description = "Library and tools for manipulating access control lists";
-    platforms = platforms.linux;
     license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/development/libraries/adns/default.nix b/pkgs/development/libraries/adns/default.nix
index 42edfc190c092..eeb6c07bf11d0 100644
--- a/pkgs/development/libraries/adns/default.nix
+++ b/pkgs/development/libraries/adns/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, lib, fetchurl, gnum4 }:
+{ stdenv, lib, fetchurl, gnum4, gitUpdater }:
 
 stdenv.mkDerivation rec {
   pname = "adns";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     urls = [
       "https://www.chiark.greenend.org.uk/~ian/adns/ftp/adns-${version}.tar.gz"
       "mirror://gnu/adns/adns-${version}.tar.gz"
     ];
-    sha256 = "1pi0xl07pav4zm2jrbrfpv43s1r1q1y12awgak8k7q41m5jp4hpv";
+    hash = "sha256-cTizeJt1Br1oP0UdT32FMHepGAO3s12G7GZ/D5zUAc0=";
   };
 
   nativeBuildInputs = [ gnum4 ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   configureFlags = lib.optional stdenv.hostPlatform.isStatic "--disable-dynamic";
 
   preConfigure =
-    lib.optionalString stdenv.isDarwin "sed -i -e 's|-Wl,-soname=$(SHLIBSONAME)||' configure";
+    lib.optionalString stdenv.hostPlatform.isDarwin "sed -i -e 's|-Wl,-soname=$(SHLIBSONAME)||' configure";
 
   # Autogenerated headers miss interdependencies in Makefile, fail parallel build:
   #  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=51329
@@ -27,12 +27,12 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   postInstall = let suffix = lib.versions.majorMinor version;
-  in lib.optionalString stdenv.isDarwin ''
+  in lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libadns.so.${suffix} $out/lib/libadns.so.${suffix}
   '';
 
   # darwin executables fail, but I don't want to fail the 100-500 packages depending on this lib
-  doInstallCheck = !stdenv.isDarwin;
+  doInstallCheck = !stdenv.hostPlatform.isDarwin;
   installCheckPhase = ''
     set -eo pipefail
 
@@ -41,6 +41,11 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru.updateScript = gitUpdater {
+    url = "https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/githttp/adns.git";
+    rev-prefix = "adns-";
+  };
+
   meta = with lib; {
     homepage = "http://www.chiark.greenend.org.uk/~ian/adns/";
     description = "Asynchronous DNS Resolver Library";
diff --git a/pkgs/development/libraries/aemu/LFS64.patch b/pkgs/development/libraries/aemu/LFS64.patch
new file mode 100644
index 0000000000000..e1d06d8073ef7
--- /dev/null
+++ b/pkgs/development/libraries/aemu/LFS64.patch
@@ -0,0 +1,98 @@
+From 455341880f52b4df3b30490db1c17eb65110c00c Mon Sep 17 00:00:00 2001
+From: Alyssa Ross <hi@alyssa.is>
+Date: Wed, 29 May 2024 10:29:02 +0200
+Subject: [PATCH] Stop using transitional LFS64 APIs
+
+The *64 APIs were intended for transitional use, and have been removed
+in musl 1.2.4.  Nowadays, the best practice is to set
+_FILE_OFFSET_BITS=64 across the board, making all the unsuffixed APIs
+will be 64-bit.  This fixes building with recent versions of musl, and
+avoids the need to remember to use the *64 variants every time to
+properly handle large files on 32-bit platforms.
+
+Test: build with musl 1.2.4.
+Change-Id: I7fa7a3ae4aa19a765740f5b2af916fd6f0ed0b32
+---
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4de86a4..10c402a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -69,7 +69,7 @@
+     add_subdirectory(build-config/${AEMU_COMMON_BUILD_CONFIG})
+ endif()
+ 
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-extern-c-compat -Wno-return-type-c-linkage")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-extern-c-compat -Wno-return-type-c-linkage -D_FILE_OFFSET_BITS=64")
+ 
+ add_subdirectory(base)
+ add_subdirectory(snapshot)
+diff --git a/snapshot/TextureLoader.cpp b/snapshot/TextureLoader.cpp
+index 31e02e8..5c21134 100644
+--- a/snapshot/TextureLoader.cpp
++++ b/snapshot/TextureLoader.cpp
+@@ -46,7 +46,7 @@
+ void TextureLoader::loadTexture(uint32_t texId, const loader_t& loader) {
+     android::base::AutoLock scopedLock(mLock);
+     assert(mIndex.count(texId));
+-    HANDLE_EINTR(fseeko64(mStream.get(), mIndex[texId], SEEK_SET));
++    HANDLE_EINTR(fseeko(mStream.get(), mIndex[texId], SEEK_SET));
+     switch (mVersion) {
+         case 1:
+             loader(&mStream);
+@@ -71,7 +71,7 @@
+         mDiskSize = size;
+     }
+     auto indexPos = mStream.getBe64();
+-    HANDLE_EINTR(fseeko64(mStream.get(), static_cast<int64_t>(indexPos), SEEK_SET));
++    HANDLE_EINTR(fseeko(mStream.get(), static_cast<int64_t>(indexPos), SEEK_SET));
+     mVersion = mStream.getBe32();
+     if (mVersion < 1 || mVersion > 2) {
+         return false;
+diff --git a/snapshot/TextureSaver.cpp b/snapshot/TextureSaver.cpp
+index 537626b..c8854e9 100644
+--- a/snapshot/TextureSaver.cpp
++++ b/snapshot/TextureSaver.cpp
+@@ -50,7 +50,7 @@
+                         [texId](FileIndex::Texture& tex) {
+                             return tex.texId == texId;
+                         }));
+-    mIndex.textures.push_back({texId, ftello64(mStream.get())});
++    mIndex.textures.push_back({texId, ftello(mStream.get())});
+ 
+     CompressingStream stream(mStream);
+     saver(&stream, &mBuffer);
+@@ -60,7 +60,7 @@
+     if (mFinished) {
+         return;
+     }
+-    mIndex.startPosInFile = ftello64(mStream.get());
++    mIndex.startPosInFile = ftello(mStream.get());
+     writeIndex();
+     mEndTime = base::getHighResTimeUs();
+ #if SNAPSHOT_PROFILE > 1
+@@ -74,7 +74,7 @@
+ 
+ void TextureSaver::writeIndex() {
+ #if SNAPSHOT_PROFILE > 1
+-    auto start = ftello64(mStream.get());
++    auto start = ftello(mStream.get());
+ #endif
+ 
+     mStream.putBe32(static_cast<uint32_t>(mIndex.version));
+@@ -83,13 +83,13 @@
+         mStream.putBe32(b.texId);
+         mStream.putBe64(static_cast<uint64_t>(b.filePos));
+     }
+-    auto end = ftello64(mStream.get());
++    auto end = ftello(mStream.get());
+     mDiskSize = uint64_t(end);
+ #if SNAPSHOT_PROFILE > 1
+     printf("texture: index size: %d\n", int(end - start));
+ #endif
+ 
+-    fseeko64(mStream.get(), 0, SEEK_SET);
++    fseeko(mStream.get(), 0, SEEK_SET);
+     mStream.putBe64(static_cast<uint64_t>(mIndex.startPosInFile));
+ }
+ 
diff --git a/pkgs/development/libraries/aemu/default.nix b/pkgs/development/libraries/aemu/default.nix
index e2ea8e5b1cd55..c39c68cbce1e4 100644
--- a/pkgs/development/libraries/aemu/default.nix
+++ b/pkgs/development/libraries/aemu/default.nix
@@ -10,8 +10,14 @@ stdenv.mkDerivation {
     hash = "sha256-H3IU9aTFSzUAqYgrtHd4F18hbhZsbOJGC4K5JwMQOOw=";
   };
 
+  patches = [
+    # stop using transitional LFS64 APIs, which are removed in musl 1.2.4
+    # https://android-review.googlesource.com/c/platform/hardware/google/aemu/+/3105640/1
+    ./LFS64.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.Cocoa
   ];
 
diff --git a/pkgs/development/libraries/afflib/default.nix b/pkgs/development/libraries/afflib/default.nix
index e82c3c8dfe77a..eff94a276cd84 100644
--- a/pkgs/development/libraries/afflib/default.nix
+++ b/pkgs/development/libraries/afflib/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ zlib curl expat openssl python3 ]
     ++ lib.optionals (with stdenv; isLinux || isDarwin) [ fuse ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
 
   meta = {
     homepage = "http://afflib.sourceforge.net/";
diff --git a/pkgs/development/libraries/agda/1lab/default.nix b/pkgs/development/libraries/agda/1lab/default.nix
index 3e8f3f0de318a..b9cea79b582a7 100644
--- a/pkgs/development/libraries/agda/1lab/default.nix
+++ b/pkgs/development/libraries/agda/1lab/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "1lab";
-  version = "unstable-2024-03-07";
+  version = "unstable-2024-08-05";
 
   src = fetchFromGitHub {
-    owner = "plt-amy";
+    owner = "the1lab";
     repo = pname;
-    rev = "d698f21793c4815082c94d174b9eafae912abb1a";
-    hash = "sha256-v8avF9zNNz32kLuAacPdEVeUI9rjn6JCiWPzkXfzBS0=";
+    rev = "7cc9bf7bbe90be5491e0d64da90a36afa29a540b";
+    hash = "sha256-hOyf6ZzejDAFDRj6liFZsBc9bKdxV5bzTPP4kGXIhW0=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/agda/agda-prelude/default.nix b/pkgs/development/libraries/agda/agda-prelude/default.nix
index fcc100e7a7bb4..661ffd71f839c 100644
--- a/pkgs/development/libraries/agda/agda-prelude/default.nix
+++ b/pkgs/development/libraries/agda/agda-prelude/default.nix
@@ -1,14 +1,14 @@
 { lib, mkDerivation, fetchFromGitHub }:
 
 mkDerivation rec {
-  version = "unstable-2023-10-04";
+  version = "unstable-2024-08-22";
   pname = "agda-prelude";
 
   src = fetchFromGitHub {
     owner = "UlfNorell";
     repo = "agda-prelude";
-    rev = "ff3b13253612caf0784a06e2d7d0f30be16c32e4";
-    hash = "sha256-A05uDv3fJqKncea9AL6eQa0XAskLZwAIUl1OAOVeP8I=";
+    rev = "4230566d3ae229b6a00258587651ac7bfd38d088";
+    hash = "sha256-ab+KojzRbkUTAFNH5OA78s0F5SUuXTbliai6badveg4=";
   };
 
   preConfigure = ''
diff --git a/pkgs/development/libraries/agda/generics/default.nix b/pkgs/development/libraries/agda/generics/default.nix
new file mode 100644
index 0000000000000..12815a3617bc6
--- /dev/null
+++ b/pkgs/development/libraries/agda/generics/default.nix
@@ -0,0 +1,28 @@
+{ lib, mkDerivation, fetchFromGitHub, standard-library }:
+
+mkDerivation rec {
+  pname = "generics";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "flupe";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-B1eT6F0Dp2zto50ulf+K/KYMlMp8Pgc/tO9qkcqn+O8=";
+  };
+
+  buildInputs = [
+    standard-library
+  ];
+
+  # everythingFile = "./README.agda";
+
+  meta = with lib; {
+    description =
+      "Library for datatype-generic programming in Agda";
+    homepage = src.meta.homepage;
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ turion ];
+  };
+}
diff --git a/pkgs/development/libraries/agda/standard-library/default.nix b/pkgs/development/libraries/agda/standard-library/default.nix
index 9779277b5e7cf..02f0eb327077e 100644
--- a/pkgs/development/libraries/agda/standard-library/default.nix
+++ b/pkgs/development/libraries/agda/standard-library/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "standard-library";
-  version = "2.0";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     repo = "agda-stdlib";
     owner = "agda";
     rev = "v${version}";
-    hash = "sha256-TjGvY3eqpF+DDwatT7A78flyPcTkcLHQ1xcg+MKgCoE=";
+    hash = "sha256-4HfwNAkIhk1yC/oSxZ30xilzUM5/22nzbUSqTjcW5Ng=";
   };
 
   nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
diff --git a/pkgs/development/libraries/agg/default.nix b/pkgs/development/libraries/agg/default.nix
index bfa7449b04c65..020c2dce95d89 100644
--- a/pkgs/development/libraries/agg/default.nix
+++ b/pkgs/development/libraries/agg/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     freetype
     SDL
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libX11
   ];
 
@@ -33,9 +33,9 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [
-    (lib.strings.enableFeature stdenv.isLinux "platform")
+    (lib.strings.enableFeature stdenv.hostPlatform.isLinux "platform")
     "--enable-examples=no"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "--x-includes=${lib.getDev libX11}/include"
     "--x-libraries=${lib.getLib libX11}/lib"
   ];
diff --git a/pkgs/development/libraries/allegro/5.nix b/pkgs/development/libraries/allegro/5.nix
index 94dd96dae0e72..ee337673ee070 100644
--- a/pkgs/development/libraries/allegro/5.nix
+++ b/pkgs/development/libraries/allegro/5.nix
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     physfs
     texinfo
     zlib
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
     libpthreadstubs
     libpulseaudio
diff --git a/pkgs/development/libraries/amdvlk/default.nix b/pkgs/development/libraries/amdvlk/default.nix
deleted file mode 100644
index 6e3677431e78f..0000000000000
--- a/pkgs/development/libraries/amdvlk/default.nix
+++ /dev/null
@@ -1,120 +0,0 @@
-{ stdenv
-, callPackage
-, lib
-, fetchRepoProject
-, writeScript
-, cmake
-, directx-shader-compiler
-, glslang
-, ninja
-, patchelf
-, perl
-, pkg-config
-, python3
-, expat
-, libdrm
-, ncurses
-, openssl
-, wayland
-, xorg
-, zlib
-}:
-let
-
-  suffix = if stdenv.system == "x86_64-linux" then "64" else "32";
-
-in stdenv.mkDerivation rec {
-  pname = "amdvlk";
-  version = "2024.Q2.3";
-
-  src = fetchRepoProject {
-    name = "${pname}-src";
-    manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
-    rev = "refs/tags/v-${version}";
-    sha256 = "kNGJWuWN2B4hEyRz2JFGSE8TiIdxujBOxF/T6nNek0A=";
-  };
-
-  buildInputs = [
-    expat
-    libdrm
-    ncurses
-    openssl
-    wayland
-    xorg.libX11
-    xorg.libxcb
-    xorg.xcbproto
-    xorg.libXext
-    xorg.libXrandr
-    xorg.libXft
-    xorg.libxshmfence
-    zlib
-  ];
-
-  nativeBuildInputs = [
-    cmake
-    directx-shader-compiler
-    glslang
-    ninja
-    patchelf
-    perl
-    pkg-config
-    python3
-  ] ++ (with python3.pkgs; [
-    jinja2
-    ruamel-yaml
-  ]);
-
-  rpath = lib.makeLibraryPath [
-    libdrm
-    openssl
-    stdenv.cc.cc.lib
-    xorg.libX11
-    xorg.libxcb
-    xorg.libxshmfence
-    zlib
-  ];
-
-  cmakeDir = "../drivers/xgl";
-
-  installPhase = ''
-    runHook preInstall
-
-    install -Dm755 -t $out/lib icd/amdvlk${suffix}.so
-    install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json
-    install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json
-
-    patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so
-
-    runHook postInstall
-  '';
-
-  # Keep the rpath, otherwise vulkaninfo and vkcube segfault
-  dontPatchELF = true;
-
-  passthru.updateScript = writeScript "update.sh" ''
-    #!/usr/bin/env nix-shell
-    #!nix-shell -i bash -p coreutils curl gnused jq common-updater-scripts
-
-    function setHash() {
-      sed -i "pkgs/development/libraries/amdvlk/default.nix" -e 's,sha256 = "[^'"'"'"]*",sha256 = "'"$1"'",'
-    }
-
-    version="$(curl -sL "https://api.github.com/repos/GPUOpen-Drivers/AMDVLK/releases?per_page=1" | jq '.[0].tag_name | split("-") | .[1]' --raw-output)"
-    sed -i "pkgs/development/libraries/amdvlk/default.nix" -e 's/version = "[^'"'"'"]*"/version = "'"$version"'"/'
-
-    setHash "$(nix-instantiate --eval -A lib.fakeSha256 | xargs echo)"
-    hash="$(nix to-base64 $(nix-build -A amdvlk 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true))"
-    setHash "$hash"
-  '';
-
-  passthru.impureTests = { amdvlk = callPackage ./test.nix {}; };
-
-  meta = with lib; {
-    description = "AMD Open Source Driver For Vulkan";
-    homepage = "https://github.com/GPUOpen-Drivers/AMDVLK";
-    changelog = "https://github.com/GPUOpen-Drivers/AMDVLK/releases/tag/v-${version}";
-    license = licenses.mit;
-    platforms = [ "x86_64-linux" "i686-linux" ];
-    maintainers = with maintainers; [ Flakebi ];
-  };
-}
diff --git a/pkgs/development/libraries/amdvlk/test.nix b/pkgs/development/libraries/amdvlk/test.nix
deleted file mode 100644
index e76e6dce9eaf1..0000000000000
--- a/pkgs/development/libraries/amdvlk/test.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ lib, makeImpureTest, coreutils, amdvlk, vulkan-tools }:
-makeImpureTest {
-  name = "amdvlk";
-  testedPackage = "amdvlk";
-
-  sandboxPaths = [ "/sys" "/dev/dri" ];
-
-  nativeBuildInputs = [ vulkan-tools ];
-
-  VK_ICD_FILENAMES = "${amdvlk}/share/vulkan/icd.d/amd_icd64.json";
-  XDG_RUNTIME_DIR = "/tmp";
-
-  # AMDVLK needs access to /dev/dri/card0 (or another card), but normally it is rw-rw----
-  # Change the permissions to be rw for everyone
-  prepareRunCommands = ''
-    function reset_perms()
-    {
-      # Reset permissions to previous state
-      for card in /dev/dri/card*; do
-        sudo ${coreutils}/bin/chmod "0''${cardPerms[$card]}" $card
-      done
-    }
-
-    # Save permissions on /dev/dri/card*
-    declare -A cardPerms
-    for card in /dev/dri/card*; do
-      cardPerms[$card]=$(stat -c "%a" $card)
-    done
-
-    sudo ${coreutils}/bin/chmod o+rw /dev/dri/card*
-    trap reset_perms EXIT
-  '';
-
-  testScript = ''
-    # Check that there is at least one card with write-access
-    if ! ls -l /dev/dri/card* | cut -b8-9 | grep -q rw; then
-      echo 'AMDVLK needs rw access to /dev/dri/card0 or a fitting card, please run `sudo chmod o+rw /dev/dri/card*`'
-      exit 1
-    fi
-
-    vulkaninfo --summary
-    echo "Checking version"
-    vulkaninfo --summary | grep '= ${amdvlk.version}'
-  '';
-
-  meta = with lib.maintainers; {
-    maintainers = [ Flakebi ];
-  };
-}
diff --git a/pkgs/development/libraries/amf-headers/default.nix b/pkgs/development/libraries/amf-headers/default.nix
index 07a76fcdfb127..04f2e6c1385b7 100644
--- a/pkgs/development/libraries/amf-headers/default.nix
+++ b/pkgs/development/libraries/amf-headers/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "amf-headers";
-  version = "1.4.33";
+  version = "1.4.34";
 
   src = fetchFromGitHub {
     owner = "GPUOpen-LibrariesAndSDKs";
     repo = "AMF";
     rev = "v${version}";
-    sha256 = "sha256-oho1EonWxgBmsQiX3wPhs0jQjLFwLe49C7/SOEptYiw=";
+    sha256 = "sha256-AASoThCzyFharXrprUalOMufz/DDtzlc97q/dQk7B6Y=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/aml/default.nix b/pkgs/development/libraries/aml/default.nix
index 1a6900d298c6e..19f3b28262238 100644
--- a/pkgs/development/libraries/aml/default.nix
+++ b/pkgs/development/libraries/aml/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
     license = licenses.isc;
     platforms = platforms.unix;
     maintainers = with maintainers; [ primeos ];
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/apache-activemq/default.nix b/pkgs/development/libraries/apache-activemq/default.nix
deleted file mode 100644
index 609d29ed69096..0000000000000
--- a/pkgs/development/libraries/apache-activemq/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "apache-activemq";
-  version = "5.18.3";
-
-  src = fetchurl {
-    sha256 = "sha256-lDOBqm00BwfebELq2/e0G3/fk99gQVbZctUMTaeDVE8=";
-    url = "mirror://apache/activemq/${version}/${pname}-${version}-bin.tar.gz";
-  };
-
-  installPhase = ''
-    mkdir -p $out
-    mv * $out/
-    for j in `find $out/lib -name "*.jar"`; do
-      cp="''${cp:+"$cp:"}$j";
-    done
-    echo "CLASSPATH=$cp" > $out/lib/classpath.env
-  '';
-
-  meta = {
-    homepage = "https://activemq.apache.org/";
-    description = "Messaging and Integration Patterns server written in Java";
-    sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
-    license = lib.licenses.asl20;
-    platforms = lib.platforms.unix;
-  };
-
-}
diff --git a/pkgs/development/libraries/appindicator-sharp/default.nix b/pkgs/development/libraries/appindicator-sharp/default.nix
index 9eff4e3895ba1..3062074f4cd79 100644
--- a/pkgs/development/libraries/appindicator-sharp/default.nix
+++ b/pkgs/development/libraries/appindicator-sharp/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   ];
 
   ac_cv_path_MDOC = "no";
-  installFlagsArray = ["GAPIXMLDIR=/tmp/gapixml"];
+  installFlags = ["GAPIXMLDIR=/tmp/gapixml"];
 
   meta = {
     description = "Bindings for appindicator using gobject-introspection";
diff --git a/pkgs/development/libraries/appstream/default.nix b/pkgs/development/libraries/appstream/default.nix
index b2b1e40576eae..6f2f3def2b49c 100644
--- a/pkgs/development/libraries/appstream/default.nix
+++ b/pkgs/development/libraries/appstream/default.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub
 , meson
 , mesonEmulatorHook
+, appstream
 , ninja
 , pkg-config
 , cmake
@@ -36,7 +37,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "appstream";
-  version = "1.0.2";
+  version = "1.0.3";
 
   outputs = [ "out" "dev" "installedTests" ];
 
@@ -44,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "ximion";
     repo = "appstream";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-0NzZku6TQyyaTOAMWZD459RayhsH8cotlOaSKkVY/EQ=";
+    sha256 = "sha256-pniZq+rR9wW86QqfRw4WZiBo1F16aSAb1J2RjI4aqE0=";
   };
 
   patches = [
@@ -80,6 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
     gperf
   ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
     mesonEmulatorHook
+    appstream
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/appstream/qt.nix b/pkgs/development/libraries/appstream/qt.nix
index 1916774b8cfc3..4699c7ce934ec 100644
--- a/pkgs/development/libraries/appstream/qt.nix
+++ b/pkgs/development/libraries/appstream/qt.nix
@@ -24,9 +24,13 @@ stdenv.mkDerivation {
 
   dontWrapQtApps = true;
 
+  # AppStreamQt tries to be relocatable, in hacky cmake ways that generally fail
+  # horribly on NixOS. Just hardcode the paths.
   postFixup = ''
     sed -i "$dev/lib/cmake/AppStreamQt${qtSuffix}/AppStreamQt${qtSuffix}Config.cmake" \
       -e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"
+    sed -i "$dev/lib/cmake/AppStreamQt${qtSuffix}/AppStreamQt${qtSuffix}Config.cmake" \
+      -e "/IMPORTED_LOCATION/ s@\''${PACKAGE_PREFIX_DIR}@$out@"
   '';
 
   passthru = appstream.passthru // {
diff --git a/pkgs/development/libraries/apr-util/default.nix b/pkgs/development/libraries/apr-util/default.nix
index 68205d83a42d1..ea7c9cf8c1680 100644
--- a/pkgs/development/libraries/apr-util/default.nix
+++ b/pkgs/development/libraries/apr-util/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, makeWrapper, apr, expat, gnused
 , sslSupport ? true, openssl
 , bdbSupport ? true, db
-, ldapSupport ? !stdenv.isCygwin, openldap
+, ldapSupport ? !stdenv.hostPlatform.isCygwin, openldap
 , libiconv, libxcrypt
 , cyrus_sasl, autoreconfHook
 }:
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     ./fix-libxcrypt-build.patch
     # Fix incorrect Berkeley DB detection with newer versions of clang due to implicit `int` on main errors.
     ./clang-bdb.patch
-  ] ++ lib.optional stdenv.isFreeBSD ./include-static-dependencies.patch;
+  ] ++ lib.optional stdenv.hostPlatform.isFreeBSD ./include-static-dependencies.patch;
 
   NIX_CFLAGS_LINK = [ "-lcrypt" ];
 
@@ -33,11 +33,11 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper autoreconfHook ];
 
   configureFlags = [ "--with-apr=${apr.dev}" "--with-expat=${expat.dev}" ]
-    ++ lib.optional (!stdenv.isCygwin) "--with-crypto"
+    ++ lib.optional (!stdenv.hostPlatform.isCygwin) "--with-crypto"
     ++ lib.optional sslSupport "--with-openssl=${openssl.dev}"
     ++ lib.optional bdbSupport "--with-berkeley-db=${db.dev}"
     ++ lib.optional ldapSupport "--with-ldap=ldap"
-    ++ lib.optionals stdenv.isCygwin
+    ++ lib.optionals stdenv.hostPlatform.isCygwin
       [ "--without-pgsql" "--without-sqlite2" "--without-sqlite3"
         "--without-freetds" "--without-berkeley-db" "--without-crypto" ]
     ;
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional sslSupport openssl
     ++ lib.optional bdbSupport db
     ++ lib.optional ldapSupport openldap
-    ++ lib.optional stdenv.isFreeBSD cyrus_sasl;
+    ++ lib.optional stdenv.hostPlatform.isFreeBSD cyrus_sasl;
 
   postInstall = ''
     for f in $out/lib/*.la $out/lib/apr-util-1/*.la $dev/bin/apu-1-config; do
@@ -83,7 +83,7 @@ stdenv.mkDerivation rec {
     homepage = "https://apr.apache.org/";
     description = "Companion library to APR, the Apache Portable Runtime";
     mainProgram = "apu-1-config";
-    maintainers = [ maintainers.eelco ];
+    maintainers = [ ];
     platforms = platforms.unix;
     license = licenses.asl20;
   };
diff --git a/pkgs/development/libraries/apr/default.nix b/pkgs/development/libraries/apr/default.nix
index 11bdd53945d06..7d127f9367c0f 100644
--- a/pkgs/development/libraries/apr/default.nix
+++ b/pkgs/development/libraries/apr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "apr";
-  version = "1.7.4";
+  version = "1.7.5";
 
   src = fetchurl {
     url = "mirror://apache/apr/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-/GSN6YPzoqbJ543qHxgGOb0vrWwG1VbUNnpwH+XDVXc=";
+    hash = "sha256-zQ9dUrmrFwTHIWDF7j7V09TKLfSn+KtWTjyzUrZyMvI=";
   };
 
   patches = [
@@ -69,6 +69,6 @@ stdenv.mkDerivation rec {
     mainProgram = "apr-1-config";
     platforms = platforms.all;
     license = licenses.asl20;
-    maintainers = [ maintainers.eelco ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/aqbanking/default.nix b/pkgs/development/libraries/aqbanking/default.nix
index 8d5b597d26610..2b9f1a5913feb 100644
--- a/pkgs/development/libraries/aqbanking/default.nix
+++ b/pkgs/development/libraries/aqbanking/default.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
     homepage = "https://www.aquamaniac.de/rdm/";
     hydraPlatforms = [];
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/aqbanking/gwenhywfar.nix b/pkgs/development/libraries/aqbanking/gwenhywfar.nix
index 4f2326b007a5d..ff0e55a446dbd 100644
--- a/pkgs/development/libraries/aqbanking/gwenhywfar.nix
+++ b/pkgs/development/libraries/aqbanking/gwenhywfar.nix
@@ -63,7 +63,7 @@ in stdenv.mkDerivation rec {
     description = "OS abstraction functions used by aqbanking and related tools";
     homepage = "https://www.aquamaniac.de/rdm/projects/gwenhywfar";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/aravis/default.nix b/pkgs/development/libraries/aravis/default.nix
index e279a6d6e3695..deeed9ebc9cda 100644
--- a/pkgs/development/libraries/aravis/default.nix
+++ b/pkgs/development/libraries/aravis/default.nix
@@ -29,13 +29,13 @@ assert enableViewer -> wrapGAppsHook3 != null;
 
 stdenv.mkDerivation rec {
   pname = "aravis";
-  version = "0.8.31";
+  version = "0.8.33";
 
   src = fetchFromGitHub {
     owner = "AravisProject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-CsXnwrZqBCS7JVAB/7JlAAvks5HnYxgrdc4Bmg68QdE=";
+    sha256 = "sha256-D6zcTCaFJxJ2VhhsgEFu5+3Xx1MJov4ryrtA0VkjZlY=";
   };
 
   outputs = [ "bin" "dev" "out" "lib" ];
diff --git a/pkgs/development/libraries/argparse/default.nix b/pkgs/development/libraries/argparse/default.nix
index 16a4f3b7a21e0..3b10b70e20403 100644
--- a/pkgs/development/libraries/argparse/default.nix
+++ b/pkgs/development/libraries/argparse/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "argparse";
-  version = "3.0";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner = "p-ranav";
     repo = "argparse";
     rev = "v${version}";
-    sha256 = "sha256-0fgMy7Q9BiQ/C1tmhuNpQgad8yzaLYxh5f6Ps38f2mk=";
+    sha256 = "sha256-JH9t/e/6RaSz+3LjmuNBYOy5gJT3zA+Vz4CxuwEXlvA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/aribb25/default.nix b/pkgs/development/libraries/aribb25/default.nix
index 743850c5fdc3b..4079f62782356 100644
--- a/pkgs/development/libraries/aribb25/default.nix
+++ b/pkgs/development/libraries/aribb25/default.nix
@@ -26,8 +26,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
-  ] ++ lib.optional stdenv.isDarwin xcbuild;
-  buildInputs = if stdenv.isDarwin then [ PCSC ] else [ pcsclite ];
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin xcbuild;
+  buildInputs = if stdenv.hostPlatform.isDarwin then [ PCSC ] else [ pcsclite ];
 
   patches = let
     url = commit: "https://code.videolan.org/videolan/${pname}/-/commit/${commit}.diff";
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildFlags =
-    lib.optional stdenv.isDarwin "pcsclite_CFLAGS=-I${PCSC}/Library/Frameworks/PCSC.framework/Headers";
+    lib.optional stdenv.hostPlatform.isDarwin "pcsclite_CFLAGS=-I${PCSC}/Library/Frameworks/PCSC.framework/Headers";
 
   meta = with lib; {
     description = "Sample implementation of the ARIB STD-B25 standard";
diff --git a/pkgs/development/libraries/arpa2common/default.nix b/pkgs/development/libraries/arpa2common/default.nix
index 0ada354ce1e6a..77f9694e69a96 100644
--- a/pkgs/development/libraries/arpa2common/default.nix
+++ b/pkgs/development/libraries/arpa2common/default.nix
@@ -1,29 +1,39 @@
-{ lib
-, stdenv
-, fetchFromGitLab
-, cmake
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  fetchpatch,
+  cmake,
 
-, arpa2cm
-, doxygen
-, e2fsprogs
-, graphviz
-, lmdb
-, openssl
-, pkg-config
-, ragel
+  arpa2cm,
+  doxygen,
+  e2fsprogs,
+  graphviz,
+  libsodium,
+  lmdb,
+  openssl,
+  pkg-config,
+  ragel,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "arpa2common";
-  version = "2.2.18";
+  version = "2.6.2";
 
   src = fetchFromGitLab {
     owner = "arpa2";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-UpAVyDXCe07ZwjD307t6G9f/Nny4QYXxGxft1KsiYYg=";
+    repo = "arpa2common";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-eWfWaO6URCK2FWQ+NYAoeCONkovgsVDPSRQVCGFnW3s=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://gitlab.com/arpa2/arpa2common/-/commit/13ea82df60b87a5367db00a8c6f3502e8ecb7298.patch";
+      hash = "sha256-V9Dhr6PeArqXnuXmFuDjcirlGl7xovq7VQZsrbbMFSk=";
+    })
+  ];
+
   nativeBuildInputs = [
     cmake
     arpa2cm
@@ -34,17 +44,15 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [
     e2fsprogs
+    libsodium
     lmdb
     openssl
     ragel
   ];
 
-  # the project uses single argument `printf` throughout the program
-  hardeningDisable = [ "format" ];
-
   meta = {
-    description =
-      "ARPA2 ID and ACL libraries and other core data structures for ARPA2";
+    changelog = "https://gitlab.com/arpa2/arpa2common/-/blob/v${finalAttrs.version}/CHANGES";
+    description = "ARPA2 ID and ACL libraries and other core data structures for ARPA2";
     longDescription = ''
       The ARPA2 Common Library package offers elementary services that can
       benefit many software packages.  They are designed to be easy to
@@ -53,8 +61,13 @@ stdenv.mkDerivation rec {
       liberate users.
     '';
     homepage = "https://gitlab.com/arpa2/arpa2common";
-    license = with lib.licenses; [ bsd2 cc-by-sa-40 cc0 isc ];
+    license = with lib.licenses; [
+      bsd2
+      cc-by-sa-40
+      cc0
+      isc
+    ];
     maintainers = with lib.maintainers; [ fufexan ];
     platforms = lib.platforms.linux;
   };
-}
+})
diff --git a/pkgs/development/libraries/arrayfire/default.nix b/pkgs/development/libraries/arrayfire/default.nix
index d52191c56533f..eb928f99e88a7 100644
--- a/pkgs/development/libraries/arrayfire/default.nix
+++ b/pkgs/development/libraries/arrayfire/default.nix
@@ -29,10 +29,10 @@
 , cpuSupport ? true
 , cudaSupport ? config.cudaSupport
   # OpenCL needs mesa which is broken on Darwin
-, openclSupport ? !stdenv.isDarwin
+, openclSupport ? !stdenv.hostPlatform.isDarwin
   # This argument lets one run CUDA & OpenCL tests on non-NixOS systems by
   # telling Nix where to find the drivers. If you know the version of the
-  # NVidia driver that is installed on your system, you can do:
+  # Nvidia driver that is installed on your system, you can do:
   #
   # arrayfire.override {
   #   nvidiaComputeDrivers =
@@ -49,6 +49,7 @@
   #       { libsOnly = true; };
   # }
 , nvidiaComputeDrivers ? null
+, fetchpatch
 }:
 
 # ArrayFire compiles with 64-bit BLAS, but some tests segfault or throw
@@ -130,7 +131,15 @@ stdenv.mkDerivation rec {
 
   # ArrayFire have a repo with assets for the examples. Since we don't build
   # the examples anyway, remove the dependency on assets.
-  patches = [ ./no-assets.patch ./no-download.patch ];
+  patches = [
+    ./no-assets.patch
+    ./no-download.patch
+    # Fix for newer opencl-clhpp. Remove with the next release.
+    (fetchpatch {
+      url = "https://github.com/arrayfire/arrayfire/pull/3562.patch";
+      hash = "sha256-AdWlpcRTn9waNAaVpZfK6sJ/xBQLiBC4nBeEYiGNN50";
+    })
+  ];
 
   postPatch = ''
     mkdir -p ./extern/af_glad-src
diff --git a/pkgs/development/libraries/arrow-glib/default.nix b/pkgs/development/libraries/arrow-glib/default.nix
deleted file mode 100644
index cce59dc026e94..0000000000000
--- a/pkgs/development/libraries/arrow-glib/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv
-, arrow-cpp
-, glib
-, gobject-introspection
-, lib
-, meson
-, ninja
-, pkg-config
-}:
-
-stdenv.mkDerivation rec {
-  pname = "arrow-glib";
-  inherit (arrow-cpp) src version;
-  sourceRoot = "apache-arrow-${version}/c_glib";
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkg-config
-    gobject-introspection
-  ];
-
-  buildInputs = [
-    arrow-cpp
-    glib
-  ];
-
-  meta = with lib; {
-    inherit (arrow-cpp.meta) license platforms;
-    description = "GLib bindings for Apache Arrow";
-    homepage = "https://arrow.apache.org/docs/c_glib/";
-    maintainers = with maintainers; [ amarshall ];
-  };
-}
diff --git a/pkgs/development/libraries/asio/generic.nix b/pkgs/development/libraries/asio/generic.nix
index cb9f1eb30246e..44dd9e056874d 100644
--- a/pkgs/development/libraries/asio/generic.nix
+++ b/pkgs/development/libraries/asio/generic.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
     homepage = "http://asio.sourceforge.net/";
     description = "Cross-platform C++ library for network and low-level I/O programming";
     license = licenses.boost;
-    broken = stdenv.isDarwin && lib.versionOlder version "1.16.1";
+    broken = stdenv.hostPlatform.isDarwin && lib.versionOlder version "1.16.1";
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/assimp/default.nix b/pkgs/development/libraries/assimp/default.nix
index 87df1e7f6aec1..45eef22e69fbb 100644
--- a/pkgs/development/libraries/assimp/default.nix
+++ b/pkgs/development/libraries/assimp/default.nix
@@ -8,14 +8,14 @@
 
 stdenv.mkDerivation rec {
   pname = "assimp";
-  version = "5.4.1";
+  version = "5.4.3";
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchFromGitHub {
     owner = "assimp";
     repo = "assimp";
     rev = "v${version}";
-    hash = "sha256-F3aaEaHZyOLES6zOYqHRG0BtaKk9d/bAHCtal6FsIWc=";
+    hash = "sha256-sOYhYHBz3Tg+pi1OIJ1mGmsjEc6dPO6nFH0aolfpLRA=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/attr/default.nix b/pkgs/development/libraries/attr/default.nix
index 4815497da14f5..eb8f0d1c3b976 100644
--- a/pkgs/development/libraries/attr/default.nix
+++ b/pkgs/development/libraries/attr/default.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
     homepage = "https://savannah.nongnu.org/projects/attr/";
     description = "Library and tools for manipulating extended attributes";
     platforms = platforms.linux;
+    badPlatforms = platforms.microblaze;
     license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/development/libraries/aubio/default.nix b/pkgs/development/libraries/aubio/default.nix
index 6702eb91c9b17..6aba488f2457c 100644
--- a/pkgs/development/libraries/aubio/default.nix
+++ b/pkgs/development/libraries/aubio/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, alsa-lib, fftw, libjack2, libsamplerate
-, libsndfile, pkg-config, python3, wafHook
+, libsndfile, pkg-config, python311, wafHook
 }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1npks71ljc48w6858l9bq30kaf5nph8z0v61jkfb70xb9np850nl";
   };
 
-  nativeBuildInputs = [ pkg-config python3 wafHook ];
+  nativeBuildInputs = [ pkg-config python311 wafHook ];
   buildInputs = [ alsa-lib fftw libjack2 libsamplerate libsndfile ];
 
   strictDeps = true;
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     description = "Library for audio labelling";
     homepage = "https://aubio.org/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ goibhniu marcweber fpletz ];
+    maintainers = with maintainers; [ marcweber fpletz ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/audio/cubeb/default.nix b/pkgs/development/libraries/audio/cubeb/default.nix
index dd7033b1910ec..478e8478382a1 100644
--- a/pkgs/development/libraries/audio/cubeb/default.nix
+++ b/pkgs/development/libraries/audio/cubeb/default.nix
@@ -9,10 +9,10 @@
 , AudioUnit
 , CoreAudio
 , CoreServices
-, lazyLoad ? !stdenv.isDarwin
+, lazyLoad ? !stdenv.hostPlatform.isDarwin
 }:
 
-assert lib.assertMsg (stdenv.isDarwin -> !lazyLoad) "cubeb: lazyLoad is inert on Darwin";
+assert lib.assertMsg (stdenv.hostPlatform.isDarwin -> !lazyLoad) "cubeb: lazyLoad is inert on Darwin";
 
 let
   backendLibs = [
@@ -39,7 +39,7 @@ in stdenv.mkDerivation {
   ];
 
   buildInputs = [ speexdsp ] ++ (
-    if stdenv.isDarwin then [ AudioUnit CoreAudio CoreServices ]
+    if stdenv.hostPlatform.isDarwin then [ AudioUnit CoreAudio CoreServices ]
     else backendLibs
   );
 
diff --git a/pkgs/development/libraries/audio/game-music-emu/default.nix b/pkgs/development/libraries/audio/game-music-emu/default.nix
index 94b8d1cbc3750..050f475454386 100644
--- a/pkgs/development/libraries/audio/game-music-emu/default.nix
+++ b/pkgs/development/libraries/audio/game-music-emu/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   # it doesn't.
   disallowedReferences = [ stdenv.cc.cc ];
 
-  postFixup = lib.optionalString stdenv.isLinux ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
     remove-references-to -t ${stdenv.cc.cc} "$(readlink -f $out/lib/libgme.so)"
   '';
 
diff --git a/pkgs/development/libraries/audio/libbass/default.nix b/pkgs/development/libraries/audio/libbass/default.nix
index a8648a1a1c7bb..2f44827af95fa 100644
--- a/pkgs/development/libraries/audio/libbass/default.nix
+++ b/pkgs/development/libraries/audio/libbass/default.nix
@@ -2,31 +2,50 @@
 
 # Upstream changes files in-place, to update:
 # 1. Check latest version at http://www.un4seen.com/
-# 2. Update `version`s and `sha256` sums.
+# 2. Update `version`s and `hash` sums.
 # See also http://www.un4seen.com/forum/?topic=18614.0
 
+# Internet Archive used due to upstream URLs being unstable
+
 let
   allBass = {
     bass = {
       h = "bass.h";
-      version = "2.4.15";
+      version = "2.4.17";
       so = {
-        i686_linux = "libbass.so";
-        x86_64-linux = "x64/libbass.so";
+        i686_linux = "libs/x86/libbass.so";
+        x86_64-linux = "libs/x86_64/libbass.so";
+        armv7l-linux = "libs/armhf/libbass.so";
+        aarch64-linux = "libs/aarch64/libbass.so";
       };
-      urlpath = "bass24-linux.zip";
-      sha256 = "1lmysxfhy727zskavml3ibg5w876ir88923bm17c21s59w5lh7l8";
+      url = "https://web.archive.org/web/20240501180538/http://www.un4seen.com/files/bass24-linux.zip";
+      hash = "sha256-/JAlvtZtnzuzZjWy3n1WT8Q5ZVLO0BJJAJT7/dELS3o=";
     };
 
     bass_fx = {
       h = "C/bass_fx.h";
       version = "2.4.12.1";
       so = {
-        i686_linux = "libbass_fx.so";
-        x86_64-linux = "x64/libbass_fx.so";
+        i686_linux = "libs/x86/libbass_fx.so";
+        x86_64-linux = "libs/x86_64/libbass_fx.so";
+        armv7l-linux = "libs/armhf/libbass_fx.so";
+        aarch64-linux = "libs/aarch64/libbass_fx.so";
+      };
+      url = "https://web.archive.org/web/20240926184106/https://www.un4seen.com/files/z/0/bass_fx24-linux.zip";
+      hash = "sha256-Hul2ELwnaDV8TDRMDXoFisle31GATDkf3PdkR2K9QTs=";
+    };
+
+    bassmix = {
+      h = "bassmix.h";
+      version = "2.4.12";
+      so = {
+        i686_linux = "libs/x86/libbassmix.so";
+        x86_64-linux = "libs/x86_64/libbassmix.so";
+        armv7l-linux = "libs/armhf/libbassmix.so";
+        aarch64-linux = "libs/aarch64/libbassmix.so";
       };
-      urlpath = "z/0/bass_fx24-linux.zip";
-      sha256 = "1q0g74z7iyhxqps5b3gnnbic8v2jji1r0mkvais57lsx8y21sbin";
+      url = "https://web.archive.org/web/20240930183631/https://www.un4seen.com/files/bassmix24-linux.zip";
+      hash = "sha256-oxxBhsjeLvUodg2SOMDH4wUy5na3nxLTqYkB+iXbOgA=";
     };
   };
 
@@ -35,9 +54,9 @@ let
     inherit (bass) version;
 
     src = fetchurl {
-      url = "https://www.un4seen.com/files/${bass.urlpath}";
-      inherit (bass) sha256;
+      inherit (bass) hash url;
     };
+
     unpackCmd = ''
       mkdir out
       ${unzip}/bin/unzip $curSrc -d out
@@ -60,8 +79,7 @@ let
       homepage = "https://www.un4seen.com/";
       license = licenses.unfreeRedistributable;
       platforms = builtins.attrNames bass.so;
-      # until upstream has stable URLs, this package is prone to always being broken
-      broken = true;
+      maintainers = with maintainers; [ jacekpoz ];
     };
   };
 
diff --git a/pkgs/development/libraries/audio/libkeyfinder/default.nix b/pkgs/development/libraries/audio/libkeyfinder/default.nix
index 0742297cb69fd..d6f16f65df5d8 100644
--- a/pkgs/development/libraries/audio/libkeyfinder/default.nix
+++ b/pkgs/development/libraries/audio/libkeyfinder/default.nix
@@ -1,30 +1,21 @@
-{ lib, stdenv, fetchpatch, fetchFromGitHub, cmake, fftw, catch2 }:
+{ lib, stdenv, fetchpatch, fetchFromGitHub, cmake, fftw, catch2_3 }:
 
 stdenv.mkDerivation rec {
   pname = "libkeyfinder";
-  version = "2.2.6";
+  version = "2.2.8";
 
   src = fetchFromGitHub {
     owner = "mixxxdj";
     repo = "libkeyfinder";
-    rev = "v${version}";
-    sha256 = "sha256-7w/Wc9ncLinbnM2q3yv5DBtFoJFAM2e9xAUTsqvE9mg=";
+    rev = version;
+    hash = "sha256-Et8u5j/ke9u2bwHFriPCCBiXkPel37gwx+kwuViAr4o=";
   };
 
-  # in main post 2.2.6, see https://github.com/mixxxdj/libkeyfinder/issues/21
-  patches = [
-    (fetchpatch {
-      name = "fix-pkg-config";
-      url = "https://github.com/mixxxdj/libkeyfinder/commit/4e1a5022d4c91e3ecfe9be5c3ac7cc488093bd2e.patch";
-      sha256 = "08llmgp6r11bq5s820j3fs9bgriaibkhq8r3v2av064w66mwp48x";
-    })
-  ];
-
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ fftw ];
 
-  nativeCheckInputs = [ catch2 ];
+  nativeCheckInputs = [ catch2_3 ];
 
   doCheck = true;
 
diff --git a/pkgs/development/libraries/audio/libmysofa/default.nix b/pkgs/development/libraries/audio/libmysofa/default.nix
index 3b5224c97f936..5125d4c76ebac 100644
--- a/pkgs/development/libraries/audio/libmysofa/default.nix
+++ b/pkgs/development/libraries/audio/libmysofa/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/hoene/libmysofa";
     license = licenses.bsd3;
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/audio/libopenmpt/default.nix b/pkgs/development/libraries/audio/libopenmpt/default.nix
index 0f4c3509244d8..500533ce8203b 100644
--- a/pkgs/development/libraries/audio/libopenmpt/default.nix
+++ b/pkgs/development/libraries/audio/libopenmpt/default.nix
@@ -10,19 +10,19 @@
 , portaudio
 , libsndfile
 , flac
-, usePulseAudio ? config.pulseaudio or stdenv.isLinux
+, usePulseAudio ? config.pulseaudio or stdenv.hostPlatform.isLinux
 , libpulseaudio
 }:
 
 stdenv.mkDerivation rec {
   pname = "libopenmpt";
-  version = "0.7.7";
+  version = "0.7.9";
 
   outputs = [ "out" "dev" "bin" ];
 
   src = fetchurl {
     url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
-    hash = "sha256-WMaiiXISaCim9ljghK7nqo+L/bdaC9DjRcf/Km2e8Iw=";
+    hash = "sha256-A4bpGNddeX551bFO3QhHFl2LNZ6YEe9XZSwKNWot/PQ=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/audio/libsmf/default.nix b/pkgs/development/libraries/audio/libsmf/default.nix
index 064a167bfb773..c8d33508672e9 100644
--- a/pkgs/development/libraries/audio/libsmf/default.nix
+++ b/pkgs/development/libraries/audio/libsmf/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     description = "C library for reading and writing Standard MIDI Files";
     homepage = "https://github.com/stump/libsmf";
     license = licenses.bsd2;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     mainProgram = "smfsh";
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/audio/lilv/default.nix b/pkgs/development/libraries/audio/lilv/default.nix
index 4e83452874624..fdd50d8af9370 100644
--- a/pkgs/development/libraries/audio/lilv/default.nix
+++ b/pkgs/development/libraries/audio/lilv/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     homepage = "http://drobilla.net/software/lilv";
     description = "C library to make the use of LV2 plugins";
     license = licenses.mit;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/lv2/default.nix b/pkgs/development/libraries/audio/lv2/default.nix
index d9952877d80de..c9ddffbff227b 100644
--- a/pkgs/development/libraries/audio/lv2/default.nix
+++ b/pkgs/development/libraries/audio/lv2/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     "-Dtests=disabled"
     # Avoid heavyweight python dependencies.
     "-Ddocs=disabled"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-Dlv2dir=${placeholder "out"}/lib/lv2"
   ];
 
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
     description = "Plugin standard for audio systems";
     mainProgram = "lv2_validate";
     license = licenses.mit;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/lvtk/default.nix b/pkgs/development/libraries/audio/lvtk/default.nix
index b340dafbc3158..54c76e5bc60cc 100644
--- a/pkgs/development/libraries/audio/lvtk/default.nix
+++ b/pkgs/development/libraries/audio/lvtk/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     mainProgram = "ttl2c";
     homepage = "https://lvtk.org/";
     license = licenses.gpl3;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/mbelib/default.nix b/pkgs/development/libraries/audio/mbelib/default.nix
index d67e18476a91b..d2c9d28f208cc 100644
--- a/pkgs/development/libraries/audio/mbelib/default.nix
+++ b/pkgs/development/libraries/audio/mbelib/default.nix
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/szechyjs/mbelib";
     license = licenses.isc;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/audio/ntk/default.nix b/pkgs/development/libraries/audio/ntk/default.nix
index d101e2a960c62..4ad3ba33cb5c9 100644
--- a/pkgs/development/libraries/audio/ntk/default.nix
+++ b/pkgs/development/libraries/audio/ntk/default.nix
@@ -15,6 +15,13 @@ stdenv.mkDerivation rec {
     cairo libjpeg libXft python3
   ];
 
+  # NOTE: ntk provides its own waf script that is incompatible with new
+  # python versions. If the script is not present, wafHook will install
+  # a compatible version from nixpkgs.
+  prePatch = ''
+    rm waf
+  '';
+
   meta = {
     description = "Fork of FLTK 1.3.0 with additional functionality";
     version = version;
diff --git a/pkgs/development/libraries/audio/qm-dsp/default.nix b/pkgs/development/libraries/audio/qm-dsp/default.nix
index 92024cd81fb8f..2201f02c62e87 100644
--- a/pkgs/development/libraries/audio/qm-dsp/default.nix
+++ b/pkgs/development/libraries/audio/qm-dsp/default.nix
@@ -46,13 +46,13 @@ stdenv.mkDerivation rec {
     rmdir $out/include/qm-dsp
   '';
 
-  env.NIX_CFLAGS_COMPILE = "-I${kissfft}/include/kissfft";
+  env.NIX_CFLAGS_COMPILE = "-I${lib.getInclude kissfft}/include/kissfft";
 
   meta = with lib; {
     description = "C++ library of functions for DSP and Music Informatics purposes";
     homepage = "https://code.soundsoftware.ac.uk/projects/qm-dsp";
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/raul/default.nix b/pkgs/development/libraries/audio/raul/default.nix
index cd8c3d3a70f3c..19853fd885f99 100644
--- a/pkgs/development/libraries/audio/raul/default.nix
+++ b/pkgs/development/libraries/audio/raul/default.nix
@@ -1,27 +1,34 @@
-{ lib, stdenv, fetchgit, boost, gtk2, pkg-config, python3, wafHook }:
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  meson,
+  ninja,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "raul";
-  version = "unstable-2019-12-09";
-  name = "${pname}-${version}";
+  version = "2.0.0-unstable-2024-07-04";
 
-  src = fetchgit {
-    url = "https://gitlab.com/drobilla/raul.git";
-    fetchSubmodules = true;
-    rev = "e87bb398f025912fb989a09f1450b838b251aea1";
-    sha256 = "1z37jb6ghc13b8nv8a8hcg669gl8vh4ni9djvfgga9vcz8rmcg8l";
+  src = fetchFromGitLab {
+    owner = "drobilla";
+    repo = "raul";
+    rev = "9097952a918f8330a5db9039ad390fc2457f841d";
+    hash = "sha256-k+EU3ROVJyjJPAtNxPmRXp9DALpUHzohCLL6Xe3NUxk=";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 ];
-  buildInputs = [ boost gtk2 ];
+  nativeBuildInputs = [
+    meson
+    ninja
+  ];
 
   strictDeps = true;
 
-  meta = with lib; {
+  meta = {
     description = "C++ utility library primarily aimed at audio/musical applications";
     homepage = "http://drobilla.net/software/raul";
-    license = licenses.gpl3;
-    maintainers = [ maintainers.goibhniu ];
-    platforms = platforms.unix;
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ t4ccer ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/roc-toolkit/default.nix b/pkgs/development/libraries/audio/roc-toolkit/default.nix
index 4654e29a835fd..6c579774e4bfc 100644
--- a/pkgs/development/libraries/audio/roc-toolkit/default.nix
+++ b/pkgs/development/libraries/audio/roc-toolkit/default.nix
@@ -9,7 +9,7 @@
   openfecSupport ? true,
   openfec,
   speexdsp,
-  libunwindSupport ? true,
+  libunwindSupport ? lib.meta.availableOn stdenv.hostPlatform libunwind,
   libunwind,
   pulseaudioSupport ? true,
   libpulseaudio,
@@ -51,10 +51,10 @@ stdenv.mkDerivation rec {
     ++ lib.optional soxSupport sox
     ++ lib.optional libsndfileSupport libsndfile;
 
-  sconsFlags =
+  sconsFlags = lib.optionals (!stdenv.hostPlatform.isDarwin)
     [ "--build=${stdenv.buildPlatform.config}"
-      "--host=${stdenv.hostPlatform.config}"
-      "--prefix=${placeholder "out"}" ] ++
+      "--host=${stdenv.hostPlatform.config}" ] ++
+    [ "--prefix=${placeholder "out"}" ] ++
     lib.optional (!opensslSupport) "--disable-openssl" ++
     lib.optional (!soxSupport) "--disable-sox" ++
     lib.optional (!libunwindSupport) "--disable-libunwind" ++
diff --git a/pkgs/development/libraries/audio/sratom/default.nix b/pkgs/development/libraries/audio/sratom/default.nix
index bd12fc9b4a324..8f793b359886f 100644
--- a/pkgs/development/libraries/audio/sratom/default.nix
+++ b/pkgs/development/libraries/audio/sratom/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     homepage = "https://drobilla.net/software/sratom";
     description = "Library for serialising LV2 atoms to/from RDF";
     license = licenses.mit;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/suil/default.nix b/pkgs/development/libraries/audio/suil/default.nix
index 6214b65189d37..099c3ca427930 100644
--- a/pkgs/development/libraries/audio/suil/default.nix
+++ b/pkgs/development/libraries/audio/suil/default.nix
@@ -1,20 +1,68 @@
-{ stdenv, lib, fetchurl, gtk2, lv2, pkg-config, python3, serd, sord, sratom
-, wafHook
-, withQt5 ? true, qt5 ? null
+{
+  stdenv,
+  lib,
+  fetchFromGitLab,
+
+  # build time
+  pkg-config,
+  meson,
+  ninja,
+
+  # runtime
+  lv2,
+
+  # options
+  withGtk2 ? false,
+  gtk2,
+  withGtk3 ? true,
+  gtk3,
+  withQt5 ? true,
+  qt5,
+  withX11 ? !stdenv.hostPlatform.isDarwin,
 }:
 
+let
+  inherit (lib) mesonEnable;
+in
+
 stdenv.mkDerivation rec {
   pname = "suil";
-  version = "0.10.6";
+  version = "0.10.20";
 
-  src = fetchurl {
-    url = "https://download.drobilla.net/${pname}-${version}.tar.bz2";
-    sha256 = "0z4v01pjw4wh65x38w6icn28wdwxz13ayl8hvn4p1g9kmamp1z06";
+  src = fetchFromGitLab {
+    owner = "lv2";
+    repo = "suil";
+    rev = "v${version}";
+    hash = "sha256-rP8tq+zmHrAZeuNttakPPfraFXNvnwqbhtt+LtTNV/k=";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 ];
-  buildInputs = [ gtk2 lv2 serd sord sratom ]
-    ++ lib.optionals withQt5 (with qt5; [ qtbase qttools ]);
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  mesonFlags = [
+    # docs require sphinxygen
+    (mesonEnable "docs" false)
+    (mesonEnable "gtk2" withGtk2)
+    (mesonEnable "gtk3" withGtk3)
+    (mesonEnable "qt5" withQt5)
+    (mesonEnable "x11" withX11)
+  ];
+
+  buildInputs =
+    [ lv2 ]
+    ++ lib.optionals withGtk2 [ gtk2 ]
+    ++ lib.optionals withGtk3 [ gtk3 ]
+    ++ lib.optionals withQt5 (
+      with qt5;
+      [
+        qtbase
+        qttools
+      ]
+      ++ lib.optionals withX11 [ qtx11extras ]
+    );
 
   dontWrapQtApps = true;
 
@@ -24,7 +72,7 @@ stdenv.mkDerivation rec {
     homepage = "http://drobilla.net/software/suil";
     description = "Lightweight C library for loading and wrapping LV2 plugin UIs";
     license = licenses.mit;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix b/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix
index 198d94dbee7eb..a483f7023d045 100644
--- a/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix
+++ b/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix
@@ -17,7 +17,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libsndfile ];
 
-  enableParallelBuilding = true;
+  # build is susceptible to race conditions: https://github.com/vamp-plugins/vamp-plugin-sdk/issues/12
+  enableParallelBuilding = false;
   makeFlags = [
     "AR:=$(AR)"
     "RANLIB:=$(RANLIB)"
@@ -27,7 +28,7 @@ stdenv.mkDerivation rec {
     description = "Audio processing plugin system for plugins that extract descriptive information from audio data";
     homepage = "https://vamp-plugins.org/";
     license = licenses.bsd3;
-    maintainers = [ maintainers.goibhniu maintainers.marcweber ];
+    maintainers = [ maintainers.marcweber ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audiofile/default.nix b/pkgs/development/libraries/audiofile/default.nix
index f9974e2ca2538..3a65f2535b7c5 100644
--- a/pkgs/development/libraries/audiofile/default.nix
+++ b/pkgs/development/libraries/audiofile/default.nix
@@ -15,9 +15,9 @@ stdenv.mkDerivation rec {
   version = "0.3.6";
 
   buildInputs =
-    lib.optionals stdenv.isLinux [
+    lib.optionals stdenv.hostPlatform.isLinux [
       alsa-lib
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       CoreServices AudioUnit
     ];
 
diff --git a/pkgs/development/libraries/avahi/default.nix b/pkgs/development/libraries/avahi/default.nix
index ac3db3650e76f..3e9be1f5fc71d 100644
--- a/pkgs/development/libraries/avahi/default.nix
+++ b/pkgs/development/libraries/avahi/default.nix
@@ -1,6 +1,7 @@
 { fetchurl
 , fetchpatch
 , lib
+, config
 , stdenv
 , pkg-config
 , libdaemon
@@ -21,6 +22,9 @@
 , withPython ? false
 }:
 
+# Added 2024-09-03. Drop this assertion after 24.11 is released.
+assert lib.assertMsg (config.avahi or {} == {}) "config.avahi has been removed; please use an overlay or services.avahi.package to configure the avahi package.";
+
 stdenv.mkDerivation rec {
   pname = "avahi${lib.optionalString withLibdnssdCompat "-compat"}";
   version = "0.8";
@@ -137,7 +141,7 @@ stdenv.mkDerivation rec {
     expat
     libiconv
     libevent
-  ] ++ lib.optionals stdenv.isFreeBSD [
+  ] ++ lib.optionals stdenv.hostPlatform.isFreeBSD [
     libpcap
   ] ++ lib.optionals gtk3Support [
     gtk3
@@ -167,7 +171,7 @@ stdenv.mkDerivation rec {
     "--with-systemdsystemunitdir=no"
   ] ++ lib.optionals withLibdnssdCompat [
     "--enable-compat-libdns_sd"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # autoipd won't build on darwin
     "--disable-autoipd"
   ];
@@ -179,7 +183,7 @@ stdenv.mkDerivation rec {
     "sysconfdir=${placeholder "out"}/etc"
   ];
 
-  preBuild = lib.optionalString stdenv.isDarwin ''
+  preBuild = lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i '20 i\
     #define __APPLE_USE_RFC_2292' \
     avahi-core/socket.c
diff --git a/pkgs/development/libraries/avro-c/default.nix b/pkgs/development/libraries/avro-c/default.nix
index a62d0449b3855..53f1d4430cc97 100644
--- a/pkgs/development/libraries/avro-c/default.nix
+++ b/pkgs/development/libraries/avro-c/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "avro-c";
-  version = "1.11.3";
+  version = "1.12.0";
 
   src = fetchurl {
     url = "mirror://apache/avro/avro-${version}/c/avro-c-${version}.tar.gz";
-    sha256 = "sha256-chfKrPt9XzRhF2ZHOmbC4nm8e/rxuimMfwSzsvulc2U=";
+    sha256 = "sha256-dDM9QxB5w113DO9plstN4EBY0Z6BvQuaNjvP04V1A38=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/aws-c-auth/default.nix b/pkgs/development/libraries/aws-c-auth/default.nix
index d07a7fc529964..70aa863a7ce21 100644
--- a/pkgs/development/libraries/aws-c-auth/default.nix
+++ b/pkgs/development/libraries/aws-c-auth/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-auth";
-  version = "0.7.22";
+  version = "0.7.26";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-auth";
     rev = "v${version}";
-    hash = "sha256-8+SFag3hRQ+1aOK2vuHOV/gXE1qUIlAW5LNJDmUORLs=";
+    hash = "sha256-02dy2xgMGWkLf+HyBztbkCcazfZNAMwpJPU2gGBPokY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-cal/default.nix b/pkgs/development/libraries/aws-c-cal/default.nix
index 6b88fa8aa47e4..caf0ce60cdb2d 100644
--- a/pkgs/development/libraries/aws-c-cal/default.nix
+++ b/pkgs/development/libraries/aws-c-cal/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "awslabs";
-    repo = finalAttrs.pname;
+    repo = "aws-c-cal";
     rev = "v${finalAttrs.version}";
     hash = "sha256-RrUJz3IqwbBJ8NuJTIWqK33FlJHolcaid55PT2EhO24=";
   };
@@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   meta = with lib; {
-    description = "AWS Crypto Abstraction Layer ";
+    description = "AWS Crypto Abstraction Layer";
     homepage = "https://github.com/awslabs/aws-c-cal";
     license = licenses.asl20;
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/aws-c-common/default.nix b/pkgs/development/libraries/aws-c-common/default.nix
index 6bb9fc493fe87..8166497efa501 100644
--- a/pkgs/development/libraries/aws-c-common/default.nix
+++ b/pkgs/development/libraries/aws-c-common/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-common";
-  version = "0.9.21";
+  version = "0.9.27";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-lJCQPatwZeHpuzQni6SMMGYBH4iESQH8ofFgmRbxtnM=";
+    hash = "sha256-VbF+R2LB5M2luOoQ/HsAOqk/ujHSW4QJC0OTzNnu9PM=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -52,6 +52,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/awslabs/aws-c-common";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ orivej eelco r-burns ];
+    maintainers = with maintainers; [ orivej r-burns ];
   };
 }
diff --git a/pkgs/development/libraries/aws-c-common/setup-hook.sh b/pkgs/development/libraries/aws-c-common/setup-hook.sh
index e670f7cf85299..174933621f000 100644
--- a/pkgs/development/libraries/aws-c-common/setup-hook.sh
+++ b/pkgs/development/libraries/aws-c-common/setup-hook.sh
@@ -1,5 +1,5 @@
 addAwsCCommonModuleDir() {
-    cmakeFlags="-DCMAKE_MODULE_PATH=@out@/lib/cmake ${cmakeFlags:-}"
+    prependToVar cmakeFlags "-DCMAKE_MODULE_PATH=@out@/lib/cmake"
 }
 
 postHooks+=(addAwsCCommonModuleDir)
diff --git a/pkgs/development/libraries/aws-c-compression/default.nix b/pkgs/development/libraries/aws-c-compression/default.nix
index e38279ff060ab..cb115f531f501 100644
--- a/pkgs/development/libraries/aws-c-compression/default.nix
+++ b/pkgs/development/libraries/aws-c-compression/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-compression";
-  version = "0.2.18";
+  version = "0.2.19";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-compression";
     rev = "v${version}";
-    sha256 = "sha256-Cf3MvoRWGAy+vlE59JSpTGOBl07dI4mbIaL1HIiLN/I=";
+    sha256 = "sha256-Zr1C47YaTkMlG7r2WtAkxRfjZRuBKeTXzNIGspdLap4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-event-stream/default.nix b/pkgs/development/libraries/aws-c-event-stream/default.nix
index 8f469d93054ab..9b568b3721413 100644
--- a/pkgs/development/libraries/aws-c-event-stream/default.nix
+++ b/pkgs/development/libraries/aws-c-event-stream/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-event-stream";
-  version = "0.4.2";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wj3PZshUay3HJy+v7cidDL4mDAqSDiX+MmQtJDK4rTI=";
+    hash = "sha256-xLgPFy+wFtUe3GawICrAHyji+mkfxC2jw7lsL+p7pl4=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/awslabs/aws-c-event-stream";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ orivej eelco ];
+    maintainers = with maintainers; [ orivej ];
   };
 }
diff --git a/pkgs/development/libraries/aws-c-io/default.nix b/pkgs/development/libraries/aws-c-io/default.nix
index a429003628459..2b3019d48cfa7 100644
--- a/pkgs/development/libraries/aws-c-io/default.nix
+++ b/pkgs/development/libraries/aws-c-io/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-io";
-  version = "0.14.9";
+  version = "0.14.18";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-YrEpb4+yzrNci0/ZW+UsPlEmnCBkcRFDgo8SuxsTWXg=";
+    hash = "sha256-dKZOgbufmPfksSOvOmzSTR/WjoSzmX8edMiuKAOyoyY=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/aws-c-s3/default.nix b/pkgs/development/libraries/aws-c-s3/default.nix
index 65e84c3bcb84a..5c834da72cc41 100644
--- a/pkgs/development/libraries/aws-c-s3/default.nix
+++ b/pkgs/development/libraries/aws-c-s3/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-s3";
-  version = "0.5.10";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-s3";
     rev = "v${version}";
-    hash = "sha256-yQY5yZFRm/2K97ffyumAQhgPlU6Nzy8PDGcy9L53Y84=";
+    hash = "sha256-qPVITirqhExIeayh6AWEyAXPlkUtk7gkIcmT/IpNisw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-checksums/default.nix b/pkgs/development/libraries/aws-checksums/default.nix
index 41da5e247e941..f0a9a0cf665f4 100644
--- a/pkgs/development/libraries/aws-checksums/default.nix
+++ b/pkgs/development/libraries/aws-checksums/default.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/awslabs/aws-checksums";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ orivej eelco ];
+    maintainers = with maintainers; [ orivej ];
   };
 }
diff --git a/pkgs/development/libraries/aws-crt-cpp/default.nix b/pkgs/development/libraries/aws-crt-cpp/default.nix
index cbf2e22ec7322..534314443e4f8 100644
--- a/pkgs/development/libraries/aws-crt-cpp/default.nix
+++ b/pkgs/development/libraries/aws-crt-cpp/default.nix
@@ -17,7 +17,7 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-crt-cpp";
-  version = "0.26.8";
+  version = "0.26.12";
 
   outputs = [ "out" "dev" ];
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "awslabs";
     repo = "aws-crt-cpp";
     rev = "v${version}";
-    sha256 = "sha256-TW17Jcs9y8OqB0mnbHbOZgSWkYs70o2bhiLT/Rr1e8k=";
+    sha256 = "sha256-mVihmcl24gFLnF3A/qLSvr2npOotMlBH7TqU5vOwI9g=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index ded3948907c25..6e549526a14ce 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
     rm tests/aws-cpp-sdk-core-tests/aws/auth/AWSAuthSignerTest.cpp
     # TestRandomURLMultiThreaded fails
     rm tests/aws-cpp-sdk-core-tests/http/HttpClientTest.cpp
-  '' + lib.optionalString stdenv.isi686 ''
+  '' + lib.optionalString stdenv.hostPlatform.isi686 ''
     # EPSILON is exceeded
     rm tests/aws-cpp-sdk-core-tests/aws/client/AdaptiveRetryStrategyTest.cpp
   '';
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     curl openssl zlib
-  ] ++ lib.optionals (stdenv.isDarwin &&
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin &&
                         ((builtins.elem "text-to-speech" apis) ||
                          (builtins.elem "*" apis)))
          [ CoreAudio AudioToolbox ];
@@ -147,7 +147,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/aws/aws-sdk-cpp";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ eelco orivej ];
+    maintainers = with maintainers; [ orivej ];
     # building ec2 runs out of memory: cc1plus: out of memory allocating 33554372 bytes after a total of 74424320 bytes
     broken = stdenv.buildPlatform.is32bit && ((builtins.elem "ec2" apis) || (builtins.elem "*" apis));
   };
diff --git a/pkgs/development/libraries/ayatana-ido/default.nix b/pkgs/development/libraries/ayatana-ido/default.nix
deleted file mode 100644
index 7e15b74ebee47..0000000000000
--- a/pkgs/development/libraries/ayatana-ido/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchFromGitHub
-, pkg-config, cmake
-, gtk3
-}:
-
-stdenv.mkDerivation rec {
-  pname = "ayatana-ido";
-  version = "0.10.2";
-
-  src = fetchFromGitHub {
-    owner = "AyatanaIndicators";
-    repo = pname;
-    rev = version;
-    sha256 = "sha256-Y+5fHUe1HAjU/cy7jWKE7zVQUezJNFg4q9tn7H1+NuA=";
-  };
-
-  nativeBuildInputs = [ pkg-config cmake ];
-
-  buildInputs = [ gtk3 ];
-
-  meta = with lib; {
-    description = "Ayatana Display Indicator Objects";
-    homepage = "https://github.com/AyatanaIndicators/ayatana-ido";
-    changelog = "https://github.com/AyatanaIndicators/ayatana-ido/blob/${version}/ChangeLog";
-    license = [ licenses.lgpl3Plus licenses.lgpl21Plus ];
-    maintainers = [ maintainers.nickhu ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/azmq/default.nix b/pkgs/development/libraries/azmq/default.nix
index 7317c51aabde3..83bbd9f98f9ed 100644
--- a/pkgs/development/libraries/azmq/default.nix
+++ b/pkgs/development/libraries/azmq/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   ];
 
   # Broken for some reason on this platform.
-  doCheck = !(stdenv.isAarch64 && stdenv.isLinux);
+  doCheck = !(stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux);
 
   meta = with lib; {
     homepage = "https://github.com/zeromq/azmq";
diff --git a/pkgs/development/libraries/babl/default.nix b/pkgs/development/libraries/babl/default.nix
index e74947dd8194a..0806364a7f672 100644
--- a/pkgs/development/libraries/babl/default.nix
+++ b/pkgs/development/libraries/babl/default.nix
@@ -41,6 +41,10 @@ stdenv.mkDerivation (finalAttrs: {
 
   mesonFlags = [
     "-Dprefix-dev=${placeholder "dev"}"
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    # Docs are opt-out in native but opt-in in cross builds.
+    "-Dwith-docs=true"
+    "-Denable-gir=true"
   ];
 
   postFixup = ''
@@ -52,7 +56,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Image pixel format conversion library";
     mainProgram = "babl";
     homepage = "https://gegl.org/babl/";
-    changelog = "https://gitlab.gnome.org/GNOME/babl/-/blob/BABL_${lib.replaceStrings [ "." ] [ "_" ] version}/NEWS";
+    changelog = "https://gitlab.gnome.org/GNOME/babl/-/blob/BABL_${replaceStrings [ "." ] [ "_" ] finalAttrs.version}/NEWS";
     license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/backward-cpp/default.nix b/pkgs/development/libraries/backward-cpp/default.nix
index 15556a4108c67..1cea8079024ca 100644
--- a/pkgs/development/libraries/backward-cpp/default.nix
+++ b/pkgs/development/libraries/backward-cpp/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/bombela/backward-cpp";
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/bamf/default.nix b/pkgs/development/libraries/bamf/default.nix
index 8b11954429631..ce9a3d118973a 100644
--- a/pkgs/development/libraries/bamf/default.nix
+++ b/pkgs/development/libraries/bamf/default.nix
@@ -2,7 +2,7 @@
 , lib
 , autoreconfHook
 , gitUpdater
-, gnome
+, gnome-common
 , which
 , fetchgit
 , libgtop
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     dbus
     docbook_xsl
-    gnome.gnome-common
+    gnome-common
     gobject-introspection
     gtk-doc
     pkg-config
diff --git a/pkgs/development/libraries/basu/default.nix b/pkgs/development/libraries/basu/default.nix
deleted file mode 100644
index a3bd836ee83fc..0000000000000
--- a/pkgs/development/libraries/basu/default.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ lib
-, stdenv
-, fetchFromSourcehut
-, audit
-, pkg-config
-, libcap
-, gperf
-, meson
-, ninja
-, python3
-, getent
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "basu";
-  version = "0.2.1";
-
-  src = fetchFromSourcehut {
-    owner = "~emersion";
-    repo = "basu";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-zIaEIIo8lJeas2gVjMezO2hr8RnMIT7iiCBilZx5lRQ=";
-  };
-
-  outputs = [ "out" "dev" "lib" ];
-
-  buildInputs = [
-    audit
-    gperf
-    libcap
-  ];
-
-  nativeBuildInputs = [
-    pkg-config
-    meson
-    ninja
-    python3
-    getent
-  ];
-
-  preConfigure = ''
-    pushd src/basic
-    patchShebangs \
-      generate-cap-list.sh generate-errno-list.sh generate-gperfs.py
-    popd
-  '';
-
-  meta = {
-    homepage = "https://sr.ht/~emersion/basu";
-    description = "Sd-bus library, extracted from systemd";
-    mainProgram = "basuctl";
-    license = lib.licenses.lgpl21Only;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.linux;
-  };
-})
diff --git a/pkgs/development/libraries/bencodetools/default.nix b/pkgs/development/libraries/bencodetools/default.nix
index 0a9694367340d..7a826efa7ef7d 100644
--- a/pkgs/development/libraries/bencodetools/default.nix
+++ b/pkgs/development/libraries/bencodetools/default.nix
@@ -1,10 +1,11 @@
-{ stdenv
-, lib
-, fetchFromGitLab
-, python3
+{
+  stdenv,
+  lib,
+  fetchFromGitLab,
+  python3,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "bencodetools";
   version = "unstable-2022-05-11";
 
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   nativeBuildInputs = [
-    python3
+    (python3.withPackages (ps: with ps; [ distutils ]))
   ];
 
   # installCheck instead of check due to -install_name'd library on Darwin
diff --git a/pkgs/development/libraries/biblesync/default.nix b/pkgs/development/libraries/biblesync/default.nix
deleted file mode 100644
index 1ac53a0b9b8fd..0000000000000
--- a/pkgs/development/libraries/biblesync/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, libuuid }:
-
-stdenv.mkDerivation rec {
-
-  pname = "biblesync";
-  version = "2.1.0";
-
-  src = fetchFromGitHub {
-    owner = "karlkleinpaste";
-    repo = "biblesync";
-    rev = version;
-    sha256 = "0prmd12jq2cjdhsph5v89y38j7hhd51dr3r1hivgkhczr3m5hf4s";
-  };
-
-  nativeBuildInputs = [ pkg-config cmake ];
-  buildInputs = [ libuuid ];
-
-  meta = with lib; {
-    homepage = "https://wiki.crosswire.org/BibleSync";
-    description = "Multicast protocol to Bible software shared conavigation";
-    longDescription = ''
-      BibleSync is a multicast protocol to support Bible software shared
-      co-navigation. It uses LAN multicast in either a personal/small team
-      mutual navigation motif or in a classroom environment where there are
-      Speakers plus the Audience. The library implementing the protocol is a
-      single C++ class providing a complete yet minimal public interface to
-      support mode setting, setup for packet reception, transmit on local
-      navigation, and handling of incoming packets.
-    '';
-    license = licenses.publicDomain;
-    maintainers = [ maintainers.AndersonTorres ];
-    platforms = lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/blaze/default.nix b/pkgs/development/libraries/blaze/default.nix
index 70d7cdff13b40..d52176518da99 100644
--- a/pkgs/development/libraries/blaze/default.nix
+++ b/pkgs/development/libraries/blaze/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromBitbucket {
     owner = "blaze-lib";
-    repo = finalAttrs.pname;
+    repo = "blaze";
     rev = "v${finalAttrs.version}";
     hash = "sha256-Jl9ZWFqBvLgQwCoMNX3g7z02yc7oYx+d6mbyLBzBJOs=";
   };
diff --git a/pkgs/development/libraries/blitz/default.nix b/pkgs/development/libraries/blitz/default.nix
index d48669845485f..4351e0ac729cb 100644
--- a/pkgs/development/libraries/blitz/default.nix
+++ b/pkgs/development/libraries/blitz/default.nix
@@ -54,11 +54,11 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = optional enablePadding "-DARRAY_LENGTH_PADDING=ON"
     ++ optional enableSerialization "-DENABLE_SERIALISATION=ON"
-    ++ optional stdenv.is64bit "-DBZ_FULLY64BIT=ON";
+    ++ optional stdenv.hostPlatform.is64bit "-DBZ_FULLY64BIT=ON";
     # FIXME ++ optional doCheck "-DBUILD_TESTING=ON";
 
   # skip broken library name detection
-  ax_boost_user_serialization_lib = lib.optionalString stdenv.isDarwin "boost_serialization";
+  ax_boost_user_serialization_lib = lib.optionalString stdenv.hostPlatform.isDarwin "boost_serialization";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/blst/default.nix b/pkgs/development/libraries/blst/default.nix
index e5eb5b64aa9f0..50d080b9bf910 100644
--- a/pkgs/development/libraries/blst/default.nix
+++ b/pkgs/development/libraries/blst/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, lib, fetchFromGitHub, autoreconfHook }:
+{ stdenv, lib, fetchFromGitHub }:
 
 stdenv.mkDerivation ( finalAttrs: {
   pname = "blst";
-  version = "0.3.12";
+  version = "0.3.13";
 
   src = fetchFromGitHub {
     owner = "supranational";
     repo = "blst";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-z/xnttMuAOfoKn/yCBwdYbgcd6cDLD6tZxInAWn8XIk=";
+    hash = "sha256-+Ae2cCVVEXnV/ftVOApxDcXM3COf/4DXXd1AOuGS5uc=";
   };
 
   buildPhase = ''
@@ -59,9 +59,9 @@ stdenv.mkDerivation ( finalAttrs: {
 
   # ensure we have the right install id set.  Otherwise the library
   # wouldn't be found during install.  The alternative would be to work
-  # lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/libblst.dylib";
+  # lib.optional stdenv.hostPlatform.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/libblst.dylib";
   # into the setup.sh
-  postFixup = lib.optionalString stdenv.isDarwin ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libblst.dylib $out/lib/libblst.dylib
   '';
 
diff --git a/pkgs/development/libraries/boost/1.86.nix b/pkgs/development/libraries/boost/1.86.nix
new file mode 100644
index 0000000000000..a29f3ecf785f6
--- /dev/null
+++ b/pkgs/development/libraries/boost/1.86.nix
@@ -0,0 +1,19 @@
+{ callPackage, fetchurl, ... }@args:
+
+callPackage ./generic.nix (
+  args
+  // rec {
+    version = "1.86.0";
+
+    src = fetchurl {
+      urls = [
+        "mirror://sourceforge/boost/boost_${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.bz2"
+        "https://boostorg.jfrog.io/artifactory/main/release/${version}/source/boost_${
+          builtins.replaceStrings [ "." ] [ "_" ] version
+        }.tar.bz2"
+      ];
+      # SHA256 from http://www.boost.org/users/history/version_1_86_0.html
+      sha256 = "1bed88e40401b2cb7a1f76d4bab499e352fa4d0c5f31c0dbae64e24d34d7513b";
+    };
+  }
+)
diff --git a/pkgs/development/libraries/boost/default.nix b/pkgs/development/libraries/boost/default.nix
index 1a2ae9d24a32c..fed5dbe834c3c 100644
--- a/pkgs/development/libraries/boost/default.nix
+++ b/pkgs/development/libraries/boost/default.nix
@@ -26,4 +26,5 @@ in {
   boost183 = makeBoost ./1.83.nix;
   boost184 = makeBoost ./1.84.nix;
   boost185 = makeBoost ./1.85.nix;
+  boost186 = makeBoost ./1.86.nix;
 }
diff --git a/pkgs/development/libraries/boost/fix-clang-target.patch b/pkgs/development/libraries/boost/fix-clang-target.patch
new file mode 100644
index 0000000000000..93bc4d099644c
--- /dev/null
+++ b/pkgs/development/libraries/boost/fix-clang-target.patch
@@ -0,0 +1,14 @@
+--- a/tools/build/src/tools/clang.jam	2024-07-25 10:38:16.278401900 -0700
++++ b/tools/build/src/tools/clang.jam	2024-07-25 10:38:52.659750666 -0700
+@@ -90,11 +90,6 @@
+                 case x86-64 : arch = x86_64 ;
+                 case x86-32 : arch = i386 ;
+             }
+-
+-            toolset.flags $(toolset)
+-                OPTIONS $(condition)/<target-os>$(target-os)/<architecture>$(_architecture_)/<address-model>$(_address-model_)
+-                : "--target=$(arch)-$(vendor-sys)"
+-                : unchecked ;
+         }
+     }
+ }
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index 3db9b77bf05d5..9c6fb3e672032 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -1,4 +1,6 @@
 { lib, stdenv, icu, expat, zlib, bzip2, zstd, xz, python ? null, fixDarwinDylibNames, libiconv, libxcrypt
+, makePkgconfigItem
+, copyPkgconfigItems
 , boost-build
 , fetchpatch
 , which
@@ -50,7 +52,7 @@ let
   # To avoid library name collisions
   layout = if taggedLayout then "tagged" else "system";
 
-  needUserConfig = stdenv.hostPlatform != stdenv.buildPlatform || useMpi || (stdenv.isDarwin && enableShared);
+  needUserConfig = stdenv.hostPlatform != stdenv.buildPlatform || useMpi || (stdenv.hostPlatform.isDarwin && enableShared);
 
   b2Args = lib.concatStringsSep " " ([
     "--includedir=$dev/include"
@@ -70,7 +72,7 @@ let
     "address-model=${toString stdenv.hostPlatform.parsed.cpu.bits}"
     "architecture=${if stdenv.hostPlatform.isMips64
                     then if lib.versionOlder version "1.78" then "mips1" else "mips"
-                    else if stdenv.hostPlatform.parsed.cpu.name == "s390x" then "s390x"
+                    else if stdenv.hostPlatform.isS390 then "s390x"
                     else toString stdenv.hostPlatform.parsed.cpu.family}"
     # env in host triplet for Mach-O is "macho", but boost binary format for Mach-O is "mach-o"
     "binary-format=${if stdenv.hostPlatform.isMacho then "mach-o"
@@ -105,7 +107,7 @@ stdenv.mkDerivation {
   patchFlags = [];
 
   patches = patches
-  ++ lib.optional stdenv.isDarwin ./darwin-no-system-python.patch
+  ++ lib.optional stdenv.hostPlatform.isDarwin ./darwin-no-system-python.patch
   ++ [ ./cmake-paths-173.patch ]
   ++ lib.optional (version == "1.77.0") (fetchpatch {
     url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
@@ -148,7 +150,8 @@ stdenv.mkDerivation {
       stripLen = 1;
       extraPrefix = "libs/python/";
     })
-  ];
+  ]
+  ++ lib.optional (lib.versionAtLeast version "1.81" && stdenv.cc.isClang) ./fix-clang-target.patch;
 
   meta = with lib; {
     homepage = "http://boost.org/";
@@ -174,7 +177,7 @@ stdenv.mkDerivation {
   # On darwin we need to add the `$out/lib` to the libraries' rpath explicitly,
   # otherwise the dynamic linker is unable to resolve the reference to @rpath
   # when the boost libraries want to load each other at runtime.
-  + lib.optionalString (stdenv.isDarwin && enableShared) ''
+  + lib.optionalString (stdenv.hostPlatform.isDarwin && enableShared) ''
     cat << EOF >> user-config.jam
     using clang-darwin : : ${stdenv.cc.targetPrefix}c++
       : <linkflags>"-rpath $out/lib/"
@@ -210,12 +213,28 @@ stdenv.mkDerivation {
     EOF
   '';
 
-  NIX_CFLAGS_LINK = lib.optionalString stdenv.isDarwin
-                      "-headerpad_max_install_names";
+  env = {
+    NIX_CFLAGS_LINK = lib.optionalString stdenv.hostPlatform.isDarwin "-headerpad_max_install_names";
+    # copyPkgconfigItems will substitute these in the pkg-config file
+    includedir = "${placeholder "dev"}/include";
+    libdir = "${placeholder "out"}/lib";
+  };
+
+  pkgconfigItems = [
+    (makePkgconfigItem {
+      name = "boost";
+      inherit version;
+      # Exclude other variables not needed by meson
+      variables = {
+        includedir = "@includedir@";
+        libdir = "@libdir@";
+      };
+    })
+  ];
 
   enableParallelBuilding = true;
 
-  nativeBuildInputs = [ which boost-build ]
+  nativeBuildInputs = [ which boost-build copyPkgconfigItems ]
     ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
   buildInputs = [ expat zlib bzip2 libiconv ]
     ++ lib.optional (lib.versionAtLeast version "1.69") zstd
diff --git a/pkgs/development/libraries/boringssl/default.nix b/pkgs/development/libraries/boringssl/default.nix
index 9bb0967bd5c6e..01c3884c428fd 100644
--- a/pkgs/development/libraries/boringssl/default.nix
+++ b/pkgs/development/libraries/boringssl/default.nix
@@ -41,7 +41,7 @@ buildGoModule {
   '';
 
   # CMAKE_OSX_ARCHITECTURES is set to x86_64 by Nix, but it confuses boringssl on aarch64-linux.
-  cmakeFlags = [ "-GNinja" ] ++ lib.optionals (stdenv.isLinux) [ "-DCMAKE_OSX_ARCHITECTURES=" ];
+  cmakeFlags = [ "-GNinja" ] ++ lib.optionals (stdenv.hostPlatform.isLinux) [ "-DCMAKE_OSX_ARCHITECTURES=" ];
 
   installPhase = ''
     mkdir -p $bin/bin $dev $out/lib
diff --git a/pkgs/development/libraries/botan/2.0.nix b/pkgs/development/libraries/botan/2.0.nix
deleted file mode 100644
index c9a45218dfb4c..0000000000000
--- a/pkgs/development/libraries/botan/2.0.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ callPackage, ... } @ args:
-
-callPackage ./generic.nix (args // {
-  baseVersion = "2.19";
-  revision = "4";
-  hash = "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY=";
-})
diff --git a/pkgs/development/libraries/botan/3.0.nix b/pkgs/development/libraries/botan/3.0.nix
deleted file mode 100644
index d55d7edfb74cc..0000000000000
--- a/pkgs/development/libraries/botan/3.0.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ callPackage, ... } @ args:
-
-callPackage ./generic.nix (args // {
-  baseVersion = "3.4";
-  revision = "0";
-  hash = "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc=";
-})
diff --git a/pkgs/development/libraries/botan/botan3-macos.patch b/pkgs/development/libraries/botan/botan3-macos.patch
new file mode 100644
index 0000000000000..4fde08c32d3f2
--- /dev/null
+++ b/pkgs/development/libraries/botan/botan3-macos.patch
@@ -0,0 +1,48 @@
+diff --git a/src/lib/prov/commoncrypto/commoncrypto_block.cpp b/src/lib/prov/commoncrypto/commoncrypto_block.cpp
+index a07fe118d..f059ee497 100644
+--- a/src/lib/prov/commoncrypto/commoncrypto_block.cpp
++++ b/src/lib/prov/commoncrypto/commoncrypto_block.cpp
+@@ -11,6 +11,7 @@
+ #include <botan/hex.h>
+ #include <botan/internal/commoncrypto_utils.h>
+ 
++#include <CommonCrypto/CommonCryptoError.h>
+ #include <CommonCrypto/CommonCrypto.h>
+ 
+ namespace Botan {
+diff --git a/src/lib/prov/commoncrypto/commoncrypto_hash.cpp b/src/lib/prov/commoncrypto/commoncrypto_hash.cpp
+index 1fb79c419..faf9575c2 100644
+--- a/src/lib/prov/commoncrypto/commoncrypto_hash.cpp
++++ b/src/lib/prov/commoncrypto/commoncrypto_hash.cpp
+@@ -11,6 +11,7 @@
+ #include <botan/internal/stl_util.h>
+ #include <unordered_map>
+ 
++#include <CommonCrypto/CommonCryptoError.h>
+ #include <CommonCrypto/CommonCrypto.h>
+ 
+ namespace Botan {
+diff --git a/src/lib/prov/commoncrypto/commoncrypto_utils.h b/src/lib/prov/commoncrypto/commoncrypto_utils.h
+index b1c7411fd..9becab2d1 100644
+--- a/src/lib/prov/commoncrypto/commoncrypto_utils.h
++++ b/src/lib/prov/commoncrypto/commoncrypto_utils.h
+@@ -10,6 +10,7 @@
+ 
+ #include <botan/sym_algo.h>
+ 
++#include <CommonCrypto/CommonCryptoError.h>
+ #include <CommonCrypto/CommonCrypto.h>
+ 
+ namespace Botan {
+diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp
+index b2f7b4c45..f4933b1e3 100644
+--- a/src/lib/rng/system_rng/system_rng.cpp
++++ b/src/lib/rng/system_rng/system_rng.cpp
+@@ -20,6 +20,7 @@
+    #include <bcrypt.h>
+    #include <windows.h>
+ #elif defined(BOTAN_TARGET_OS_HAS_CCRANDOM)
++   #include <CommonCrypto/CommonCryptoError.h>
+    #include <CommonCrypto/CommonRandom.h>
+ #elif defined(BOTAN_TARGET_OS_HAS_ARC4RANDOM)
+    #include <stdlib.h>
diff --git a/pkgs/development/libraries/botan/default.nix b/pkgs/development/libraries/botan/default.nix
new file mode 100644
index 0000000000000..976144b1b5ca8
--- /dev/null
+++ b/pkgs/development/libraries/botan/default.nix
@@ -0,0 +1,130 @@
+{
+  lib,
+  stdenv,
+  fetchurl,
+  python3,
+  docutils,
+  bzip2,
+  zlib,
+  darwin,
+  static ? stdenv.hostPlatform.isStatic, # generates static libraries *only*
+}:
+
+let
+  common =
+    {
+      version,
+      hash,
+      patches ? [ ],
+    }:
+    stdenv.mkDerivation (finalAttrs: {
+      pname = "botan";
+      inherit version;
+
+      __structuredAttrs = true;
+      enableParallelBuilding = true;
+      strictDeps = true;
+
+      outputs = [
+        "bin"
+        "out"
+        "dev"
+        "doc"
+        "man"
+      ];
+
+      src = fetchurl {
+        url = "http://botan.randombit.net/releases/Botan-${finalAttrs.version}.tar.xz";
+        inherit hash;
+      };
+
+      inherit patches;
+
+      nativeBuildInputs = [
+        python3
+        docutils
+      ];
+
+      buildInputs =
+        [
+          bzip2
+          zlib
+        ]
+        ++ lib.optionals stdenv.hostPlatform.isDarwin (
+          with darwin.apple_sdk.frameworks;
+          [
+            CoreServices
+            Security
+          ]
+        );
+
+      buildTargets =
+        [ "cli" ]
+        ++ lib.optionals finalAttrs.doCheck [ "tests" ]
+        ++ lib.optionals static [ "static" ]
+        ++ lib.optionals (!static) [ "shared" ];
+
+      botanConfigureFlags =
+        [
+          "--prefix=${placeholder "out"}"
+          "--bindir=${placeholder "bin"}/bin"
+          "--docdir=${placeholder "doc"}/share/doc"
+          "--mandir=${placeholder "man"}/share/man"
+          "--no-install-python-module"
+          "--build-targets=${lib.concatStringsSep "," finalAttrs.buildTargets}"
+          "--with-bzip2"
+          "--with-zlib"
+          "--with-rst2man"
+        ]
+        ++ lib.optionals stdenv.cc.isClang [
+          "--cc=clang"
+        ]
+        ++ lib.optionals stdenv.hostPlatform.isAarch64 [
+          "--cpu=aarch64"
+        ];
+
+      configurePhase = ''
+        runHook preConfigure
+        python configure.py ''${botanConfigureFlags[@]}
+        runHook postConfigure
+      '';
+
+      preInstall = ''
+        if [ -d src/scripts ]; then
+          patchShebangs src/scripts
+        fi
+      '';
+
+      postInstall = ''
+        cd "$out"/lib/pkgconfig
+        ln -s botan-*.pc botan.pc || true
+      '';
+
+      doCheck = true;
+
+      meta = with lib; {
+        description = "Cryptographic algorithms library";
+        homepage = "https://botan.randombit.net";
+        mainProgram = "botan";
+        maintainers = with maintainers; [
+          raskin
+          thillux
+        ];
+        platforms = platforms.unix;
+        license = licenses.bsd2;
+      };
+    });
+in
+{
+  botan3 = common {
+    version = "3.5.0";
+    hash = "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8=";
+    # this patch fixes build errors on MacOS with SDK 10.12, recheck to remove this again
+    patches = lib.optionals stdenv.hostPlatform.isDarwin [ ./botan3-macos.patch ];
+  };
+
+  botan2 = common {
+    version = "2.19.5";
+    hash = "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ=";
+  };
+}
diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix
deleted file mode 100644
index a2acb81832834..0000000000000
--- a/pkgs/development/libraries/botan/generic.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ lib, stdenv, fetchurl, python3, bzip2, zlib, gmp, boost
-# Passed by version specific builders
-, baseVersion, revision, hash
-, sourceExtension ? "tar.xz"
-, extraConfigureFlags ? ""
-, extraPatches ? [ ]
-, badPlatforms ? [ ]
-, postPatch ? null
-, knownVulnerabilities ? [ ]
-, CoreServices ? null
-, Security ? null
-, ...
-}:
-
-stdenv.mkDerivation rec {
-  pname = "botan";
-  version = "${baseVersion}.${revision}";
-
-  outputs = [ "out" "dev" ];
-
-  src = fetchurl {
-    name = "Botan-${version}.${sourceExtension}";
-    urls = [
-       "http://files.randombit.net/botan/v${baseVersion}/Botan-${version}.${sourceExtension}"
-       "http://botan.randombit.net/releases/Botan-${version}.${sourceExtension}"
-    ];
-    inherit hash;
-  };
-  patches = extraPatches;
-  inherit postPatch;
-
-  nativeBuildInputs = [ python3 ];
-  buildInputs = [ bzip2 zlib gmp boost ]
-    ++ lib.optionals stdenv.isDarwin [ CoreServices Security ];
-
-  configurePhase = ''
-    runHook preConfigure
-    python configure.py --prefix=$out --with-bzip2 --with-zlib ${extraConfigureFlags}${lib.optionalString stdenv.cc.isClang " --cc=clang"} ${lib.optionalString stdenv.hostPlatform.isAarch64 " --cpu=aarch64"}
-    runHook postConfigure
-  '';
-
-  enableParallelBuilding = true;
-
-  preInstall = ''
-    if [ -d src/scripts ]; then
-      patchShebangs src/scripts
-    fi
-  '';
-
-  postInstall = ''
-    cd "$out"/lib/pkgconfig
-    ln -s botan-*.pc botan.pc || true
-  '';
-
-  doCheck = true;
-
-  meta = with lib; {
-    description = "Cryptographic algorithms library";
-    mainProgram = "botan";
-    maintainers = with maintainers; [ raskin thillux ];
-    platforms = platforms.unix;
-    license = licenses.bsd2;
-    inherit badPlatforms;
-    inherit knownVulnerabilities;
-  };
-  passthru.updateInfo.downloadPage = "http://files.randombit.net/botan/";
-}
diff --git a/pkgs/development/libraries/box2d/default.nix b/pkgs/development/libraries/box2d/default.nix
index c2611a8b8dffb..acc2d96caf4a7 100644
--- a/pkgs/development/libraries/box2d/default.nix
+++ b/pkgs/development/libraries/box2d/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , libGLU
 , libGL
-, freeglut
+, libglut
 , libX11
 , libXcursor
 , libXinerama
@@ -25,13 +25,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "box2d";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchFromGitHub {
     owner = "erincatto";
     repo = "box2d";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-cL8L+WSTcswj+Bwy8kSOwuEqLyWEM6xa/j/94aBiSck=";
+    hash = "sha256-yvhpgiZpjTPeSY7Ma1bh4LwIokUUKB10v2WHlamL9D8=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -39,19 +39,19 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [
     libGLU
     libGL
-    freeglut
+    libglut
     libX11
     libXcursor
     libXinerama
     libXrandr
     xorgproto
     libXi
-  ] ++ optionals stdenv.isDarwin [
+  ] ++ optionals stdenv.hostPlatform.isDarwin [
     Carbon Cocoa Kernel OpenGL
   ];
 
   cmakeFlags = [
-    (cmakeBool "BOX2D_BUILD_UNIT_TESTS" finalAttrs.doCheck)
+    (cmakeBool "BOX2D_BUILD_UNIT_TESTS" finalAttrs.finalPackage.doCheck)
   ];
 
   prePatch = ''
@@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
       --replace-fail 'b2_maxPolygonVertices	8' 'b2_maxPolygonVertices	15'
   '';
 
-  # tests are broken on 2.4.1 and 2.3.x doesn't have tests: https://github.com/erincatto/box2d/issues/677
+  # tests are broken on 2.4.2 and 2.3.x doesn't have tests: https://github.com/erincatto/box2d/issues/677
   doCheck = lib.versionAtLeast finalAttrs.version "2.4.2";
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/brunsli/default.nix b/pkgs/development/libraries/brunsli/default.nix
index 03c9b02f7f9ff..e9d379a74d31d 100644
--- a/pkgs/development/libraries/brunsli/default.nix
+++ b/pkgs/development/libraries/brunsli/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     rm -r third_party
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     rm -r build
   '';
 
diff --git a/pkgs/development/libraries/bullet/default.nix b/pkgs/development/libraries/bullet/default.nix
index dc0e1d304eea4..4a161423c7d3f 100644
--- a/pkgs/development/libraries/bullet/default.nix
+++ b/pkgs/development/libraries/bullet/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , libGLU
 , libGL
-, freeglut
+, libglut
 , Cocoa
 , OpenGL
 }:
@@ -21,13 +21,13 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optionals stdenv.isLinux [ libGLU libGL freeglut ]
-    ++ lib.optionals stdenv.isDarwin [ Cocoa OpenGL ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libGLU libGL libglut ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa OpenGL ];
 
   postPatch = ''
     substituteInPlace examples/ThirdPartyLibs/Gwen/CMakeLists.txt \
       --replace "-DGLEW_STATIC" "-DGLEW_STATIC -Wno-narrowing"
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i 's/FIND_PACKAGE(OpenGL)//' CMakeLists.txt
     sed -i 's/FIND_LIBRARY(COCOA_LIBRARY Cocoa)//' CMakeLists.txt
   '';
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     "-DBUILD_SHARED_LIBS=ON"
     "-DBUILD_CPU_DEMOS=OFF"
     "-DINSTALL_EXTRA_LIBS=ON"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DOPENGL_FOUND=true"
     "-DOPENGL_LIBRARIES=${OpenGL}/Library/Frameworks/OpenGL.framework"
     "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks/OpenGL.framework"
diff --git a/pkgs/development/libraries/bullet/roboschool-fork.nix b/pkgs/development/libraries/bullet/roboschool-fork.nix
index 7d601e8570014..bcc963f5b466c 100644
--- a/pkgs/development/libraries/bullet/roboschool-fork.nix
+++ b/pkgs/development/libraries/bullet/roboschool-fork.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libGLU, libGL, freeglut
+{ lib, stdenv, fetchFromGitHub, cmake, libGLU, libGL, libglut
 , Cocoa,  OpenGL
 }:
 
@@ -18,12 +18,12 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optionals stdenv.isLinux [ libGLU libGL freeglut ]
-    ++ lib.optionals stdenv.isDarwin [ Cocoa OpenGL ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libGLU libGL libglut ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa OpenGL ];
 
   patches = [ ./gwen-narrowing.patch ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i 's/FIND_PACKAGE(OpenGL)//' CMakeLists.txt
     sed -i 's/FIND_LIBRARY(COCOA_LIBRARY Cocoa)//' CMakeLists.txt
   '';
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
     "-DBUILD_SHARED_LIBS=ON"
     "-DBUILD_CPU_DEMOS=OFF"
     "-DINSTALL_EXTRA_LIBS=ON"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DOPENGL_FOUND=true"
     "-DOPENGL_LIBRARIES=${OpenGL}/Library/Frameworks/OpenGL.framework"
     "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks/OpenGL.framework"
@@ -53,6 +53,6 @@ stdenv.mkDerivation {
     platforms = platforms.unix;
     # /tmp/nix-build-bullet-2019-03-27.drv-0/source/src/Bullet3Common/b3Vector3.h:297:7: error: argument value 10880 is outside the valid range [0, 255] [-Wargument-outside-range]
     #                 y = b3_splat_ps(y, 0x80);
-    broken = (stdenv.isDarwin && stdenv.isx86_64);
+    broken = (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64);
   };
 }
diff --git a/pkgs/development/libraries/c-blosc/2.nix b/pkgs/development/libraries/c-blosc/2.nix
index 1ea7c63213870..c8bc3ec34eea6 100644
--- a/pkgs/development/libraries/c-blosc/2.nix
+++ b/pkgs/development/libraries/c-blosc/2.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "c-blosc2";
-  version = "2.15.0";
+  version = "2.15.1";
 
   src = fetchFromGitHub {
     owner = "Blosc";
     repo = "c-blosc2";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-XVxui3+IoygjU0I688Mtbof/kHLzpb0HMcVPbt3i7PQ=";
+    sha256 = "sha256-g/MUgVWeVVREiHX59XYbhXjtigJesyooxjnEdKA844M=";
   };
 
   # https://github.com/NixOS/nixpkgs/issues/144170
diff --git a/pkgs/development/libraries/caf/default.nix b/pkgs/development/libraries/caf/default.nix
index 3879878e4779d..9180457a3165f 100644
--- a/pkgs/development/libraries/caf/default.nix
+++ b/pkgs/development/libraries/caf/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "actor-framework";
-  version = "0.19.6";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "actor-framework";
     repo = "actor-framework";
     rev = version;
-    hash = "sha256-Nb/BF/+xDWV/6iPo3o/NO6EtIaAW+yGFj06AO2baFfc=";
+    hash = "sha256-ANtqGFctgOAynDiZS9tmWRASVpB2RqRTG7JSXZIDmP8=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -19,9 +19,9 @@ stdenv.mkDerivation rec {
     "-DCAF_ENABLE_EXAMPLES:BOOL=OFF"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-faligned-allocation";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-faligned-allocation";
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
   checkTarget = "test";
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index 28809ade8ae4a..4368965d4f18c 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, gtk-doc, meson, ninja, pkg-config, python3
 , docbook_xsl, fontconfig, freetype, libpng, pixman, zlib
-, x11Support? !stdenv.isDarwin || true, libXext, libXrender
+, x11Support? !stdenv.hostPlatform.isDarwin || true, libXext, libXrender
 , gobjectSupport ? true, glib
 , xcbSupport ? x11Support, libxcb
 , darwin
@@ -34,7 +34,7 @@ in {
 
   buildInputs = [
     docbook_xsl
-  ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     CoreGraphics
     CoreText
     ApplicationServices
@@ -87,7 +87,7 @@ in {
     # `-I' flags to be propagated.
     sed -i "$out/lib/pkgconfig/cairo.pc" \
         -es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype.dev}/include/freetype2 -I${freetype.dev}/include|g'
-  '' + lib.optionalString stdenv.isDarwin glib.flattenInclude;
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin glib.flattenInclude;
 
   passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
 
diff --git a/pkgs/development/libraries/cairomm/1.16.nix b/pkgs/development/libraries/cairomm/1.16.nix
index 9da00741c34e1..cd561d0091876 100644
--- a/pkgs/development/libraries/cairomm/1.16.nix
+++ b/pkgs/development/libraries/cairomm/1.16.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     boost # for tests
     fontconfig
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
   ];
 
@@ -44,13 +44,8 @@ stdenv.mkDerivation rec {
     "-Dbuild-tests=true"
   ];
 
-  # Meson is no longer able to pick up Boost automatically.
-  # https://github.com/NixOS/nixpkgs/issues/86131
-  BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
-  BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
-
   # Tests fail on Darwin, possibly because of sandboxing.
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "C++ bindings for the Cairo vector graphics library";
diff --git a/pkgs/development/libraries/cairomm/default.nix b/pkgs/development/libraries/cairomm/default.nix
index d8d908cbc40d4..382770e144f56 100644
--- a/pkgs/development/libraries/cairomm/default.nix
+++ b/pkgs/development/libraries/cairomm/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     boost # for tests
     fontconfig
-  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     ApplicationServices
   ]);
 
@@ -44,12 +44,7 @@ stdenv.mkDerivation rec {
     "-Dbuild-tests=true"
   ];
 
-  # Meson is no longer able to pick up Boost automatically.
-  # https://github.com/NixOS/nixpkgs/issues/86131
-  BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
-  BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
-
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "C++ bindings for the Cairo vector graphics library";
diff --git a/pkgs/development/libraries/capnproto/default.nix b/pkgs/development/libraries/capnproto/default.nix
index 669e2c7d18598..4e96d6a6b9931 100644
--- a/pkgs/development/libraries/capnproto/default.nix
+++ b/pkgs/development/libraries/capnproto/default.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     '';
     license     = licenses.mit;
     platforms   = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/capstone/4.nix b/pkgs/development/libraries/capstone/4.nix
index dd31e9feaf621..836bb47568c34 100644
--- a/pkgs/development/libraries/capstone/4.nix
+++ b/pkgs/development/libraries/capstone/4.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
diff --git a/pkgs/development/libraries/capstone/default.nix b/pkgs/development/libraries/capstone/default.nix
index b78b007bc5978..1aed26cec87d1 100644
--- a/pkgs/development/libraries/capstone/default.nix
+++ b/pkgs/development/libraries/capstone/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
diff --git a/pkgs/development/libraries/catboost/default.nix b/pkgs/development/libraries/catboost/default.nix
index b4fa78a125265..ca0d22ff002cd 100644
--- a/pkgs/development/libraries/catboost/default.nix
+++ b/pkgs/development/libraries/catboost/default.nix
@@ -2,7 +2,7 @@
 , config
 , fetchFromGitHub
 , cmake
-, darwin
+, cctools
 , libiconv
 , llvmPackages
 , ninja
@@ -60,7 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
     ragel
     yasm
   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
-    darwin.cctools
+    cctools
   ] ++ lib.optionals cudaSupport (with cudaPackages; [
     cuda_nvcc
   ]);
@@ -68,7 +68,7 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [
     openssl
     zlib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv
   ] ++ lib.optionals cudaSupport (with cudaPackages; [
     cuda_cudart
@@ -81,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
     # after bumping the default version of llvm, check for compatibility with the cuda backend and pin it.
     # see https://catboost.ai/en/docs/installation/build-environment-setup-for-cmake#compilers,-linkers-and-related-tools
     CUDAHOSTCXX = lib.optionalString cudaSupport "${llvmPackages_12.stdenv.cc}/bin/cc";
-    NIX_CFLAGS_LINK = lib.optionalString stdenv.isLinux "-fuse-ld=lld";
+    NIX_CFLAGS_LINK = lib.optionalString stdenv.hostPlatform.isLinux "-fuse-ld=lld";
     NIX_LDFLAGS = "-lc -lm";
   };
 
diff --git a/pkgs/development/libraries/catch2/3.nix b/pkgs/development/libraries/catch2/3.nix
index cf0a0bf70fc1c..c7d2296d9629d 100644
--- a/pkgs/development/libraries/catch2/3.nix
+++ b/pkgs/development/libraries/catch2/3.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "catch2";
-  version = "3.5.2";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "catchorg";
     repo = "Catch2";
     rev = "v${version}";
-    hash = "sha256-xGPfXjk+oOnR7JqTrZd2pKJxalrlS8CMs7HWDClXaS8=";
+    hash = "sha256-U9hv6DaqN5eCMcAQdfFPqWpsbqDFxRQixELSGbNlc0g=";
   };
 
   nativeBuildInputs = [
@@ -25,13 +25,13 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DCATCH_DEVELOPMENT_BUILD=ON"
     "-DCATCH_BUILD_TESTING=${if doCheck then "ON" else "OFF"}"
-  ] ++ lib.optionals (stdenv.isDarwin && doCheck) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && doCheck) [
     # test has a faulty path normalization technique that won't work in
     # our darwin build environment https://github.com/catchorg/Catch2/issues/1691
     "-DCMAKE_CTEST_ARGUMENTS=-E;ApprovalTests"
   ];
 
-  env = lib.optionalAttrs stdenv.isx86_32 {
+  env = lib.optionalAttrs stdenv.hostPlatform.isx86_32 {
     # Tests fail on x86_32 if compiled with x87 floats: https://github.com/catchorg/Catch2/issues/2796
     NIX_CFLAGS_COMPILE = "-msse2 -mfpmath=sse";
   } // lib.optionalAttrs (stdenv.hostPlatform.isRiscV || stdenv.hostPlatform.isAarch32) {
diff --git a/pkgs/development/libraries/cctag/default.nix b/pkgs/development/libraries/cctag/default.nix
index 238821b6af914..8b37633acfcb9 100644
--- a/pkgs/development/libraries/cctag/default.nix
+++ b/pkgs/development/libraries/cctag/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   ];
 
   # Tests are broken on Darwin (linking issue)
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "Detection of CCTag markers made up of concentric circles";
diff --git a/pkgs/development/libraries/cctz/default.nix b/pkgs/development/libraries/cctz/default.nix
index c0f8a58a18d98..4ad0bf6b8034c 100644
--- a/pkgs/development/libraries/cctz/default.nix
+++ b/pkgs/development/libraries/cctz/default.nix
@@ -13,13 +13,13 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "PREFIX=$(out)" ];
 
-  buildInputs = lib.optional stdenv.isDarwin Foundation;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin Foundation;
 
   installTargets = [ "install_hdrs" ]
     ++ lib.optional (!stdenv.hostPlatform.isStatic) "install_shared_lib"
     ++ lib.optional stdenv.hostPlatform.isStatic "install_lib";
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libcctz.so $out/lib/libcctz.so
   '';
 
diff --git a/pkgs/development/libraries/cdo/default.nix b/pkgs/development/libraries/cdo/default.nix
index 18a6dc57434a4..3c63b23d1ce28 100644
--- a/pkgs/development/libraries/cdo/default.nix
+++ b/pkgs/development/libraries/cdo/default.nix
@@ -9,14 +9,14 @@
 
 stdenv.mkDerivation rec {
   pname = "cdo";
-  version = "2.2.2";
+  version = "2.4.2";
 
   # Dependencies
   buildInputs = [ curl netcdf hdf5 python3 ];
 
   src = fetchurl {
-    url = "https://code.mpimet.mpg.de/attachments/download/28882/${pname}-${version}.tar.gz";
-    sha256 = "sha256-QZx3MVJEAZr0GilsBQZvR0zMv5Tev6rp4hBtpRvHyTc=";
+    url = "https://code.mpimet.mpg.de/attachments/download/29481/${pname}-${version}.tar.gz";
+    sha256 = "sha256-TfH+K4+S9Uwn6585nt+rQNkyIAWmcyyhUk71wWJ6xOc=";
   };
 
  configureFlags = [
@@ -28,6 +28,12 @@ stdenv.mkDerivation rec {
    ++ lib.optional enable_all_static "--enable-all-static"
    ++ lib.optional enable_cxx "--enable-cxx";
 
+  # address error: 'TARGET_OS_MACCATALYST' is not defined,
+  # evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
+  # we don't want to appear to be a catalyst build;
+  # we are a TARGET_OS_MAC
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-DTARGET_OS_MACCATALYST=0";
+
   meta = with lib; {
     description = "Collection of command line Operators to manipulate and analyse Climate and NWP model Data";
     mainProgram = "cdo";
diff --git a/pkgs/development/libraries/cegui/default.nix b/pkgs/development/libraries/cegui/default.nix
index 0a1fd07e25081..e92ddafc4322f 100644
--- a/pkgs/development/libraries/cegui/default.nix
+++ b/pkgs/development/libraries/cegui/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, writeShellScript
 , cmake
 , ogre
 , freetype
@@ -34,7 +33,7 @@ stdenv.mkDerivation {
     freetype
     boost
     expat
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.Cocoa
     darwin.apple_sdk.frameworks.Foundation
     libiconv
diff --git a/pkgs/development/libraries/cereal/1.3.0.nix b/pkgs/development/libraries/cereal/1.3.0.nix
deleted file mode 100644
index d15e06d8598c3..0000000000000
--- a/pkgs/development/libraries/cereal/1.3.0.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, cmake
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "cereal";
-  version = "1.3.0";
-
-  src = fetchFromGitHub {
-    owner = "USCiLab";
-    repo = "cereal";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-NwyUVeqXxfdyuDevjum6r8LyNtHa0eJ+4IFd3hLkiEE=";
-  };
-
-  patches = [
-    (fetchpatch {
-      name = "CVE-2020-11105.patch";
-      url = "https://github.com/USCiLab/cereal/commit/f27c12d491955c94583512603bf32c4568f20929.patch";
-      hash = "sha256-CIkbJ7bAN0MXBhTXQdoQKXUmY60/wQvsdn99FaWt31w=";
-    })
-  ];
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [ "-DJUST_INSTALL_CEREAL=yes" ];
-
-  meta = {
-    homepage = "https://uscilab.github.io/cereal/";
-    description = "Header-only C++11 serialization library";
-    changelog = "https://github.com/USCiLab/cereal/releases/tag/v${finalAttrs.version}";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/cereal/1.3.2.nix b/pkgs/development/libraries/cereal/1.3.2.nix
deleted file mode 100644
index a8aced27cb261..0000000000000
--- a/pkgs/development/libraries/cereal/1.3.2.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "cereal";
-  version = "1.3.2";
-
-  src = fetchFromGitHub {
-    owner = "USCiLab";
-    repo = "cereal";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-HapnwM5oSNKuqoKm5x7+i2zt0sny8z8CePwobz1ITQs=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [ "-DJUST_INSTALL_CEREAL=yes" ];
-
-  meta = {
-    homepage = "https://uscilab.github.io/cereal/";
-    description = "Header-only C++11 serialization library";
-    changelog = "https://github.com/USCiLab/cereal/releases/tag/v${finalAttrs.version}";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/cglm/default.nix b/pkgs/development/libraries/cglm/default.nix
index 6211a801d0f90..3ad9c33bb3cff 100644
--- a/pkgs/development/libraries/cglm/default.nix
+++ b/pkgs/development/libraries/cglm/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cglm";
-  version = "0.9.2";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = "recp";
     repo = "cglm";
     rev = "v${version}";
-    sha256 = "sha256-jaG+XGbSx5SaNhGFWLh+1WTB+ya3c5tBZYs9xKIRafI=";
+    sha256 = "sha256-VQgnc3DSZoY1ounc9fj3Mju52noI0JZ7ck8FqWpEgY8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/cgreen/default.nix b/pkgs/development/libraries/cgreen/default.nix
deleted file mode 100644
index c6394a456efd9..0000000000000
--- a/pkgs/development/libraries/cgreen/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "cgreen";
-  version = "1.6.3";
-
-  src = fetchFromGitHub {
-    owner = "cgreen-devs";
-    repo = "cgreen";
-    rev = finalAttrs.version;
-    sha256 = "sha256-qcOj+NlgbHCYuNsM6ngNI2fNhkCwLL6mIVkNSv9hRE8=";
-  };
-
-  postPatch = ''
-    for F in tools/discoverer_acceptance_tests.c tools/discoverer.c; do
-      substituteInPlace "$F" --replace "/usr/bin/nm" "nm"
-    done
-  '';
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    homepage = "https://github.com/cgreen-devs/cgreen";
-    description = "Modern Unit Test and Mocking Framework for C and C++";
-    mainProgram = "cgreen-runner";
-    license = lib.licenses.isc;
-    maintainers = [ lib.maintainers.AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/check/default.nix b/pkgs/development/libraries/check/default.nix
index 14b4e549264b0..10030f5653c2e 100644
--- a/pkgs/development/libraries/check/default.nix
+++ b/pkgs/development/libraries/check/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   # Test can randomly fail: https://hydra.nixos.org/build/7243912
   doCheck = false;
 
-  buildInputs = lib.optional stdenv.isDarwin CoreServices;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin CoreServices;
 
   meta = with lib; {
     description = "Unit testing framework for C";
diff --git a/pkgs/development/libraries/chipmunk/default.nix b/pkgs/development/libraries/chipmunk/default.nix
index 1cb32dc8ee4b6..a0b34f0aa30f8 100644
--- a/pkgs/development/libraries/chipmunk/default.nix
+++ b/pkgs/development/libraries/chipmunk/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, freeglut, libGLU, libGL, glfw2, glew, libX11, xorgproto
+{ lib, stdenv, fetchurl, cmake, libglut, libGLU, libGL, glfw2, glew, libX11, xorgproto
 , libXi, libXmu, fetchpatch, libXrandr
 }:
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
   buildInputs =
-    [ freeglut libGLU libGL glfw2 glew libX11 xorgproto libXi libXmu libXrandr ];
+    [ libglut libGLU libGL glfw2 glew libX11 xorgproto libXi libXmu libXrandr ];
 
   postInstall = ''
     mkdir -p $out/bin
diff --git a/pkgs/development/libraries/chromaprint/default.nix b/pkgs/development/libraries/chromaprint/default.nix
index bc53e2257f12a..e264693ceab86 100644
--- a/pkgs/development/libraries/chromaprint/default.nix
+++ b/pkgs/development/libraries/chromaprint/default.nix
@@ -2,8 +2,10 @@
 , stdenv
 , fetchurl
 , fetchpatch
+, fetchpatch2
 , cmake
-, ffmpeg_6
+, ninja
+, ffmpeg_7
 , darwin
 , zlib
 }:
@@ -31,11 +33,16 @@ stdenv.mkDerivation rec {
       url = "https://github.com/acoustid/chromaprint/commit/aa67c95b9e486884a6d3ee8b0c91207d8c2b0551.patch";
       hash = "sha256-dLY8FBzBqJehAofE924ayZK0HA/aKiuFhEFxL7dg6rY=";
     })
+    # Fix for FFmpeg 7
+    (fetchpatch2 {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/chromaprint/-/raw/74ae4c7faea2114f2d70a57755f714e348476d28/ffmpeg-7.patch";
+      hash = "sha256-io+dzhDNlz+2hWhNfsyePKLQjiUvSzbv10lHVKumTEk=";
+    })
   ];
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ninja ];
 
-  buildInputs = [ ffmpeg_6 ] ++ lib.optionals stdenv.isDarwin
+  buildInputs = [ ffmpeg_7 ] ++ lib.optionals stdenv.hostPlatform.isDarwin
     (with darwin.apple_sdk.frameworks; [ Accelerate CoreGraphics CoreVideo zlib ]);
 
   cmakeFlags = [ "-DBUILD_EXAMPLES=ON" "-DBUILD_TOOLS=ON" ];
diff --git a/pkgs/development/libraries/clanlib/default.nix b/pkgs/development/libraries/clanlib/default.nix
index ee9ee04aa62fd..6369128d5a05c 100644
--- a/pkgs/development/libraries/clanlib/default.nix
+++ b/pkgs/development/libraries/clanlib/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, libGL
-, libpng
-, pkg-config
-, xorg
-, file
-, freetype
-, fontconfig
-, alsa-lib
-, libXrender
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  autoreconfHook,
+  libGL,
+  libpng,
+  pkg-config,
+  xorg,
+  freetype,
+  fontconfig,
+  alsa-lib,
+  libXrender,
 }:
 
 stdenv.mkDerivation rec {
@@ -24,10 +25,19 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-SVsLWcTP+PCIGDWLkadMpJPj4coLK9dJrW4sc2+HotE=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "clanlib-add-support-for-riscv.patch";
+      url = "https://github.com/sphair/ClanLib/commit/f5f694205054b66dc800135c9b01673f69a7a671.patch";
+      hash = "sha256-/1XLFaTZDQAlT2mG9P6SJzXtTg7IWYGQ18Sx0e9zh0s=";
+    })
+  ];
+
   nativeBuildInputs = [
     pkg-config
     autoreconfHook
   ];
+
   buildInputs = [
     libGL
     libpng
@@ -38,11 +48,11 @@ stdenv.mkDerivation rec {
     libXrender
   ];
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/sphair/ClanLib";
     description = "Cross platform toolkit library with a primary focus on game creation";
-    license = licenses.mit;
-    maintainers = with maintainers; [ nixinator ];
-    platforms = [ "x86_64-linux" ];
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ nixinator ];
+    platforms = with lib.platforms; lib.intersectLists linux (x86 ++ arm ++ aarch64 ++ riscv);
   };
 }
diff --git a/pkgs/development/libraries/classads/default.nix b/pkgs/development/libraries/classads/default.nix
index bbe342d98198b..0442c7d21209d 100644
--- a/pkgs/development/libraries/classads/default.nix
+++ b/pkgs/development/libraries/classads/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ];
 
   # error: use of undeclared identifier 'finite'; did you mean 'isfinite'?
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-Dfinite=isfinite";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-Dfinite=isfinite";
 
   meta = {
     homepage = "http://www.cs.wisc.edu/condor/classad/";
diff --git a/pkgs/development/libraries/clfft/default.nix b/pkgs/development/libraries/clfft/default.nix
index 824449b0fafcc..5843c1b1fcca2 100644
--- a/pkgs/development/libraries/clfft/default.nix
+++ b/pkgs/development/libraries/clfft/default.nix
@@ -23,8 +23,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ fftw fftwFloat boost ]
-    ++ lib.optionals stdenv.isLinux [ opencl-clhpp ocl-icd ]
-    ++ lib.optionals stdenv.isDarwin [ OpenCL ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ opencl-clhpp ocl-icd ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenCL ];
 
   # https://github.com/clMathLibraries/clFFT/issues/237
   CXXFLAGS = "-std=c++98";
diff --git a/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch b/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch
deleted file mode 100644
index 93407d5f9ff6e..0000000000000
--- a/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Clipper2.pc.cmakein b/Clipper2.pc.cmakein
-index 5632c93..0a5d6ba 100644
---- a/Clipper2.pc.cmakein
-+++ b/Clipper2.pc.cmakein
-@@ -1,7 +1,7 @@
- prefix=@CMAKE_INSTALL_PREFIX@
- exec_prefix=${prefix}
--libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
--includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
-+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
-+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
-
- Name: Clipper2@PCFILE_LIB_SUFFIX@
- Description: A Polygon Clipping and Offsetting library in C++
diff --git a/pkgs/development/libraries/clipper2/default.nix b/pkgs/development/libraries/clipper2/default.nix
deleted file mode 100644
index 4f4dee29ec988..0000000000000
--- a/pkgs/development/libraries/clipper2/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-}:
-
-stdenv.mkDerivation rec {
-  pname = "clipper2";
-  version = "1.3.0";
-
-  src = fetchFromGitHub {
-    owner = "AngusJohnson";
-    repo = "Clipper2";
-    rev = "Clipper2_${version}";
-    sha256 = "sha256-3TKhb48cABl0QcbeG12xlA1taQ/8/RdUUHSp0Qh85eE=";
-  };
-
-  sourceRoot = "${src.name}/CPP";
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  cmakeFlags = [
-    "-DCLIPPER2_EXAMPLES=OFF"
-    "-DCLIPPER2_TESTS=OFF"
-    "-DBUILD_SHARED_LIBS=ON"
-  ];
-
-  patches = [
-    ./0001-fix-pc-paths.patch
-  ];
-
-  meta = {
-    description = "Polygon Clipping and Offsetting - C++ Only";
-    longDescription = ''
-      The Clipper2 library performs intersection, union, difference and XOR boolean operations on both simple and
-      complex polygons. It also performs polygon offsetting.
-    '';
-    homepage = "https://github.com/AngusJohnson/Clipper2";
-    license = lib.licenses.boost;
-    maintainers = [ lib.maintainers.cadkin ];
-    platforms = lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/cloog-ppl/default.nix b/pkgs/development/libraries/cloog-ppl/default.nix
deleted file mode 100644
index 3a6f926b3f32f..0000000000000
--- a/pkgs/development/libraries/cloog-ppl/default.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ fetchurl, lib, stdenv, ppl, autoreconfHook }:
-
-stdenv.mkDerivation rec {
-  pname = "cloog-ppl";
-  version = "0.15.11";
-
-  src = fetchurl {
-    url = "mirror://gcc/infrastructure/${pname}-${version}.tar.gz";
-    sha256 = "0psdm0bn5gx60glfh955x5b3b23zqrd92idmjr0b00dlnb839mkw";
-  };
-
-  propagatedBuildInputs = [ ppl ];
-
-  nativeBuildInputs = [ autoreconfHook ];
-
-  patches = [ ./fix-ppl-version.patch ];
-
-  configureFlags = [ "--with-ppl=${ppl}" ];
-
-  preAutoreconf = ''
-    touch NEWS ChangeLog AUTHORS
-  '';
-
-  doCheck = true;
-
-  meta = {
-    description = "CLooG-PPL, the Chunky Loop Generator";
-    mainProgram = "cloog";
-
-    longDescription = ''
-      CLooG is a free software library to generate code for scanning
-      Z-polyhedra.  That is, it finds a code (e.g., in C, FORTRAN...) that
-      reaches each integral point of one or more parameterized polyhedra.
-      CLooG has been originally written to solve the code generation problem
-      for optimizing compilers based on the polytope model.  Nevertheless it
-      is used now in various area e.g., to build control automata for
-      high-level synthesis or to find the best polynomial approximation of a
-      function.  CLooG may help in any situation where scanning polyhedra
-      matters.  While the user has full control on generated code quality,
-      CLooG is designed to avoid control overhead and to produce a very
-      effective code.
-    '';
-
-    # CLooG-PPL is actually a port of GLooG from PolyLib to PPL.
-    homepage = "http://www.cloog.org/";
-
-    license = lib.licenses.gpl2Plus;
-
-    maintainers = [ ];
-
-    /* Leads to an ICE on Cygwin:
-
-       make[3]: Entering directory `/tmp/nix-build-9q5gw5m37q5l4f0kjfv9ar8fsc9plk27-ppl-0.10.2.drv-1/ppl-0.10.2/src'
-       /bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../src    -g -O2 -frounding-math  -W -Wall -c -o Box.lo Box.cc
-       libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -g -O2 -frounding-math -W -Wall -c Box.cc  -DDLL_EXPORT -DPIC -o .libs/Box.o
-       In file included from checked.defs.hh:595,
-                        from Checked_Number.defs.hh:27,
-                        from Coefficient.types.hh:15,
-                        from Coefficient.defs.hh:26,
-                        from Box.defs.hh:28,
-                        from Box.cc:24:
-       checked.inlines.hh: In function `Parma_Polyhedra_Library::Result Parma_Polyhedra_Library::Checked::input_generic(Type&, std::istream&, Parma_Polyhedra_Library::Rounding_Dir)':
-       checked.inlines.hh:607: internal compiler error: in invert_truthvalue, at fold-const.c:2719
-       Please submit a full bug report,
-       with preprocessed source if appropriate.
-       See <URL:http://cygwin.com/problems.html> for instructions.
-       make[3]: *** [Box.lo] Error 1
-
-    */
-    platforms = lib.platforms.unix; # Once had cygwin problems
-  };
-}
diff --git a/pkgs/development/libraries/cloog-ppl/fix-ppl-version.patch b/pkgs/development/libraries/cloog-ppl/fix-ppl-version.patch
deleted file mode 100644
index 8440d839411bc..0000000000000
--- a/pkgs/development/libraries/cloog-ppl/fix-ppl-version.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -rupN src/configure.in cloog-ppl-0.15.11/configure.in
---- src/configure.in	2014-04-13 13:33:43.349392305 +0200
-+++ cloog-ppl-0.15.11/configure.in	2014-04-13 13:34:12.695379888 +0200
-@@ -337,11 +337,7 @@ if test "x$with_ppl" != "x" -a "x$with_p
- 		        [AC_MSG_ERROR(Can't find PPL headers.)])
- 
- 	AC_MSG_CHECKING([for version 0.10 (or later revision) of PPL])
--	AC_TRY_COMPILE([#include "ppl_c.h"],[
--	#if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 10
--	choke me
--	#endif
--	], [AC_MSG_RESULT([yes])], [AC_MSG_ERROR(Can't find correct version of PPL.) ])
-+	AC_MSG_RESULT([yes])
- 
- 	LIBS="$LIBS -lppl_c -lppl -lgmpxx"
- 	AC_DEFINE([CLOOG_PPL_BACKEND], 1, [Use the PPL backend])
diff --git a/pkgs/development/libraries/cloog/0.18.0.nix b/pkgs/development/libraries/cloog/0.18.0.nix
deleted file mode 100644
index a1ba3aaf93f3a..0000000000000
--- a/pkgs/development/libraries/cloog/0.18.0.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-{ fetchurl, lib, stdenv, gmp, isl }:
-
-stdenv.mkDerivation rec {
-  pname = "cloog";
-  version = "0.18.0";
-
-  src = fetchurl {
-    url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-${version}.tar.gz";
-    sha256 = "1c4aa8dde7886be9cbe0f9069c334843b21028f61d344a2d685f88cb1dcf2228";
-  };
-
-  buildInputs = [ gmp ];
-
-  propagatedBuildInputs = [ isl ];
-
-  configureFlags = [ "--with-isl=system" ];
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  meta = {
-    description = "Library that generates loops for scanning polyhedra";
-    mainProgram = "cloog";
-
-    longDescription = ''
-      CLooG is a free software library to generate code for scanning
-      Z-polyhedra.  That is, it finds a code (e.g., in C, FORTRAN...) that
-      reaches each integral point of one or more parameterized polyhedra.
-      CLooG has been originally written to solve the code generation problem
-      for optimizing compilers based on the polytope model.  Nevertheless it
-      is used now in various area e.g., to build control automata for
-      high-level synthesis or to find the best polynomial approximation of a
-      function.  CLooG may help in any situation where scanning polyhedra
-      matters.  While the user has full control on generated code quality,
-      CLooG is designed to avoid control overhead and to produce a very
-      effective code.
-    '';
-
-    homepage = "http://www.cloog.org/";
-
-    license = lib.licenses.gpl2Plus;
-
-    /* Leads to an ICE on Cygwin:
-
-       make[3]: Entering directory `/tmp/nix-build-9q5gw5m37q5l4f0kjfv9ar8fsc9plk27-ppl-0.10.2.drv-1/ppl-0.10.2/src'
-       /bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../src    -g -O2 -frounding-math  -W -Wall -c -o Box.lo Box.cc
-       libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -g -O2 -frounding-math -W -Wall -c Box.cc  -DDLL_EXPORT -DPIC -o .libs/Box.o
-       In file included from checked.defs.hh:595,
-                        from Checked_Number.defs.hh:27,
-                        from Coefficient.types.hh:15,
-                        from Coefficient.defs.hh:26,
-                        from Box.defs.hh:28,
-                        from Box.cc:24:
-       checked.inlines.hh: In function `Parma_Polyhedra_Library::Result Parma_Polyhedra_Library::Checked::input_generic(Type&, std::istream&, Parma_Polyhedra_Library::Rounding_Dir)':
-       checked.inlines.hh:607: internal compiler error: in invert_truthvalue, at fold-const.c:2719
-       Please submit a full bug report,
-       with preprocessed source if appropriate.
-       See <URL:http://cygwin.com/problems.html> for instructions.
-       make[3]: *** [Box.lo] Error 1
-
-    */
-    platforms = lib.platforms.unix; # Once had cygwin problems
-  };
-}
diff --git a/pkgs/development/libraries/cloog/default.nix b/pkgs/development/libraries/cloog/default.nix
deleted file mode 100644
index 3ae266c61cddf..0000000000000
--- a/pkgs/development/libraries/cloog/default.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ fetchurl, lib, stdenv, gmp, isl }:
-
-stdenv.mkDerivation rec {
-  pname = "cloog";
-  version = "0.18.4";
-
-  src = fetchurl {
-    url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${pname}-${version}.tar.gz";
-    sha256 = "03km1aqaiy3sbqc2f046ms9x0mlmacxlvs5rxsvjj8nf20vxynij";
-  };
-
-  buildInputs = [ gmp ];
-
-  propagatedBuildInputs = [ isl ];
-
-  configureFlags = [ "--with-isl=system" ];
-
-  enableParallelBuilding = true;
-  # Breaks the test cases as it reuses 'cloog_temp' file name for different tests.
-  enableParallelChecking = false;
-
-  doCheck = true;
-
-  meta = {
-    description = "Library that generates loops for scanning polyhedra";
-    mainProgram = "cloog";
-
-    longDescription = ''
-      CLooG is a free software library to generate code for scanning
-      Z-polyhedra.  That is, it finds a code (e.g., in C, FORTRAN...) that
-      reaches each integral point of one or more parameterized polyhedra.
-      CLooG has been originally written to solve the code generation problem
-      for optimizing compilers based on the polytope model.  Nevertheless it
-      is used now in various area e.g., to build control automata for
-      high-level synthesis or to find the best polynomial approximation of a
-      function.  CLooG may help in any situation where scanning polyhedra
-      matters.  While the user has full control on generated code quality,
-      CLooG is designed to avoid control overhead and to produce a very
-      effective code.
-    '';
-
-    homepage = "http://www.cloog.org/";
-
-    license = lib.licenses.gpl2Plus;
-
-    /* Leads to an ICE on Cygwin:
-
-       make[3]: Entering directory `/tmp/nix-build-9q5gw5m37q5l4f0kjfv9ar8fsc9plk27-ppl-0.10.2.drv-1/ppl-0.10.2/src'
-       /bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../src    -g -O2 -frounding-math  -W -Wall -c -o Box.lo Box.cc
-       libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -g -O2 -frounding-math -W -Wall -c Box.cc  -DDLL_EXPORT -DPIC -o .libs/Box.o
-       In file included from checked.defs.hh:595,
-                        from Checked_Number.defs.hh:27,
-                        from Coefficient.types.hh:15,
-                        from Coefficient.defs.hh:26,
-                        from Box.defs.hh:28,
-                        from Box.cc:24:
-       checked.inlines.hh: In function `Parma_Polyhedra_Library::Result Parma_Polyhedra_Library::Checked::input_generic(Type&, std::istream&, Parma_Polyhedra_Library::Rounding_Dir)':
-       checked.inlines.hh:607: internal compiler error: in invert_truthvalue, at fold-const.c:2719
-       Please submit a full bug report,
-       with preprocessed source if appropriate.
-       See <URL:http://cygwin.com/problems.html> for instructions.
-       make[3]: *** [Box.lo] Error 1
-
-    */
-    platforms = lib.platforms.unix; # Once had cygwin problems
-  };
-}
diff --git a/pkgs/development/libraries/clucene-core/2.x.nix b/pkgs/development/libraries/clucene-core/2.x.nix
index d6049d2845137..6fc4ac289677a 100644
--- a/pkgs/development/libraries/clucene-core/2.x.nix
+++ b/pkgs/development/libraries/clucene-core/2.x.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
     # required for darwin and linux-musl
     ./pthread-include.patch
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ./fix-darwin.patch
 
     # see https://bugs.gentoo.org/869170
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   ];
 
   # see https://github.com/macports/macports-ports/commit/236d43f2450c6be52dc42fd3a2bbabbaa5136201
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/shared/CMakeLists.txt --replace 'fstati64;_fstati64;fstat64;fstat;_fstat' 'fstat;_fstat'
     substituteInPlace src/shared/CMakeLists.txt --replace 'stati64;_stati64;stat64;stat;_stat' 'stat;_stat'
   '';
diff --git a/pkgs/development/libraries/clutter-gst/default.nix b/pkgs/development/libraries/clutter-gst/default.nix
index 4d21cd10f8ef1..e741893168a93 100644
--- a/pkgs/development/libraries/clutter-gst/default.nix
+++ b/pkgs/development/libraries/clutter-gst/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
     license = lib.licenses.lgpl2Plus;
 
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/clutter-gtk/default.nix b/pkgs/development/libraries/clutter-gtk/default.nix
index 31743a8f68955..7800e82ff27ac 100644
--- a/pkgs/development/libraries/clutter-gtk/default.nix
+++ b/pkgs/development/libraries/clutter-gtk/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     description = "Clutter-GTK";
     homepage = "http://www.clutter-project.org/";
     license = lib.licenses.lgpl2Plus;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/clutter/default.nix b/pkgs/development/libraries/clutter/default.nix
index 804aa13ed91a9..bb7ddf08957f2 100644
--- a/pkgs/development/libraries/clutter/default.nix
+++ b/pkgs/development/libraries/clutter/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     atk
     json-glib
     gobject-introspection
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libX11
     libGL
     libGLU
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--enable-introspection" # needed by muffin AFAIK
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--without-x"
     "--enable-x11-backend=no"
     "--enable-quartz-backend=yes"
@@ -102,7 +102,7 @@ stdenv.mkDerivation rec {
     license = lib.licenses.lgpl2Plus;
     homepage = "http://www.clutter-project.org/";
 
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/cmark/default.nix b/pkgs/development/libraries/cmark/default.nix
index 5720f87c5bc4c..83407c64384db 100644
--- a/pkgs/development/libraries/cmark/default.nix
+++ b/pkgs/development/libraries/cmark/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cmark";
-  version = "0.31.0";
+  version = "0.31.1";
 
   src = fetchFromGitHub {
     owner = "commonmark";
     repo = pname;
     rev = version;
-    sha256 = "sha256-GBesKTp9DqoFAmCc0RB+XePvzV9g+w+oyrD1nCgyklI=";
+    sha256 = "sha256-+JLw7zCjjozjq1RhRQGFqHj/MTUTq3t7A0V3T2U2PQk=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   preCheck = let
-    lib_path = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH" else "LD_LIBRARY_PATH";
+    lib_path = if stdenv.hostPlatform.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH" else "LD_LIBRARY_PATH";
   in ''
     export ${lib_path}=$(readlink -f ./src)
   '';
diff --git a/pkgs/development/libraries/cminpack/default.nix b/pkgs/development/libraries/cminpack/default.nix
index 20782c8499cb9..81224c0fdaa36 100644
--- a/pkgs/development/libraries/cminpack/default.nix
+++ b/pkgs/development/libraries/cminpack/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = lib.optionals withBlas [
     blas
-  ] ++ lib.optionals (withBlas && stdenv.isDarwin) [
+  ] ++ lib.optionals (withBlas && stdenv.hostPlatform.isDarwin) [
     darwin.apple_sdk.frameworks.Accelerate
     darwin.apple_sdk.frameworks.CoreGraphics
     darwin.apple_sdk.frameworks.CoreVideo
diff --git a/pkgs/development/libraries/cmrt/default.nix b/pkgs/development/libraries/cmrt/default.nix
index 87c692b42cea1..2e3fc7a3a1982 100644
--- a/pkgs/development/libraries/cmrt/default.nix
+++ b/pkgs/development/libraries/cmrt/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libdrm libva ];
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
     homepage = "https://01.org/linuxmedia";
     description = "Intel C for Media Runtime";
     longDescription = "Media GPU kernel manager for Intel G45 & HD Graphics family";
diff --git a/pkgs/development/libraries/codec2/default.nix b/pkgs/development/libraries/codec2/default.nix
index 7f127870032cf..308db170bc329 100644
--- a/pkgs/development/libraries/codec2/default.nix
+++ b/pkgs/development/libraries/codec2/default.nix
@@ -4,7 +4,6 @@
 , cmake
 , freedvSupport ? false
 , lpcnetfreedv
-, codec2
 }:
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix
index b233113e951fd..db34dc1669b18 100644
--- a/pkgs/development/libraries/cogl/default.nix
+++ b/pkgs/development/libraries/cogl/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--enable-introspection"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     "--enable-kms-egl-platform"
     "--enable-wayland-egl-platform"
     "--enable-wayland-egl-server"
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     # Force linking against libGL.
     # Otherwise, it tries to load it from the runtime library path.
     "LIBS=-lGL"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--disable-glx"
     "--without-x"
   ] ++ lib.optionals gstreamerSupport [
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
     glib
     gdk-pixbuf
     gobject-introspection
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     wayland
     mesa
     libGL
@@ -82,10 +82,10 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = lib.optionals pangoSupport [ pango cairo harfbuzz ]
-    ++ lib.optionals stdenv.isDarwin [ OpenGL ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenGL ];
 
   env = {
-    COGL_PANGO_DEP_CFLAGS = toString (lib.optionals (stdenv.isDarwin && pangoSupport) [
+    COGL_PANGO_DEP_CFLAGS = toString (lib.optionals (stdenv.hostPlatform.isDarwin && pangoSupport) [
       "-I${pango.dev}/include/pango-1.0"
       "-I${cairo.dev}/include/cairo"
       "-I${harfbuzz.dev}/include/harfbuzz"
diff --git a/pkgs/development/libraries/coin3d/default.nix b/pkgs/development/libraries/coin3d/default.nix
index e1a5db9c0f19a..a0d1ae07d636f 100644
--- a/pkgs/development/libraries/coin3d/default.nix
+++ b/pkgs/development/libraries/coin3d/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "coin";
-  version = "4.0.2";
+  version = "4.0.3";
 
   src = fetchFromGitHub {
     owner = "coin3d";
     repo = "coin";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-tBegPZQme5McC0HGvjjdIBQQl59Ud4aJk2hONWMzEdc=";
+    hash = "sha256-dUFmcUOdNc3ZFtr+Hnh3Q3OY/JA/WxmiRJiU2RFSSus=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
     boost
     libGL
     libGLU
-  ] ++ lib.optional stdenv.isLinux libX11;
+  ] ++ lib.optional stdenv.hostPlatform.isLinux libX11;
 
   cmakeFlags = [ "-DCOIN_USE_CPACK=OFF" ];
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "High-level, retained-mode toolkit for effective 3D graphics development";
     mainProgram = "coin-config";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ gebner viric ];
+    maintainers = with maintainers; [ gebner ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 })
diff --git a/pkgs/development/libraries/cpp-utilities/default.nix b/pkgs/development/libraries/cpp-utilities/default.nix
index bc738ae976c99..1d838b0ba2a29 100644
--- a/pkgs/development/libraries/cpp-utilities/default.nix
+++ b/pkgs/development/libraries/cpp-utilities/default.nix
@@ -8,18 +8,18 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "cpp-utilities";
-  version = "5.24.9";
+  version = "5.26.1";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "cpp-utilities";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-L0F9CkA/yWl7YfJtSBvSGSLTh2g7loIlpZMiC/ACU2k=";
+    sha256 = "sha256-ft8gusZ6We3nEAOwccGrUidxpO5tdWR5VNDQ/r5l2P8=";
   };
 
   nativeBuildInputs = [ cmake ];
   nativeCheckInputs = [ cppunit ];
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv # needed on Darwin, see https://github.com/Martchus/cpp-utilities/issues/4
   ];
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
     )
   '';
   # tests fail on Darwin
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     homepage = "https://github.com/Martchus/cpp-utilities";
diff --git a/pkgs/development/libraries/cppcms/default.nix b/pkgs/development/libraries/cppcms/default.nix
index 718c73fd3f5fa..86aa687aaa71e 100644
--- a/pkgs/development/libraries/cppcms/default.nix
+++ b/pkgs/development/libraries/cppcms/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-aXAxx9FB/dIVxr5QkLZuIQamO7PlLwnugSDo78bAiiE=";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ pcre zlib python3 openssl ];
+  nativeBuildInputs = [ cmake python3 ];
+  buildInputs = [ pcre zlib openssl ];
 
   strictDeps = true;
 
diff --git a/pkgs/development/libraries/cppcodec/default.nix b/pkgs/development/libraries/cppcodec/default.nix
index d3ead22f6b134..99a8eda1477c6 100644
--- a/pkgs/development/libraries/cppcodec/default.nix
+++ b/pkgs/development/libraries/cppcodec/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "tplgy";
-    repo = finalAttrs.pname;
+    repo = "cppcodec";
     rev = "v${finalAttrs.version}";
     hash = "sha256-k4EACtDOSkTXezTeFtVdM1EVJjvGga/IQSrvDzhyaXw=";
   };
diff --git a/pkgs/development/libraries/cracklib/default.nix b/pkgs/development/libraries/cracklib/default.nix
index 44c615b38abcf..bc69141bb9889 100644
--- a/pkgs/development/libraries/cracklib/default.nix
+++ b/pkgs/development/libraries/cracklib/default.nix
@@ -1,8 +1,8 @@
-let version = "2.9.11"; in
-{ stdenv, lib, buildPackages, fetchurl, zlib, gettext
+let version = "2.10.0"; in
+{ stdenv, lib, buildPackages, fetchurl, zlib, gettext, fetchpatch2
 , lists ? [ (fetchurl {
   url = "https://github.com/cracklib/cracklib/releases/download/v${version}/cracklib-words-${version}.gz";
-  hash = "sha256-popxGjE1c517Z+nzYLM/DU7M+b1/rE0XwNXkVqkcUXo=";
+  hash = "sha256-JDLo/bSLIijC2DUl+8Q704i2zgw5cxL6t68wvuivPpY=";
 }) ]
 }:
 
@@ -12,9 +12,19 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    hash = "sha256-yosEmjwtOyIloejRXWE3mOvHSOOVA4jtomlN5Qe6YCA=";
+    hash = "sha256-cAw5YMplCx6vAhfWmskZuBHyB1o4dGd7hMceOG3V51Y=";
   };
 
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
+    # Fixes build failure on Darwin due to missing byte order functions.
+    # https://github.com/cracklib/cracklib/pull/96
+    (fetchpatch2 {
+      url = "https://github.com/cracklib/cracklib/commit/dff319e543272c1fb958261cf9ee8bb82960bc40.patch";
+      hash = "sha256-QaWpEVV6l1kl4OIkJAqkXPVThbo040Rv9X2dY/+syqs=";
+      stripLen = 1;
+    })
+  ];
+
   nativeBuildInputs = lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.cracklib;
   buildInputs = [ zlib gettext ];
 
diff --git a/pkgs/development/libraries/crc32c/default.nix b/pkgs/development/libraries/crc32c/default.nix
index 3b27601bcbfdc..07da71e326706 100644
--- a/pkgs/development/libraries/crc32c/default.nix
+++ b/pkgs/development/libraries/crc32c/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
   buildInputs = [ gflags ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isAarch64 "-march=armv8-a+crc";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isAarch64 "-march=armv8-a+crc";
 
   cmakeFlags = [
     "-DCRC32C_INSTALL=1"
diff --git a/pkgs/development/libraries/crocoddyl/default.nix b/pkgs/development/libraries/crocoddyl/default.nix
deleted file mode 100644
index 394efd6317d80..0000000000000
--- a/pkgs/development/libraries/crocoddyl/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, example-robot-data
-, pinocchio
-, pythonSupport ? false
-, python3Packages
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "crocoddyl";
-  version = "2.1.0";
-
-  src = fetchFromGitHub {
-    owner = "loco-3d";
-    repo = finalAttrs.pname;
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-SVV9sleDXLm2QJmNgL25XLHC3y5bfKab4GSlE8jbT8w=";
-  };
-
-  strictDeps = true;
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  propagatedBuildInputs = lib.optionals (!pythonSupport) [
-    example-robot-data
-    pinocchio
-  ] ++ lib.optionals pythonSupport [
-    python3Packages.example-robot-data
-    python3Packages.pinocchio
-  ];
-
-  cmakeFlags = lib.optionals (!pythonSupport) [
-    "-DBUILD_EXAMPLES=OFF"
-    "-DBUILD_PYTHON_INTERFACE=OFF"
-  ];
-
-  prePatch = ''
-    substituteInPlace \
-      examples/CMakeLists.txt \
-      examples/log/check_logfiles.sh \
-      --replace /bin/bash ${stdenv.shell}
-  '';
-
-  doCheck = true;
-  pythonImportsCheck = [
-    "crocoddyl"
-  ];
-  checkInputs = lib.optionals pythonSupport [
-    python3Packages.scipy
-  ];
-
-  meta = with lib; {
-    description = "Crocoddyl optimal control library";
-    homepage = "https://github.com/loco-3d/crocoddyl";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ nim65s wegank ];
-    platforms = platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/crossguid/default.nix b/pkgs/development/libraries/crossguid/default.nix
index 2b98aca1d66d6..cd8f95957c4eb 100644
--- a/pkgs/development/libraries/crossguid/default.nix
+++ b/pkgs/development/libraries/crossguid/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional stdenv.isLinux libuuid;
+  buildInputs = lib.optional stdenv.hostPlatform.isLinux libuuid;
 
   passthru.updateScript = unstableGitUpdater {
     tagPrefix = "v";
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "Lightweight cross platform C++ GUID/UUID library";
     license = licenses.mit;
     homepage = "https://github.com/graeme-hill/crossguid";
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/ctpl/default.nix b/pkgs/development/libraries/ctpl/default.nix
index c9925d162f995..ad8e192c0a7ad 100644
--- a/pkgs/development/libraries/ctpl/default.nix
+++ b/pkgs/development/libraries/ctpl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ctpl";
-  version = "0.3.4";
+  version = "0.3.5";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/ctpl/releases/ctpl-${version}.tar.gz";
-    sha256 = "1yr92xv9n6kgyixwg9ps4zb404ic5pgb171k4bi3mv9p6k8gv59s";
+    sha256 = "sha256-IRCPx1Z+0hbe6kWRrb/s6OiLH0uxynfDdACSBkTXVr4=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/libraries/ctranslate2/default.nix b/pkgs/development/libraries/ctranslate2/default.nix
index c640d5f700e26..b126cff5b24ad 100644
--- a/pkgs/development/libraries/ctranslate2/default.nix
+++ b/pkgs/development/libraries/ctranslate2/default.nix
@@ -24,13 +24,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "ctranslate2";
-  version = "4.3.1";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "OpenNMT";
     repo = "CTranslate2";
     rev = "v${version}";
-    hash = "sha256-ApmGto9RzT8t49bsZVwk8aQnIau9sQyFvt9qnWKUGAE=";
+    hash = "sha256-E/ulk+Oo1zEP+sCKMZuMVSoO0MDjQ2opTflSwLmCJMw=";
     fetchSubmodules = true;
   };
 
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     "-DWITH_RUY=${cmakeBool withRuy}"
     "-DWITH_MKL=${cmakeBool withMkl}"
   ]
-  ++ lib.optional stdenv.isDarwin "-DWITH_ACCELERATE=ON";
+  ++ lib.optional stdenv.hostPlatform.isDarwin "-DWITH_ACCELERATE=ON";
 
   buildInputs = lib.optionals withMkl [
     mkl
@@ -67,10 +67,10 @@ stdenv.mkDerivation rec {
     oneDNN
   ] ++ lib.optionals withOpenblas [
     openblas
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     llvmPackages.openmp
     darwin.apple_sdk.frameworks.Accelerate
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     darwin.apple_sdk.frameworks.CoreGraphics
     darwin.apple_sdk.frameworks.CoreVideo
   ];
diff --git a/pkgs/development/libraries/ctypes_sh/default.nix b/pkgs/development/libraries/ctypes_sh/default.nix
index 56b463087f3d3..44f71982062cd 100644
--- a/pkgs/development/libraries/ctypes_sh/default.nix
+++ b/pkgs/development/libraries/ctypes_sh/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     mainProgram = "ctypes.sh";
     homepage = "https://github.com/taviso/ctypes.sh";
     license = licenses.mit;
-    maintainers = with maintainers; [ tadeokondrak ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/cyrus-sasl/default.nix b/pkgs/development/libraries/cyrus-sasl/default.nix
index 7eb13f7136c72..60a0d8569a138 100644
--- a/pkgs/development/libraries/cyrus-sasl/default.nix
+++ b/pkgs/development/libraries/cyrus-sasl/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ openssl db gettext libkrb5 libxcrypt ]
     ++ lib.optional enableLdap openldap
-    ++ lib.optional stdenv.isLinux pam;
+    ++ lib.optional stdenv.hostPlatform.isLinux pam;
 
   configureFlags = [
     "--with-openssl=${openssl.dev}"
@@ -41,9 +41,13 @@ stdenv.mkDerivation rec {
     "--with-saslauthd=/run/saslauthd"
     "--enable-login"
     "--enable-shared"
-  ] ++ lib.optional enableLdap "--with-ldap=${openldap.dev}";
+  ] ++ lib.optional enableLdap "--with-ldap=${openldap.dev}"
+    ++ lib.optionals (stdenv.targetPlatform.useLLVM or false) [
+      "--disable-sample"
+      "CFLAGS=-DTIME_WITH_SYS_TIME"
+    ];
 
-  installFlags = lib.optionals stdenv.isDarwin [ "framedir=$(out)/Library/Frameworks/SASL2.framework" ];
+  installFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "framedir=$(out)/Library/Frameworks/SASL2.framework" ];
 
   passthru.tests = {
     inherit (nixosTests) parsedmarc postfix;
diff --git a/pkgs/development/libraries/dav1d/default.nix b/pkgs/development/libraries/dav1d/default.nix
index 96d560b187855..d0b77e2477c9c 100644
--- a/pkgs/development/libraries/dav1d/default.nix
+++ b/pkgs/development/libraries/dav1d/default.nix
@@ -26,13 +26,13 @@ assert useVulkan -> withExamples;
 
 stdenv.mkDerivation rec {
   pname = "dav1d";
-  version = "1.4.1";
+  version = "1.4.3";
 
   src = fetchFromGitHub {
     owner = "videolan";
     repo = pname;
     rev = version;
-    hash = "sha256-PBFQrGGP7hKNMuwkl7q/7/C7v41xqdOYW+pJ70fI4Uo=";
+    hash = "sha256-uudtA9ZpGIpw1yfCzbywFyH7EWYHuXfE6pBb2eksx1g=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/db/clang-4.8.patch b/pkgs/development/libraries/db/clang-4.8.patch
index 0aff876820373..bf0de55fc1bf6 100644
--- a/pkgs/development/libraries/db/clang-4.8.patch
+++ b/pkgs/development/libraries/db/clang-4.8.patch
@@ -153,22 +153,42 @@ diff -ur a/dist/aclocal/clock.m4 b/dist/aclocal/clock.m4
 diff -ur a/dist/aclocal/mutex.m4 b/dist/aclocal/mutex.m4
 --- a/dist/aclocal/mutex.m4	1969-12-31 19:00:01.000000000 -0500
 +++ b/dist/aclocal/mutex.m4	2023-06-05 19:14:47.214158196 -0400
-@@ -4,6 +4,7 @@
+@@ -3,7 +3,9 @@
+ # POSIX pthreads tests: inter-process safe and intra-process only.
  AC_DEFUN(AM_PTHREADS_SHARED, [
  AC_TRY_RUN([
++#include <stdlib.h>
  #include <pthread.h>
 +int
  main() {
  	pthread_cond_t cond;
  	pthread_mutex_t mutex;
-@@ -46,6 +47,7 @@
+@@ -24,6 +26,7 @@ main() {
+ 	pthread_mutexattr_destroy(&mutexattr));
+ }], [db_cv_mutex="$1"],,
+ AC_TRY_LINK([
++#include <stdlib.h>
+ #include <pthread.h>],[
+ 	pthread_cond_t cond;
+ 	pthread_mutex_t mutex;
+@@ -45,7 +48,9 @@ AC_TRY_LINK([
+ ], [db_cv_mutex="$1"]))])
  AC_DEFUN(AM_PTHREADS_PRIVATE, [
  AC_TRY_RUN([
++#include <stdlib.h>
  #include <pthread.h>
 +int
  main() {
  	pthread_cond_t cond;
  	pthread_mutex_t mutex;
+@@ -64,6 +69,7 @@ main() {
+ 	pthread_mutexattr_destroy(&mutexattr));
+ }], [db_cv_mutex="$1"],,
+ AC_TRY_LINK([
++#include <stdlib.h>
+ #include <pthread.h>],[
+ 	pthread_cond_t cond;
+ 	pthread_mutex_t mutex;
 diff -ur a/dist/aclocal/sequence.m4 b/dist/aclocal/sequence.m4
 --- a/dist/aclocal/sequence.m4	1969-12-31 19:00:01.000000000 -0500
 +++ b/dist/aclocal/sequence.m4	2023-06-05 19:14:02.007869956 -0400
@@ -183,7 +203,7 @@ diff -ur a/dist/aclocal/sequence.m4 b/dist/aclocal/sequence.m4
  			$db_cv_seq_type l;
  			unsigned $db_cv_seq_type u;
 @@ -59,7 +62,9 @@
-				return (1);
+ 				return (1);
  			return (0);
  		}],, [db_cv_build_sequence="no"],
 -		AC_TRY_LINK(,[
diff --git a/pkgs/development/libraries/db/db-4.8.nix b/pkgs/development/libraries/db/db-4.8.nix
index 4d6029d6d8211..81705374381e7 100644
--- a/pkgs/development/libraries/db/db-4.8.nix
+++ b/pkgs/development/libraries/db/db-4.8.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, fetchurl, autoreconfHook, targetPlatform, ... } @ args:
+{ lib, stdenv, fetchurl, autoreconfHook, ... } @ args:
 
-import ./generic.nix (builtins.removeAttrs args ["targetPlatform"] // {
+import ./generic.nix (args // {
   version = "4.8.30";
   sha256 = "0ampbl2f0hb1nix195kz1syrqqxpmvnvnfvphambj7xjrl3iljg0";
   extraPatches = [
@@ -9,8 +9,6 @@ import ./generic.nix (builtins.removeAttrs args ["targetPlatform"] // {
     ./darwin-mutexes-4.8.patch
   ];
 
-  drvArgs.configureFlags = lib.optional (targetPlatform.useLLVM or false) "--with-mutex=POSIX/pthreads";
-
   drvArgs.hardeningDisable = [ "format" ];
   drvArgs.doCheck = false;
 })
diff --git a/pkgs/development/libraries/db/generic.nix b/pkgs/development/libraries/db/generic.nix
index ddb4139e116d1..936aed633a449 100644
--- a/pkgs/development/libraries/db/generic.nix
+++ b/pkgs/development/libraries/db/generic.nix
@@ -67,8 +67,7 @@ stdenv.mkDerivation (rec {
       (if compat185 then "--enable-compat185" else "--disable-compat185")
     ]
     ++ lib.optional dbmSupport "--enable-dbm"
-    ++ lib.optional stdenv.isFreeBSD "--with-pic"
-    ++ (drvArgs.configureFlags or []);
+    ++ lib.optional stdenv.hostPlatform.isFreeBSD "--with-pic";
 
   preConfigure = ''
     cd build_unix
@@ -93,4 +92,4 @@ stdenv.mkDerivation (rec {
     license = license;
     platforms = platforms.unix;
   };
-} // builtins.removeAttrs drvArgs [ "configureFlags" ])
+} // drvArgs)
diff --git a/pkgs/development/libraries/dbus-cplusplus/default.nix b/pkgs/development/libraries/dbus-cplusplus/default.nix
index 13776e891ce50..95dbdce239c79 100644
--- a/pkgs/development/libraries/dbus-cplusplus/default.nix
+++ b/pkgs/development/libraries/dbus-cplusplus/default.nix
@@ -64,6 +64,6 @@ stdenv.mkDerivation rec {
     description = "C++ API for D-BUS";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix
index cb5fe9e4fbd3e..017c83c5b11d8 100644
--- a/pkgs/development/libraries/dbus/default.nix
+++ b/pkgs/development/libraries/dbus/default.nix
@@ -13,7 +13,7 @@
 , xmlto
 , autoreconfHook
 , autoconf-archive
-, x11Support ? (stdenv.isLinux || stdenv.isDarwin)
+, x11Support ? (stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isDarwin)
 , xorg
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-uh8h0r2dM52i1KqHgMCd8y/qh5mLc9ok9Jq53x42pQ8=";
   };
 
-  patches = lib.optional stdenv.isSunOS ./implement-getgrouplist.patch;
+  patches = lib.optional stdenv.hostPlatform.isSunOS ./implement-getgrouplist.patch;
 
   postPatch = ''
     substituteInPlace bus/Makefile.am \
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
       libICE
       libSM
     ]) ++ lib.optional enableSystemd systemdMinimal
-    ++ lib.optionals stdenv.isLinux [ audit libapparmor ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ audit libapparmor ];
   # ToDo: optional selinux?
 
   __darwinAllowLocalNetworking = true;
@@ -84,10 +84,10 @@ stdenv.mkDerivation rec {
     "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
     "--with-systemduserunitdir=${placeholder "out"}/etc/systemd/user"
   ] ++ lib.optional (!x11Support) "--without-x"
-  ++ lib.optionals stdenv.isLinux [ "--enable-apparmor" "--enable-libaudit" ]
+  ++ lib.optionals stdenv.hostPlatform.isLinux [ "--enable-apparmor" "--enable-libaudit" ]
   ++ lib.optionals enableSystemd [ "SYSTEMCTL=${systemdMinimal}/bin/systemctl" ];
 
-  NIX_CFLAGS_LINK = lib.optionalString (!stdenv.isDarwin) "-Wl,--as-needed";
+  NIX_CFLAGS_LINK = lib.optionalString (!stdenv.hostPlatform.isDarwin) "-Wl,--as-needed";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/dbus/make-dbus-conf.nix b/pkgs/development/libraries/dbus/make-dbus-conf.nix
index 0a8b630d073b1..d6e3e86200cf0 100644
--- a/pkgs/development/libraries/dbus/make-dbus-conf.nix
+++ b/pkgs/development/libraries/dbus/make-dbus-conf.nix
@@ -1,5 +1,4 @@
 { runCommand
-, writeText
 , libxslt
 , dbus
 , findXMLCatalogs
diff --git a/pkgs/development/libraries/dbxml/default.nix b/pkgs/development/libraries/dbxml/default.nix
index f50b53d47e05c..207904b96cdc9 100644
--- a/pkgs/development/libraries/dbxml/default.nix
+++ b/pkgs/development/libraries/dbxml/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.oracle.com/database/berkeley-db/xml.html";
     description = "Embeddable XML database based on Berkeley DB";
     license = licenses.agpl3Only;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/dclxvi/default.nix b/pkgs/development/libraries/dclxvi/default.nix
index ac2664a1c9f99..34340a406a508 100644
--- a/pkgs/development/libraries/dclxvi/default.nix
+++ b/pkgs/development/libraries/dclxvi/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   patchPhase = ''
     substituteInPlace Makefile \
       --replace "gcc" "cc"
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile \
       --replace "-soname=libdclxvipairing.so" "-install_name,libdclxvipairing.so"
   '';
diff --git a/pkgs/development/libraries/dconf/default.nix b/pkgs/development/libraries/dconf/default.nix
index ab3804dfcf3ba..1aad769c6db22 100644
--- a/pkgs/development/libraries/dconf/default.nix
+++ b/pkgs/development/libraries/dconf/default.nix
@@ -14,6 +14,7 @@
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_42
+, nixosTests
 , withDocs ? true
 }:
 
@@ -60,7 +61,7 @@ stdenv.mkDerivation rec {
     dbus # for dbus-daemon
   ];
 
-  doCheck = !stdenv.isAarch32 && !stdenv.isAarch64 && !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64 && !stdenv.hostPlatform.isDarwin;
 
   postPatch = ''
     chmod +x meson_post_install.py tests/test-dconf.py
@@ -73,6 +74,7 @@ stdenv.mkDerivation rec {
       packageName = pname;
       versionPolicy = "odd-unstable";
     };
+    tests = { inherit (nixosTests) dconf; };
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/discord-rpc/default.nix b/pkgs/development/libraries/discord-rpc/default.nix
index 213096f5abf12..05837c823c564 100644
--- a/pkgs/development/libraries/discord-rpc/default.nix
+++ b/pkgs/development/libraries/discord-rpc/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     rapidjson
-  ] ++ lib.optional stdenv.isDarwin AppKit;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin AppKit;
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=true"
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     description = "Official library to interface with the Discord client";
     homepage = "https://github.com/discordapp/discord-rpc";
     license = licenses.mit;
-    maintainers = with maintainers; [ tadeokondrak ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix
index e7915ad652144..8d85fc3325e22 100644
--- a/pkgs/development/libraries/dlib/default.nix
+++ b/pkgs/development/libraries/dlib/default.nix
@@ -19,13 +19,13 @@
 }@inputs:
 (if cudaSupport then cudaPackages.backendStdenv else inputs.stdenv).mkDerivation rec {
   pname = "dlib";
-  version = "19.24.4";
+  version = "19.24.6";
 
   src = fetchFromGitHub {
     owner = "davisking";
     repo = "dlib";
-    rev = "v${version}";
-    sha256 = "sha256-1A/9u+ThtUtmmSwnFSn8S65Yavucl2X+o3bNYgew0Oc=";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-BpE7ZrtiiaDqwy1G4IHOQBJMr6sAadFbRxsdObs1SIY=";
   };
 
   postPatch = ''
@@ -57,23 +57,13 @@
   ]
   ++ lib.optionals guiSupport [ libX11 ]
   ++ lib.optionals cudaSupport (with cudaPackages; [
-    cuda_cudart.dev
-    cuda_cudart.lib
-    cuda_cudart.static
-    cuda_nvcc.dev
-    libcublas.dev
-    libcublas.lib
-    libcublas.static
-    libcurand.dev
-    libcurand.lib
-    libcurand.static
-    libcusolver.dev
-    libcusolver.lib
-    libcusolver.static
-    cudnn.dev
-    cudnn.lib
-    cudnn.static
-    cuda_cccl.dev
+    cuda_cudart
+    cuda_nvcc
+    libcublas
+    libcurand
+    libcusolver
+    cudnn
+    cuda_cccl
   ]);
 
   passthru = {
diff --git a/pkgs/development/libraries/doctest/default.nix b/pkgs/development/libraries/doctest/default.nix
index 1acddbbd12ec6..1ce0855444927 100644
--- a/pkgs/development/libraries/doctest/default.nix
+++ b/pkgs/development/libraries/doctest/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, installShellFiles, cmake }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
 
 stdenv.mkDerivation rec {
   pname = "doctest";
diff --git a/pkgs/development/libraries/double-conversion/default.nix b/pkgs/development/libraries/double-conversion/default.nix
index cdca8c574fffa..857bb48c11543 100644
--- a/pkgs/development/libraries/double-conversion/default.nix
+++ b/pkgs/development/libraries/double-conversion/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, cmake }:
+{ stdenv, lib, fetchFromGitHub, cmake, enableStatic ? stdenv.hostPlatform.isStatic }:
 
 stdenv.mkDerivation rec {
   pname = "double-conversion";
@@ -13,10 +13,10 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+  cmakeFlags = lib.optional (! enableStatic) "-DBUILD_SHARED_LIBS=ON";
 
   # Case sensitivity issue
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     rm BUILD
   '';
 
diff --git a/pkgs/development/libraries/dqlite/default.nix b/pkgs/development/libraries/dqlite/default.nix
index d0a8bdbafb240..4ef75a9ee469b 100644
--- a/pkgs/development/libraries/dqlite/default.nix
+++ b/pkgs/development/libraries/dqlite/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dqlite";
-  version = "1.16.5";
+  version = "1.16.7";
 
   src = fetchFromGitHub {
     owner = "canonical";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-dk4OEQuADPMfdfAmrgA36Bdzo6qm5Ak4/Rw/L9C75a0=";
+    hash = "sha256-XQvJO4sFKRKDVdtoXP2Ue80otDC0Ry6EB1Z0shetuhw=";
   };
 
   nativeBuildInputs = [ autoreconfHook file pkg-config ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://dqlite.io/";
     license = licenses.asl20;
-    maintainers = teams.lxc.members;
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/drogon/default.nix b/pkgs/development/libraries/drogon/default.nix
index 1710d6046e338..701e75ff5f2bb 100644
--- a/pkgs/development/libraries/drogon/default.nix
+++ b/pkgs/development/libraries/drogon/default.nix
@@ -9,21 +9,21 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "drogon";
-  version = "1.9.4";
+  version = "1.9.7";
 
   src = fetchFromGitHub {
     owner = "drogonframework";
     repo = "drogon";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-P6blu3EIBzmK1zikFPiV+tvFLfiQhK+cRdClQOhcBSU=";
+    hash = "sha256-YmN02OvCllxADAIicWKaTevrbAsP/ZbnhBd/hjqqz7A=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = [
-    "-DBUILD_TESTING=${if finalAttrs.finalPackage.doInstallCheck then "ON" else "OFF"}"
-    "-DBUILD_EXAMPLES=OFF"
+    (lib.cmakeBool "BUILD_TESTING" finalAttrs.finalPackage.doInstallCheck)
+    (lib.cmakeBool "BUILD_EXAMPLES" false)
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/libraries/drogon/fix_find_package.patch b/pkgs/development/libraries/drogon/fix_find_package.patch
index b76dbfe488305..49754b9fa2201 100644
--- a/pkgs/development/libraries/drogon/fix_find_package.patch
+++ b/pkgs/development/libraries/drogon/fix_find_package.patch
@@ -1,13 +1,13 @@
-diff --git a/test.sh b/test.sh
-index f017b9a..027031e 100755
---- a/test.sh
-+++ b/test.sh
-@@ -135,7 +135,7 @@ if [ $os = "windows" ]; then
-   conan install $src_dir -s compiler="Visual Studio" -s compiler.version=16 -sbuild_type=Debug -g cmake_paths
-   cmake_gen="$cmake_gen -DCMAKE_TOOLCHAIN_FILE=conan_paths.cmake -DCMAKE_INSTALL_PREFIX=$src_dir/install"
- fi
--cmake .. $cmake_gen
-+cmake .. $cmake_gen -DDrogon_DIR=$out/lib/cmake/Drogon -DTrantor_DIR=$out/lib/cmake/Trantor
+diff --git i/test.sh w/test.sh
+index 4796ff11..a6627fec 100755
+--- i/test.sh
++++ w/test.sh
+@@ -148,7 +148,7 @@ function do_drogon_ctl_test()
+                               -DCMAKE_POLICY_DEFAULT_CMP0091=NEW \
+                               -DCMAKE_CXX_STANDARD=17"
+     fi
+-    cmake .. $cmake_gen
++    cmake .. $cmake_gen -DDrogon_DIR=$out/lib/cmake/Drogon -DTrantor_DIR=$out/lib/cmake/Trantor
  
- if [ $? -ne 0 ]; then
-     echo "Failed to run CMake for example project"
+     if [ $? -ne 0 ]; then
+         echo "Failed to run CMake for example project"
diff --git a/pkgs/development/libraries/drumstick/default.nix b/pkgs/development/libraries/drumstick/default.nix
index 4b797031696a9..3f2b1ba026abc 100644
--- a/pkgs/development/libraries/drumstick/default.nix
+++ b/pkgs/development/libraries/drumstick/default.nix
@@ -1,6 +1,23 @@
-{ lib, stdenv, fetchurl
-, cmake, docbook_xml_dtd_45, docbook_xsl, doxygen, graphviz-nox, pkg-config, qttools, wrapQtAppsHook
-, alsa-lib, fluidsynth, libpulseaudio, qtbase, qtsvg, sonivox, qt5compat ? null
+{
+  lib,
+  stdenv,
+  fetchurl,
+  cmake,
+  docbook_xml_dtd_45,
+  docbook_xsl,
+  doxygen,
+  graphviz-nox,
+  pkg-config,
+  qttools,
+  wrapQtAppsHook,
+  alsa-lib,
+  fluidsynth,
+  libpulseaudio,
+  qtbase,
+  qtsvg,
+  qtwayland,
+  sonivox,
+  qt5compat ? null,
 }:
 
 let
@@ -8,29 +25,45 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "drumstick";
-  version = "2.9.0";
+  version = "2.9.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumstick/${version}/${pname}-${version}.tar.bz2";
-    hash = "sha256-p0N8EeCtVEPCGzPwiRxPdI1XT5XQ5pcKYEDJXbYYTrM=";
+    hash = "sha256-U5Cm9pTDxC8NzyQfjaC/eBBDUWELV4jq4ov4QGefM9g=";
   };
 
-  patches = [
-    ./drumstick-plugins.patch
-  ];
+  patches = [ ./drumstick-plugins.patch ];
 
   postPatch = ''
     substituteInPlace library/rt/backendmanager.cpp --subst-var out
   '';
 
-  outputs = [ "out" "dev" "man" ];
+  outputs = [
+    "out"
+    "dev"
+    "man"
+  ];
 
   nativeBuildInputs = [
-    cmake docbook_xml_dtd_45 docbook_xml_dtd_45 docbook_xsl doxygen graphviz-nox pkg-config qttools wrapQtAppsHook
+    cmake
+    docbook_xml_dtd_45
+    docbook_xml_dtd_45
+    docbook_xsl
+    doxygen
+    graphviz-nox
+    pkg-config
+    qttools
+    wrapQtAppsHook
   ];
 
   buildInputs = [
-    alsa-lib fluidsynth libpulseaudio qtbase qtsvg sonivox
+    alsa-lib
+    fluidsynth
+    libpulseaudio
+    qtbase
+    qtsvg
+    qtwayland
+    sonivox
   ] ++ lib.optionals isQt6 [ qt5compat ];
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/duckdb/default.nix b/pkgs/development/libraries/duckdb/default.nix
index c222b117fff94..6ca7bd5163832 100644
--- a/pkgs/development/libraries/duckdb/default.nix
+++ b/pkgs/development/libraries/duckdb/default.nix
@@ -45,11 +45,6 @@ stdenv.mkDerivation (finalAttrs: {
     "-DBUILD_UNITTESTS=ON"
   ];
 
-  postInstall = ''
-    mkdir -p $lib
-    mv $out/lib $lib
-  '';
-
   doInstallCheck = true;
 
   installCheckPhase =
@@ -98,12 +93,16 @@ stdenv.mkDerivation (finalAttrs: {
         # wants http connection
         "test/sql/copy/csv/recursive_query_csv.test"
         "test/sql/copy/csv/test_mixed_lines.test"
-      ] ++ lib.optionals stdenv.isAarch64 [
+        "test/parquet/parquet_long_string_stats.test"
+        "test/sql/attach/attach_remote.test"
+        "test/sql/copy/csv/test_sniff_httpfs.test"
+        "test/sql/httpfs/internal_issue_2490.test"
+      ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
         "test/sql/aggregate/aggregates/test_kurtosis.test"
         "test/sql/aggregate/aggregates/test_skewness.test"
         "test/sql/function/list/aggregates/skewness.test"
       ]);
-      LD_LIBRARY_PATH = lib.optionalString stdenv.isDarwin "DY" + "LD_LIBRARY_PATH";
+      LD_LIBRARY_PATH = lib.optionalString stdenv.hostPlatform.isDarwin "DY" + "LD_LIBRARY_PATH";
     in
     ''
       runHook preInstallCheck
diff --git a/pkgs/development/libraries/duckdb/versions.json b/pkgs/development/libraries/duckdb/versions.json
index 8ae8b4bc57d2c..47cad94b53f3b 100644
--- a/pkgs/development/libraries/duckdb/versions.json
+++ b/pkgs/development/libraries/duckdb/versions.json
@@ -1,5 +1,5 @@
 {
-  "version": "1.0.0",
-  "rev": "1f98600c2cf8722a6d2f2d805bb4af5e701319fc",
-  "hash": "sha256-bzFxWv8+Ac8vZLd2OWJyu4T0/0dc7wykdOORMpx92Ic="
+  "version": "1.1.1",
+  "rev": "af39bd0dcf66876e09ac2a7c3baa28fe1b301151",
+  "hash": "sha256-YPS3DqIYmFKXGkiQiU7/QKNNn7+YyavrA4uDenKuX2g="
 }
diff --git a/pkgs/development/libraries/easyloggingpp/default.nix b/pkgs/development/libraries/easyloggingpp/default.nix
index 0923d2b450bcd..a3b891253bf41 100644
--- a/pkgs/development/libraries/easyloggingpp/default.nix
+++ b/pkgs/development/libraries/easyloggingpp/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [gtest];
   cmakeFlags = [ "-Dtest=ON" ];
   env.NIX_CFLAGS_COMPILE = "-std=c++14" +
-    lib.optionalString stdenv.isLinux " -pthread";
+    lib.optionalString stdenv.hostPlatform.isLinux " -pthread";
   postInstall = ''
     mkdir -p $out/include
     cp ../src/easylogging++.cc $out/include
diff --git a/pkgs/development/libraries/eccodes/default.nix b/pkgs/development/libraries/eccodes/default.nix
index 1597375cf7694..21c18dde6e336 100644
--- a/pkgs/development/libraries/eccodes/default.nix
+++ b/pkgs/development/libraries/eccodes/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "eccodes";
-  version = "2.35.0";
+  version = "2.36.0";
 
   src = fetchurl {
     url = "https://confluence.ecmwf.int/download/attachments/45757960/eccodes-${version}-Source.tar.gz";
-    hash = "sha256-FoiPtmebHiQfULafMArFASSjGSNCri6pA9diG2ZOeeo=";
+    hash = "sha256-2nQUOmSyvuol6ifGOHW8jsKU5p5b0Ih4AgQOsEFR15o=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/edencommon/default.nix b/pkgs/development/libraries/edencommon/default.nix
index 97406f81c47ae..ce26bc6f71259 100644
--- a/pkgs/development/libraries/edencommon/default.nix
+++ b/pkgs/development/libraries/edencommon/default.nix
@@ -20,9 +20,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-1z4QicS98juv4bUEbHBkCjVJHEhnoJyLYp4zMHmDbMg=";
   };
 
+  patches = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
+    # Test discovery timeout is bizarrely flaky on `x86_64-darwin`
+    ./increase-test-discovery-timeout.patch
+  ];
+
   nativeBuildInputs = [ cmake ];
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
diff --git a/pkgs/development/libraries/edencommon/increase-test-discovery-timeout.patch b/pkgs/development/libraries/edencommon/increase-test-discovery-timeout.patch
new file mode 100644
index 0000000000000..a79efe36d2e40
--- /dev/null
+++ b/pkgs/development/libraries/edencommon/increase-test-discovery-timeout.patch
@@ -0,0 +1,20 @@
+diff --git a/eden/common/os/test/CMakeLists.txt b/eden/common/os/test/CMakeLists.txt
+index a9f71443f8..be1423c455 100644
+--- a/eden/common/os/test/CMakeLists.txt
++++ b/eden/common/os/test/CMakeLists.txt
+@@ -18,4 +18,4 @@
+     ${LIBGMOCK_LIBRARIES}
+ )
+ 
+-gtest_discover_tests(os_test)
++gtest_discover_tests(os_test DISCOVERY_TIMEOUT 25)
+diff --git a/eden/common/utils/test/CMakeLists.txt b/eden/common/utils/test/CMakeLists.txt
+index 0cac73e569..ff08ecccb8 100644
+--- a/eden/common/utils/test/CMakeLists.txt
++++ b/eden/common/utils/test/CMakeLists.txt
+@@ -34,4 +34,4 @@
+     ${LIBGMOCK_LIBRARIES}
+ )
+ 
+-gtest_discover_tests(utils_test)
++gtest_discover_tests(utils_test DISCOVERY_TIMEOUT 25)
diff --git a/pkgs/development/libraries/editline/default.nix b/pkgs/development/libraries/editline/default.nix
index 3571554559c78..95776d885f06b 100644
--- a/pkgs/development/libraries/editline/default.nix
+++ b/pkgs/development/libraries/editline/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     homepage = "https://troglobit.com/projects/editline/";
     description = "Readline() replacement for UNIX without termcap (ncurses)";
     license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ dtzWill oxalica ];
+    maintainers = with maintainers; [ oxalica ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/egl-wayland/default.nix b/pkgs/development/libraries/egl-wayland/default.nix
index 7291ff8f8e9d3..8955dba436a59 100644
--- a/pkgs/development/libraries/egl-wayland/default.nix
+++ b/pkgs/development/libraries/egl-wayland/default.nix
@@ -15,7 +15,7 @@
 
 stdenv.mkDerivation rec {
   pname = "egl-wayland";
-  version = "1.1.13";
+  version = "1.1.16";
 
   outputs = [ "out" "dev" ];
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     owner = "Nvidia";
     repo = pname;
     rev = version;
-    hash = "sha256-NA+jr27aYu0XPG9sxnBtjeBTFHmV7TENRsFy8dDdNUc=";
+    hash = "sha256-hX1pMz0X5ABNRsa3Q7W26hNeEaEMnnFb7ID+k6H8Nwg=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/eigen/default.nix b/pkgs/development/libraries/eigen/default.nix
index 4befab1e7b7f2..65493e661beb6 100644
--- a/pkgs/development/libraries/eigen/default.nix
+++ b/pkgs/development/libraries/eigen/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "libeigen";
     repo = pname;
     rev = version;
-    sha256 = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw=";
+    hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/elpa/default.nix b/pkgs/development/libraries/elpa/default.nix
index 6e0c1b5375182..f13b1a167e236 100644
--- a/pkgs/development/libraries/elpa/default.nix
+++ b/pkgs/development/libraries/elpa/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, autoreconfHook, mpiCheckPhaseHook
-, gfortran, perl, mpi, blas, lapack, scalapack, openssh
+, perl, mpi, blas, lapack, scalapack, openssh
 # CPU optimizations
 , avxSupport ? stdenv.hostPlatform.avxSupport
 , avx2Support ? stdenv.hostPlatform.avx2Support
@@ -19,13 +19,13 @@ assert blas.isILP64 == scalapack.isILP64;
 
 stdenv.mkDerivation rec {
   pname = "elpa";
-  version = "2023.11.001";
+  version = "2024.05.001";
 
   passthru = { inherit (blas) isILP64; };
 
   src = fetchurl {
     url = "https://elpa.mpcdf.mpg.de/software/tarball-archive/Releases/${version}/elpa-${version}.tar.gz";
-    sha256 = "sha256-tXvRl85nvbbiRRJOn9q4mz/a3dvTTYEu5JDVdH7npBA=";
+    sha256 = "sha256-nK9Bo+YA4vb0zhkxvVQYUXna3pwXFVbQybQbvGlA8vY=";
   };
 
   patches = [
@@ -101,7 +101,5 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl3Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.markuskowa ];
-    broken = true;  # At 2024-06-25. 49 unit tests fail.
-                    # https://hydra.nixos.org/build/263906391/nixlog/1
   };
 }
diff --git a/pkgs/development/libraries/embree/default.nix b/pkgs/development/libraries/embree/default.nix
index 33e7f45c3da1b..f45ea3dc7d3d0 100644
--- a/pkgs/development/libraries/embree/default.nix
+++ b/pkgs/development/libraries/embree/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "embree";
-  version = "4.3.2";
+  version = "4.3.3";
 
   src = fetchFromGitHub {
     owner = "embree";
     repo = "embree";
     rev = "v${version}";
-    sha256 = "sha256-CK7M8DsnY++KId5iyaTRuPtyWJFaMfaYUkIJpklcIeo=";
+    sha256 = "sha256-bHVokEfnTW2cJqx3Zz2x1hIH07WamPAVFY9tiv6nHd0=";
   };
 
   postPatch = ''
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ ispc pkg-config cmake ];
   buildInputs = [ tbb glfw openimageio libjpeg libpng libX11 libpthreadstubs ]
-                ++ lib.optionals stdenv.isDarwin [ glib ];
+                ++ lib.optionals stdenv.hostPlatform.isDarwin [ glib ];
 
   meta = with lib; {
     description = "High performance ray tracing kernels from Intel";
diff --git a/pkgs/development/libraries/enchant/2.x.nix b/pkgs/development/libraries/enchant/2.x.nix
index 2fa7aec062f36..dbd7cefacb678 100644
--- a/pkgs/development/libraries/enchant/2.x.nix
+++ b/pkgs/development/libraries/enchant/2.x.nix
@@ -9,8 +9,18 @@
 , hspell
 , nuspell
 , unittest-cpp
+
+, withHspell ? true
+, withAspell ? true
+, withHunspell ? true
+, withNuspell ? true
+, withAppleSpell ? stdenv.hostPlatform.isDarwin
+
+, Cocoa
 }:
 
+assert withAppleSpell -> stdenv.hostPlatform.isDarwin;
+
 stdenv.mkDerivation rec {
   pname = "enchant";
   version = "2.6.9";
@@ -31,8 +41,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
+  ] ++ lib.optionals withHunspell [
     hunspell
+  ] ++ lib.optionals withNuspell [
     nuspell
+  ] ++ lib.optionals withAppleSpell [
+    Cocoa
   ];
 
   checkInputs = [
@@ -40,8 +54,9 @@ stdenv.mkDerivation rec {
   ];
 
   # libtool puts these to .la files
-  propagatedBuildInputs = [
+  propagatedBuildInputs = lib.optionals withHspell [
     hspell
+  ] ++ lib.optionals withAspell [
     aspell
   ];
 
@@ -51,10 +66,11 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--enable-relocatable" # needed for tests
-    "--with-aspell"
-    "--with-hspell"
-    "--with-hunspell"
-    "--with-nuspell"
+    (lib.withFeature withAspell "aspell")
+    (lib.withFeature withHspell "hspell")
+    (lib.withFeature withHunspell "hunspell")
+    (lib.withFeature withNuspell "nuspell")
+    (lib.withFeature withAppleSpell "applespell")
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/enet/default.nix b/pkgs/development/libraries/enet/default.nix
index cb57f5a2f07e0..f9583a097a6ab 100644
--- a/pkgs/development/libraries/enet/default.nix
+++ b/pkgs/development/libraries/enet/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     homepage = "http://enet.bespin.org/";
     description = "Simple and robust network communication layer on top of UDP";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/ethash/default.nix b/pkgs/development/libraries/ethash/default.nix
index 9100ccad3b31e..adc9649b4d90a 100644
--- a/pkgs/development/libraries/ethash/default.nix
+++ b/pkgs/development/libraries/ethash/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "PoW algorithm for Ethereum 1.0 based on Dagger-Hashimoto";
     homepage = "https://github.com/ethereum/ethash";
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     license = licenses.asl20;
   };
 }
diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix
deleted file mode 100644
index 67e1de59891d0..0000000000000
--- a/pkgs/development/libraries/example-robot-data/default.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, cmake
-, pythonSupport ? false
-, python3Packages
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "example-robot-data";
-  version = "4.1.0";
-
-  src = fetchFromGitHub {
-    owner = "Gepetto";
-    repo = "example-robot-data";
-    rev = "v${finalAttrs.version}";
-    fetchSubmodules = true;
-    hash = "sha256-Heq+c8SSYNO8ksTv5FphRBRStlTakm9T66jlPXon5tI=";
-  };
-
-  strictDeps = true;
-
-  patches = [
-    # Temporary patch for pinocchio v3.0.0 compatibility.
-    # Should be removed on next example-robot-data release
-    (fetchpatch {
-      name = "pin3.patch";
-      url = "https://github.com/Gepetto/example-robot-data/pull/217/commits/a605ceec857005cde153ec5895e227205eb7a5c3.patch";
-      hash = "sha256-cvAWFytrU2XVggo/nCg8cuLcaZBTACXg6LxjL/6YMPs=";
-    })
-  ];
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  buildInputs = lib.optionals pythonSupport [
-    python3Packages.pinocchio
-  ];
-
-  cmakeFlags = lib.optionals (!pythonSupport) [
-    "-DBUILD_PYTHON_INTERFACE=OFF"
-  ];
-
-  doCheck = true;
-  # The package expect to find an `example-robot-data/robots` folder somewhere
-  # either in install prefix or in the sources
-  # where it can find the meshes for unit tests
-  preCheck = "ln -s source ../../${finalAttrs.pname}";
-  pythonImportsCheck = [
-    "example_robot_data"
-  ];
-
-  meta = with lib; {
-    description = "Set of robot URDFs for benchmarking and developed examples";
-    homepage = "https://github.com/Gepetto/example-robot-data";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ nim65s wegank ];
-    platforms = platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/exempi/default.nix b/pkgs/development/libraries/exempi/default.nix
index 96d8d1db7a9ac..ccdd0048e2aaa 100644
--- a/pkgs/development/libraries/exempi/default.nix
+++ b/pkgs/development/libraries/exempi/default.nix
@@ -16,9 +16,9 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ expat zlib boost ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.CoreServices ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv darwin.apple_sdk.frameworks.CoreServices ];
 
-  doCheck = stdenv.isLinux && stdenv.is64bit;
+  doCheck = stdenv.hostPlatform.isLinux && stdenv.hostPlatform.is64bit;
   dontDisableStatic = doCheck;
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix
index b32bffb2b575f..56edbdab5d535 100644
--- a/pkgs/development/libraries/exiv2/default.nix
+++ b/pkgs/development/libraries/exiv2/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "exiv2";
-  version = "0.28.2";
+  version = "0.28.3";
 
   outputs = [ "out" "lib" "dev" "doc" "man" ];
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     owner = "exiv2";
     repo = "exiv2";
     rev = "v${version}";
-    hash = "sha256-0TgvIiuHMeohStIwmHOq4yvTj2H07wyx4w3iIdkrLTc=";
+    hash = "sha256-KD3kkIQXPcjCVZZrmbn93xYbJ8ryG0mLFbkO5AVqnTw=";
   };
 
   nativeBuildInputs = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     removeReferencesTo
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv
   ];
 
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
     # Fix tests on arm
     # https://github.com/Exiv2/exiv2/issues/933
     rm -f ../tests/bugfixes/github/test_CVE_2018_12265.py
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH''${DYLD_LIBRARY_PATH:+:}$PWD/lib
     export LC_ALL=C
 
diff --git a/pkgs/development/libraries/expat/default.nix b/pkgs/development/libraries/expat/default.nix
index bb97ca8728e0b..50ae45f38e9a1 100644
--- a/pkgs/development/libraries/expat/default.nix
+++ b/pkgs/development/libraries/expat/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   enableParallelBuilding = true;
 
-  configureFlags = lib.optional stdenv.isFreeBSD "--with-pic";
+  configureFlags = lib.optional stdenv.hostPlatform.isFreeBSD "--with-pic";
 
   outputMan = "dev"; # tiny page for a dev tool
 
diff --git a/pkgs/development/libraries/exprtk/default.nix b/pkgs/development/libraries/exprtk/default.nix
index 1d917f6de6ed1..90fe883a27661 100644
--- a/pkgs/development/libraries/exprtk/default.nix
+++ b/pkgs/development/libraries/exprtk/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
     description = "C++ Mathematical Expression Toolkit Library";
     homepage = "https://www.partow.net/programming/exprtk/index.html";
     license = licenses.mit;
-    maintainers = with maintainers; [ anselmschueler ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index 41775b0a9a538..db62a88d78687 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "faudio";
-  version = "24.06";
+  version = "24.09";
 
   src = fetchFromGitHub {
     owner = "FNA-XNA";
     repo = "FAudio";
     rev = version;
-    sha256 = "sha256-na2aTcxrS8vHTw80zCAefY8zEQ9EMD/iTQp9l4wkIrI=";
+    sha256 = "sha256-qojDXGFSn865dbHwhyGiHyyGKHIMI82ai4NyXgjAxD0=";
   };
 
   nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/fb303/default.nix b/pkgs/development/libraries/fb303/default.nix
index 059e666027a01..659497d690f6c 100644
--- a/pkgs/development/libraries/fb303/default.nix
+++ b/pkgs/development/libraries/fb303/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
   cmakeFlags = [
     "-DPYTHON_EXTENSIONS=OFF"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
diff --git a/pkgs/development/libraries/fbjni/default.nix b/pkgs/development/libraries/fbjni/default.nix
index eec0756abf4ee..aaab456ab6a58 100644
--- a/pkgs/development/libraries/fbjni/default.nix
+++ b/pkgs/development/libraries/fbjni/default.nix
@@ -57,6 +57,6 @@ stdenv.mkDerivation rec {
     description = "Library designed to simplify the usage of the Java Native Interface";
     homepage = "https://github.com/facebookincubator/fbjni";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/fbthrift/default.nix b/pkgs/development/libraries/fbthrift/default.nix
index 5ac08f2c6cc3a..04bce085c088d 100644
--- a/pkgs/development/libraries/fbthrift/default.nix
+++ b/pkgs/development/libraries/fbthrift/default.nix
@@ -39,8 +39,8 @@ stdenv.mkDerivation rec {
   ];
 
   cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=${if stdenv.isDarwin then "OFF" else "ON"}"
-  ] ++ lib.optionals stdenv.isDarwin [
+    "-DBUILD_SHARED_LIBS=${if stdenv.hostPlatform.isDarwin then "OFF" else "ON"}"
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
diff --git a/pkgs/development/libraries/fcft/default.nix b/pkgs/development/libraries/fcft/default.nix
index faf5906f7a989..ec8c9962125e8 100644
--- a/pkgs/development/libraries/fcft/default.nix
+++ b/pkgs/development/libraries/fcft/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchFromGitea, pkg-config, meson, ninja, scdoc
-, freetype, fontconfig, pixman, tllist, check
+{ stdenv, lib, fetchFromGitea, fetchpatch, pkg-config, meson, ninja, scdoc
+, freetype, fontconfig, nanosvg, pixman, tllist, check
 # Text shaping methods to enable, empty list disables all text shaping.
 # See `availableShapingTypes` or upstream meson_options.txt for available types.
 , withShapingTypes ? [ "grapheme" "run" ]
@@ -24,18 +24,29 @@ stdenv.mkDerivation rec {
     owner = "dnkl";
     repo = "fcft";
     rev = version;
-    sha256 = "sha256-Wgm2QdW4rg573soF/8HhDmlyN4S2cA0VWOejow464gU=";
+    hash = "sha256-Wgm2QdW4rg573soF/8HhDmlyN4S2cA0VWOejow464gU=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "system-nanosvg.patch";
+      url = "https://codeberg.org/dnkl/fcft/commit/5cee776e1d7f1bdb0df383c3dd798831a6fe4fa0.patch";
+      excludes = [ "CHANGELOG.md" ];
+      hash = "sha256-yRBtKCKT/Oih66/OQqt4GPg3GfHmhiLM8mlLEWYYRC0=";
+    })
+  ];
+
   depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ pkg-config meson ninja scdoc ];
-  buildInputs = [ freetype fontconfig pixman tllist ]
+  buildInputs = [ freetype fontconfig nanosvg pixman tllist ]
     ++ lib.optionals (withShapingTypes != []) [ harfbuzz ]
     ++ lib.optionals (builtins.elem "run" withShapingTypes) [ utf8proc ];
   nativeCheckInputs = [ check ];
 
   mesonBuildType = "release";
-  mesonFlags = builtins.map (t:
+  mesonFlags = [
+    (lib.mesonEnable "system-nanosvg" true)
+  ] ++ builtins.map (t:
     lib.mesonEnable "${t}-shaping" (lib.elem t withShapingTypes)
   ) availableShapingTypes;
 
diff --git a/pkgs/development/libraries/fcgi/default.nix b/pkgs/development/libraries/fcgi/default.nix
deleted file mode 100644
index d59fac5ff4dc9..0000000000000
--- a/pkgs/development/libraries/fcgi/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook }:
-
-stdenv.mkDerivation rec {
-  pname = "fcgi";
-  version = "2.4.2";
-
-  src = fetchFromGitHub {
-    owner = "FastCGI-Archives";
-    repo = "fcgi2";
-    rev = version;
-    sha256 = "1jhz6jfwv5kawa8kajvg18nfwc1b30f38zc0lggszd1vcmrwqkz1";
-  };
-
-  nativeBuildInputs = [ autoreconfHook ];
-
-  postInstall = "ln -s . $out/include/fastcgi";
-
-  meta = with lib; {
-    description = "Language independent, scalable, open extension to CG";
-    homepage = "https://fastcgi-archives.github.io/"; # Formerly http://www.fastcgi.com/
-    license = "FastCGI see LICENSE.TERMS";
-    mainProgram = "cgi-fcgi";
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/fcgi/gcc-4.4.diff b/pkgs/development/libraries/fcgi/gcc-4.4.diff
deleted file mode 100644
index c6806c12c0676..0000000000000
--- a/pkgs/development/libraries/fcgi/gcc-4.4.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/libfcgi/fcgio.cpp b/libfcgi/fcgio.cpp
-index 95e28ca..a7eda0e 100644
---- a/libfcgi/fcgio.cpp
-+++ b/libfcgi/fcgio.cpp
-@@ -23,6 +23,7 @@
- #endif
- 
- #include <limits.h>
-+#include <cstdio>
- #include "fcgio.h"
- 
- using std::streambuf;
diff --git a/pkgs/development/libraries/febio/default.nix b/pkgs/development/libraries/febio/default.nix
deleted file mode 100644
index d0c54b8b157d7..0000000000000
--- a/pkgs/development/libraries/febio/default.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, boost, eigen, libxml2, mpi, python3
-, mklSupport ? true, mkl
-, substituteAll
-}:
-
-stdenv.mkDerivation rec {
-  pname = "FEBio";
-  version = "3.6";
-
-  src = fetchFromGitHub {
-    owner = "febiosoftware";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "187s4lyzr806xla3smq3lsvj3f6wxlhfkban89w0fnyfmfb8w9am";
-  };
-
-  patches = [
-    (substituteAll {
-      src = ./fix-cmake.patch;  # cannot find mkl libraries without this
-      so = stdenv.hostPlatform.extensions.sharedLibrary;
-    })
-  ];
-
-  cmakeFlags = lib.optional mklSupport "-DUSE_MKL=On"
-    ++ lib.optional mklSupport "-DMKLROOT=${mkl}"
-  ;
-
-  env.CXXFLAGS = lib.optionalString stdenv.isLinux "-include cstring";
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out/include
-    cp -R lib bin $out/
-    cp -R ../FECore \
-      ../FEBioFluid \
-      ../FEBioLib \
-      ../FEBioMech \
-      ../FEBioMix \
-      ../FEBioOpt \
-      ../FEBioPlot \
-      ../FEBioXML \
-      ../NumCore \
-      $out/include
-
-    runHook postInstall
-  '';
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost eigen libxml2 mpi python3 python3.pkgs.numpy ]
-   ++ lib.optional mklSupport mkl
-  ;
-
-  meta = {
-    description = "FEBio Suite Solver";
-    license = with lib.licenses; [ mit ];
-    homepage = "https://febio.org/";
-    platforms = lib.platforms.unix;
-    maintainers = with lib.maintainers; [ Scriptkiddi ];
-  };
-}
diff --git a/pkgs/development/libraries/febio/fix-cmake.patch b/pkgs/development/libraries/febio/fix-cmake.patch
deleted file mode 100644
index 456179ca83647..0000000000000
--- a/pkgs/development/libraries/febio/fix-cmake.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -47,7 +47,7 @@ function(findLib libName libDir libOut)
-         find_library(TEMP NAMES ${libName}.lib ${ARGV3}.lib ${ARGV4}.lib ${ARGV5}.lib ${ARGV6}.lib
-             PATHS ${${libDir}} NO_DEFAULT_PATH)
-     else()
--        find_library(TEMP NAMES lib${libName}.a lib${ARGV3}.a lib${ARGV4}.a lib${ARGV5}.a lib${ARGV6}.a
-+        find_library(TEMP NAMES lib${libName}.a lib${ARGV3}.a lib${ARGV4}.a lib${ARGV5}.a lib${ARGV6}.a lib${libName}@so@ lib${ARGV3}@so@ lib${ARGV4}@so@ lib${ARGV5}@so@ lib${ARGV6}@so@
-             PATHS ${${libDir}} NO_DEFAULT_PATH)
-     endif()
-     
-diff --git a/FindDependencies.cmake b/FindDependencies.cmake
-index 2d644005f..7261ba923 100644
---- a/FindDependencies.cmake
-+++ b/FindDependencies.cmake
-@@ -46,8 +46,8 @@ if(MKLROOT)
-             NO_DEFAULT_PATH)
-             
-         find_library(MKL_OMP_LIB 
--            NAMES iomp5 iomp5md libiomp5md.lib
--            PATHS ${MKLROOT}/../lib ${MKLROOT}/../compiler/lib
-+            NAMES libiomp5@so@ libiomp5 iomp5 iomp5md libiomp5md.lib
-+            PATHS ${MKLROOT}/lib ${MKLROOT}/../lib ${MKLROOT}/../compiler/lib
-             PATH_SUFFIXES "intel64" "intel32"
-             NO_DEFAULT_PATH
-             DOC "MKL OMP Library")
diff --git a/pkgs/development/libraries/fflas-ffpack/default.nix b/pkgs/development/libraries/fflas-ffpack/default.nix
index 65c29f9319ceb..1d8c87ba45d1a 100644
--- a/pkgs/development/libraries/fflas-ffpack/default.nix
+++ b/pkgs/development/libraries/fflas-ffpack/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     "--with-blas-libs=-lcblas"
     "--with-lapack-libs=-llapacke"
     "--without-archnative"
-  ] ++ lib.optionals stdenv.isx86_64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [
     # disable SIMD instructions (which are enabled *when available* by default)
     # for now we need to be careful to disable *all* relevant versions of an instruction set explicitly (https://github.com/linbox-team/fflas-ffpack/issues/284)
     "--${if stdenv.hostPlatform.sse3Support   then "enable" else "disable"}-sse3"
diff --git a/pkgs/development/libraries/ffmpeg/0001-avfoundation.m-macOS-SDK-10.12-compatibility.patch b/pkgs/development/libraries/ffmpeg/0001-avfoundation.m-macOS-SDK-10.12-compatibility.patch
new file mode 100644
index 0000000000000..60004b1766ca2
--- /dev/null
+++ b/pkgs/development/libraries/ffmpeg/0001-avfoundation.m-macOS-SDK-10.12-compatibility.patch
@@ -0,0 +1,25 @@
+From a804dd05351716b1fd9a7c2b7ed636613edd9c0f Mon Sep 17 00:00:00 2001
+From: toonn <toonn@toonn.io>
+Date: Fri, 21 Jun 2024 18:59:49 +0000
+Subject: [PATCH] avfoundation.m: macOS SDK 10.12 compatibility
+
+---
+ libavdevice/avfoundation.m | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m
+index d9b17ccdae..2a1f66d751 100644
+--- a/libavdevice/avfoundation.m
++++ b/libavdevice/avfoundation.m
+@@ -762,7 +762,7 @@ static int get_audio_config(AVFormatContext *s)
+     return 0;
+ }
+ 
+-static NSArray* getDevicesWithMediaType(AVMediaType mediaType) {
++static NSArray* getDevicesWithMediaType(NSString * mediaType) {
+ #if ((TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MIN_REQUIRED >= 100000) || (TARGET_OS_OSX && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500))
+     NSMutableArray *deviceTypes = nil;
+     if (mediaType == AVMediaTypeVideo) {
+-- 
+2.44.0
+
diff --git a/pkgs/development/libraries/ffmpeg/default.nix b/pkgs/development/libraries/ffmpeg/default.nix
index 5bd9171275bee..f6a6403435e8b 100644
--- a/pkgs/development/libraries/ffmpeg/default.nix
+++ b/pkgs/development/libraries/ffmpeg/default.nix
@@ -6,46 +6,42 @@ let
     callPackage ./generic.nix (
       {
         inherit (darwin.apple_sdk.frameworks)
+          Accelerate
           AppKit
           AudioToolbox
           AVFoundation
           CoreImage
           VideoToolbox
           ;
+        inherit (darwin) xcode;
       }
       // (initArgs // { inherit ffmpegVariant; })
     );
 
   v4 = {
-    version = "4.4.4";
-    hash = "sha256-Q8bkuF/1uJfqttJJoObnnLX3BEduv+qxsvOrVhMvRjA=";
-  };
-
-  v5 = {
-    version = "5.1.4";
-    hash = "sha256-2jUL1/xGUf7aMooST2DW41KE7bC+BtgChXmj0sAJZ90=";
+    version = "4.4.5";
+    hash = "sha256-GrKNGYI8kO47Yoi82dMV30ymuXSjxo4gH+yB8jIUa2A=";
   };
 
   v6 = {
-    version = "6.1.1";
-    hash = "sha256-Q0c95hbCVUHQWPoh5uC8uzMylmB4BnWg+VhXEgSouzo=";
+    version = "6.1.2";
+    hash = "sha256-h/N56iKkAR5kH+PRQceWZvHe3k+70KWMDEP5iVq/YFQ=";
   };
 
   v7 = {
-    version = "7.0.1";
-    hash = "sha256-HiCT6bvLx4zmJ6ffutoimdz5ENQ55CRF64WBT3HeXMA=";
+    version = "7.0.2";
+    hash = "sha256-6bcTxMt0rH/Nso3X7zhrFNkkmWYtxsbUqVQKh25R1Fs=";
   };
 in
 
 rec {
+  # We keep FFmpeg 4 around for now mainly for a couple of binary
+  # packages (Spotify and REAPER). Please don’t add new source packages
+  # that depend on this version.
   ffmpeg_4 = mkFFmpeg v4 "small";
   ffmpeg_4-headless = mkFFmpeg v4 "headless";
   ffmpeg_4-full = mkFFmpeg v4 "full";
 
-  ffmpeg_5 = mkFFmpeg v5 "small";
-  ffmpeg_5-headless = mkFFmpeg v5 "headless";
-  ffmpeg_5-full = mkFFmpeg v5 "full";
-
   ffmpeg_6 = mkFFmpeg v6 "small";
   ffmpeg_6-headless = mkFFmpeg v6 "headless";
   ffmpeg_6-full = mkFFmpeg v6 "full";
diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix
index 7496cb4de0e76..dc471944654a1 100644
--- a/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/pkgs/development/libraries/ffmpeg/generic.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPackages, removeReferencesTo, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
+{ lib, stdenv, buildPackages, removeReferencesTo, addDriverRunpath, pkg-config, perl, texinfo, texinfo6, yasm
 
   # You can fetch any upstream version using this derivation by specifying version and hash
   # NOTICE: Always use this argument to override the version. Do not use overrideAttrs.
@@ -33,27 +33,28 @@
 , fetchpatch2
 
   # Feature flags
-, withAlsa ? withHeadlessDeps && stdenv.isLinux # Alsa in/output supporT
-, withAom ? withFullDeps # AV1 reference encoder
-, withAppKit ? withHeadlessDeps && stdenv.isDarwin # Apple AppKit framework
+, withAlsa ? withHeadlessDeps && stdenv.hostPlatform.isLinux # Alsa in/output supporT
+, withAmf ? lib.meta.availableOn stdenv.hostPlatform amf # AMD Media Framework video encoding
+, withAom ? withHeadlessDeps # AV1 reference encoder
+, withAppKit ? withHeadlessDeps && stdenv.hostPlatform.isDarwin # Apple AppKit framework
 , withAribcaption ? withFullDeps && lib.versionAtLeast version "6.1" # ARIB STD-B24 Caption Decoder/Renderer
 , withAss ? withHeadlessDeps && stdenv.hostPlatform == stdenv.buildPlatform # (Advanced) SubStation Alpha subtitle rendering
-, withAudioToolbox ? withHeadlessDeps && stdenv.isDarwin # Apple AudioToolbox
-, withAvFoundation ? withHeadlessDeps && stdenv.isDarwin # Apple AVFoundation framework
+, withAudioToolbox ? withHeadlessDeps && stdenv.hostPlatform.isDarwin # Apple AudioToolbox
+, withAvFoundation ? withHeadlessDeps && stdenv.hostPlatform.isDarwin # Apple AVFoundation framework
 , withAvisynth ? withFullDeps # AviSynth script files reading
 , withBluray ? withFullDeps # BluRay reading
 , withBs2b ? withFullDeps # bs2b DSP library
 , withBzlib ? withHeadlessDeps
 , withCaca ? withFullDeps # Textual display (ASCII art)
-, withCelt ? withFullDeps # CELT decoder
+, withCelt ? withHeadlessDeps # CELT decoder
 , withChromaprint ? withFullDeps # Audio fingerprinting
 , withCodec2 ? withFullDeps # codec2 en/decoding
-, withCoreImage ? withHeadlessDeps && stdenv.isDarwin # Apple CoreImage framework
+, withCoreImage ? withHeadlessDeps && stdenv.hostPlatform.isDarwin # Apple CoreImage framework
 , withCuda ? withFullDeps && withNvcodec
 , withCudaLLVM ? withFullDeps
 , withCuvid ? withHeadlessDeps && withNvcodec
 , withDav1d ? withHeadlessDeps # AV1 decoder (focused on speed and correctness)
-, withDc1394 ? withFullDeps && !stdenv.isDarwin # IIDC-1394 grabbing (ieee 1394)
+, withDc1394 ? withFullDeps && !stdenv.hostPlatform.isDarwin # IIDC-1394 grabbing (ieee 1394)
 , withDrm ? withHeadlessDeps && (with stdenv; isLinux || isFreeBSD) # libdrm support
 , withDvdnav ? withFullDeps && withGPL && lib.versionAtLeast version "7" # needed for DVD demuxing
 , withDvdread ? withFullDeps && withGPL && lib.versionAtLeast version "7" # needed for DVD demuxing
@@ -69,12 +70,15 @@
 , withGsm ? withFullDeps # GSM de/encoder
 , withHarfbuzz ? withHeadlessDeps && lib.versionAtLeast version "6.1" # Needed for drawtext filter
 , withIconv ? withHeadlessDeps
-, withJack ? withFullDeps && !stdenv.isDarwin # Jack audio
+, withIlbc ? withFullDeps # iLBC de/encoding
+, withJack ? withFullDeps && !stdenv.hostPlatform.isDarwin # Jack audio
 , withJxl ? withFullDeps && lib.versionAtLeast version "5" # JPEG XL de/encoding
 , withLadspa ? withFullDeps # LADSPA audio filtering
+, withLcms2 ? withFullDeps # ICC profile support via lcms2
 , withLzma ? withHeadlessDeps # xz-utils
+, withMetal ? false # Unfree and requires manual downloading of files
 , withMfx ? withFullDeps && (with stdenv.hostPlatform; isLinux && !isAarch) # Hardware acceleration via intel-media-sdk/libmfx
-, withModplug ? withFullDeps && !stdenv.isDarwin # ModPlug support
+, withModplug ? withFullDeps && !stdenv.hostPlatform.isDarwin # ModPlug support
 , withMp3lame ? withHeadlessDeps # LAME MP3 encoder
 , withMysofa ? withFullDeps # HRTF support via SOFAlizer
 , withNvdec ? withHeadlessDeps && withNvcodec
@@ -84,41 +88,45 @@
 , withOpencl ? withFullDeps
 , withOpencoreAmrnb ? withFullDeps && withVersion3 # AMR-NB de/encoder
 , withOpencoreAmrwb ? withFullDeps && withVersion3 # AMR-WB decoder
-, withOpengl ? withFullDeps && !stdenv.isDarwin # OpenGL rendering
+, withOpengl ? withFullDeps && !stdenv.hostPlatform.isDarwin # OpenGL rendering
 , withOpenh264 ? withFullDeps # H.264/AVC encoder
-, withOpenjpeg ? withFullDeps # JPEG 2000 de/encoder
+, withOpenjpeg ? withHeadlessDeps # JPEG 2000 de/encoder
 , withOpenmpt ? withFullDeps # Tracked music files decoder
 , withOpus ? withHeadlessDeps # Opus de/encoder
-, withPlacebo ? withFullDeps && !stdenv.isDarwin # libplacebo video processing library
-, withPulse ? withSmallDeps && stdenv.isLinux # Pulseaudio input support
+, withPlacebo ? withFullDeps && !stdenv.hostPlatform.isDarwin # libplacebo video processing library
+, withPulse ? withSmallDeps && stdenv.hostPlatform.isLinux # Pulseaudio input support
 , withQrencode ? withFullDeps && lib.versionAtLeast version "7" # QR encode generation
 , withQuirc ? withFullDeps && lib.versionAtLeast version "7" # QR decoding
 , withRav1e ? withFullDeps # AV1 encoder (focused on speed and safety)
 , withRtmp ? withFullDeps # RTMP[E] support
-, withSamba ? withFullDeps && !stdenv.isDarwin && withGPLv3 # Samba protocol
+, withRubberband ? withFullDeps && withGPL # Rubberband filter
+, withSamba ? withFullDeps && !stdenv.hostPlatform.isDarwin && withGPLv3 # Samba protocol
 , withSdl2 ? withSmallDeps
-, withShaderc ? withFullDeps && !stdenv.isDarwin && lib.versionAtLeast version "5.0"
+, withShaderc ? withFullDeps && !stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "5.0"
+, withShine ? withFullDeps # Fixed-point MP3 encoding
+, withSnappy ? withFullDeps # Snappy compression, needed for hap encoding
 , withSoxr ? withHeadlessDeps # Resampling via soxr
 , withSpeex ? withHeadlessDeps # Speex de/encoder
 , withSrt ? withHeadlessDeps # Secure Reliable Transport (SRT) protocol
 , withSsh ? withHeadlessDeps # SFTP protocol
 , withSvg ? withFullDeps # SVG protocol
-, withSvtav1 ? withHeadlessDeps && !stdenv.isAarch64 && !stdenv.hostPlatform.isMinGW # AV1 encoder/decoder (focused on speed and correctness)
+, withSvtav1 ? withHeadlessDeps && !stdenv.hostPlatform.isAarch64 && !stdenv.hostPlatform.isMinGW # AV1 encoder/decoder (focused on speed and correctness)
 , withTensorflow ? false # Tensorflow dnn backend support (Increases closure size by ~390 MiB)
 , withTheora ? withHeadlessDeps # Theora encoder
-, withV4l2 ? withHeadlessDeps && stdenv.isLinux  # Video 4 Linux support
+, withTwolame ? withFullDeps # MP2 encoding
+, withV4l2 ? withHeadlessDeps && stdenv.hostPlatform.isLinux  # Video 4 Linux support
 , withV4l2M2m ? withV4l2
 , withVaapi ? withHeadlessDeps && (with stdenv; isLinux || isFreeBSD) # Vaapi hardware acceleration
 , withVdpau ? withSmallDeps && !stdenv.hostPlatform.isMinGW # Vdpau hardware acceleration
-, withVideoToolbox ? withHeadlessDeps && stdenv.isDarwin # Apple VideoToolbox
+, withVideoToolbox ? withHeadlessDeps && stdenv.hostPlatform.isDarwin # Apple VideoToolbox
 , withVidStab ? withFullDeps && withGPL # Video stabilization
-, withVmaf ? withFullDeps && !stdenv.isAarch64 && lib.versionAtLeast version "5" # Netflix's VMAF (Video Multi-Method Assessment Fusion)
+, withVmaf ? withFullDeps && !stdenv.hostPlatform.isAarch64 && lib.versionAtLeast version "5" # Netflix's VMAF (Video Multi-Method Assessment Fusion)
 , withVoAmrwbenc ? withFullDeps && withVersion3 # AMR-WB encoder
 , withVorbis ? withHeadlessDeps # Vorbis de/encoding, native encoder exists
 , withVpl ? false # Hardware acceleration via intel libvpl
 , withVpx ? withHeadlessDeps && stdenv.buildPlatform == stdenv.hostPlatform # VP8 & VP9 de/encoding
-, withVulkan ? withSmallDeps && !stdenv.isDarwin
-, withWebp ? withFullDeps # WebP encoder
+, withVulkan ? withSmallDeps && !stdenv.hostPlatform.isDarwin
+, withWebp ? withHeadlessDeps # WebP encoder
 , withX264 ? withHeadlessDeps && withGPL # H.264/AVC encoder
 , withX265 ? withHeadlessDeps && withGPL # H.265/HEVC encoder
 , withXavs ? withFullDeps && withGPL # AVS encoder
@@ -126,8 +134,8 @@
 , withXcbShape ? withFullDeps # X11 grabbing shape rendering
 , withXcbShm ? withFullDeps # X11 grabbing shm communication
 , withXcbxfixes ? withFullDeps # X11 grabbing mouse rendering
-, withXevd ? withFullDeps && lib.versionAtLeast version "7" && stdenv.hostPlatform.isx86 # MPEG-5 EVC decoding
-, withXeve ? withFullDeps && lib.versionAtLeast version "7" && stdenv.hostPlatform.isx86 # MPEG-5 EVC encoding
+, withXevd ? withFullDeps && lib.versionAtLeast version "7" && !xevd.meta.broken # MPEG-5 EVC decoding
+, withXeve ? withFullDeps && lib.versionAtLeast version "7" && !xeve.meta.broken # MPEG-5 EVC encoding
 , withXlib ? withFullDeps # Xlib support
 , withXml2 ? withFullDeps # libxml2 support, for IMF and DASH demuxers
 , withXvid ? withHeadlessDeps && withGPL # Xvid encoder, native encoder exists
@@ -214,6 +222,8 @@
  *  External libraries options
  */
 , alsa-lib
+, amf
+, amf-headers
 , avisynthplus
 , bzip2
 , celt
@@ -234,6 +244,7 @@
 , intel-media-sdk
 , ladspaH
 , lame
+, lcms2
 , libaom
 , libaribcaption
 , libass
@@ -247,6 +258,7 @@
 , libGL
 , libGLU
 , libiconv
+, libilbc
 , libjack2
 , libjxl
 , libmodplug
@@ -288,9 +300,13 @@
 , quirc
 , rav1e
 , rtmpdump
+, rubberband
+, twolame
 , samba
 , SDL2
 , shaderc
+, shine
+, snappy
 , soxr
 , speex
 , srt
@@ -312,11 +328,13 @@
 /*
  *  Darwin frameworks
  */
+, Accelerate
 , AppKit
 , AudioToolbox
 , AVFoundation
 , CoreImage
 , VideoToolbox
+, xcode # unfree contains metalcc and metallib
 /*
  *  Testing
  */
@@ -395,84 +413,61 @@ stdenv.mkDerivation (finalAttrs: {
       --replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
   '';
 
-  patches = map (patch: fetchpatch2 patch) ([ ]
-    ++ optionals (versionOlder version "5") [
-      {
-        name = "libsvtav1-1.5.0-compat-compressed_ten_bit_format.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/031f1561cd286596cdb374da32f8aa816ce3b135";
-        hash = "sha256-agJgzIzrBTQBAypuCmGXXFo7vw6Iodw5Ny5O5QCKCn8=";
-      }
-      {
-        # Backport fix for binutils-2.41.
-        name = "binutils-2.41.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/effadce6c756247ea8bae32dc13bb3e6f464f0eb";
-        hash = "sha256-vLSltvZVMcQ0CnkU0A29x6fJSywE8/aU+Mp9os8DZYY=";
-      }
-      # The upstream patch isn’t for ffmpeg 4, but it will apply with a few tweaks.
-      # Fixes a crash when built with clang 16 due to UB in ff_seek_frame_binary.
-      {
-        name = "utils-fix_crash_in_ff_seek_frame_binary.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/ab792634197e364ca1bb194f9abe36836e42f12d";
-        hash = "sha256-vqqVACjbCcGL9Qvmg1QArSKqVmOqr8BEr+OxTBDt6mA=";
-        postFetch = ''
-          substituteInPlace "$out" \
-            --replace libavformat/seek.c libavformat/utils.c \
-            --replace 'const AVInputFormat *const ' 'const AVInputFormat *'
-        '';
-      }
-    ]
-    ++ (lib.optionals (lib.versionAtLeast version "5" && lib.versionOlder version "6") [
-      {
-        name = "fix_build_failure_due_to_libjxl_version_to_new";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/75b1a555a70c178a9166629e43ec2f6250219eb2";
-        hash = "sha256-+2kzfPJf5piim+DqEgDuVEEX5HLwRsxq0dWONJ4ACrU=";
-      }
-      {
-        name = "5.x-CVE-2024-31585.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/8711cea3841fc385cccb1e7255176479e865cd4d";
-        hash = "sha256-WT+ly/l04yM/tRVbhkESA3sDDjwvtd/Cg2y8tQo4ApI=";
-      }
-      {
-        name = "CVE-2024-31582.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/99debe5f823f45a482e1dc08de35879aa9c74bd2";
-        hash = "sha256-+CQ9FXR6Vr/AmsbXFiCUXZcxKj1s8nInEdke/Oc/kUA=";
-      }
-      {
-        name = "CVE-2024-31578.patch";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/3bb00c0a420c3ce83c6fafee30270d69622ccad7";
-        hash = "sha256-oZMZysBA+/gwaGEM1yvI+8wCadXWE7qLRL6Emap3b8Q=";
-      }
-    ])
-    ++ (lib.optionals (lib.versionAtLeast version "6.1" && lib.versionOlder version "6.2") [
-      { # this can be removed post 6.1
+  patches = []
+    ++ optionals (lib.versionAtLeast version "6.1" && lib.versionOlder version "6.2") [
+      (fetchpatch2 { # this can be removed post 6.1
         name = "fix_build_failure_due_to_PropertyKey_EncoderID";
         url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/cb049d377f54f6b747667a93e4b719380c3e9475";
         hash = "sha256-sxRXKKgUak5vsQTiV7ge8vp+N22CdTIvuczNgVRP72c=";
-      }
-      {
-        name = "fix_vulkan_av1";
-        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/e06ce6d2b45edac4a2df04f304e18d4727417d24";
-        hash = "sha256-73mlX1rdJrguw7OXaSItfHtI7gflDrFj+7SepVvvUIg=";
-      }
-      {
+      })
+      (fetchpatch2 {
         name = "CVE-2024-31582.patch";
         url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/99debe5f823f45a482e1dc08de35879aa9c74bd2";
         hash = "sha256-+CQ9FXR6Vr/AmsbXFiCUXZcxKj1s8nInEdke/Oc/kUA=";
-      }
-      {
+      })
+      (fetchpatch2 {
         name = "CVE-2024-31578.patch";
         url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/3bb00c0a420c3ce83c6fafee30270d69622ccad7";
         hash = "sha256-oZMZysBA+/gwaGEM1yvI+8wCadXWE7qLRL6Emap3b8Q=";
-      }
-    ])
-    ++ (lib.optionals (lib.versionAtLeast version "7.0" && lib.versionOlder version "7.0.1") [
-      {
+      })
+      (fetchpatch2 {
+        name = "CVE-2023-49501.patch";
+        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/4adb93dff05dd947878c67784d98c9a4e13b57a7";
+        hash = "sha256-7cwktto3fPMDGvCZCVtB01X8Q9S/4V4bDLUICSNfGgw=";
+      })
+      (fetchpatch2 {
+        name = "CVE-2023-49502.patch";
+        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/737ede405b11a37fdd61d19cf25df296a0cb0b75";
+        hash = "sha256-mpSJwR9TX5ENjjCKvzuM/9e1Aj/AOiQW0+72oOMl9v8=";
+      })
+      (fetchpatch2 {
+        name = "CVE-2023-50007.patch";
+        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/b1942734c7cbcdc9034034373abcc9ecb9644c47";
+        hash = "sha256-v0hNcqBtm8GCGAU9UbRUCE0slodOjZCHrkS8e4TrVcQ=";
+      })
+      (fetchpatch2 {
+        name = "CVE-2023-50008.patch";
+        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/5f87a68cf70dafeab2fb89b42e41a4c29053b89b";
+        hash = "sha256-sqUUSOPTPLwu2h8GbAw4SfEf+0oWioz52BcpW1n4v3Y=";
+      })
+    ]
+    ++ optionals (lib.versionAtLeast version "7.0" && lib.versionOlder version "7.0.1") [
+      (fetchpatch2 {
         # Will likely be obsolete in >7.0
         name = "fate_avoid_dependency_on_samples";
         url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/7b7b7819bd21cc92ac07f6696b0e7f26fa8f9834";
         hash = "sha256-TKI289XqtG86Sj9s7mVYvmkjAuRXeK+2cYYEDkg6u6I=";
-      }
-    ]));
+      })
+    ]
+    ++ optionals (lib.versionAtLeast version "7.0") [
+      ./0001-avfoundation.m-macOS-SDK-10.12-compatibility.patch
+
+      # Expose a private API for Chromium / Qt WebEngine.
+      (fetchpatch2 {
+        url = "https://gitlab.archlinux.org/archlinux/packaging/packages/ffmpeg/-/raw/a02c1a15706ea832c0d52a4d66be8fb29499801a/add-av_stream_get_first_dts-for-chromium.patch";
+        hash = "sha256-DbH6ieJwDwTjKOdQ04xvRcSLeeLP2Z2qEmqeo8HsPr4=";
+      })
+    ];
 
   configurePlatforms = [];
   setOutputFlags = false; # Only accepts some of them
@@ -557,6 +552,7 @@ stdenv.mkDerivation (finalAttrs: {
      *  External libraries
      */
     (enableFeature withAlsa "alsa")
+    (enableFeature withAmf "amf")
     (enableFeature withAom "libaom")
     (enableFeature withAppKit "appkit")
   ] ++ optionals (versionAtLeast version "6.1") [
@@ -599,12 +595,19 @@ stdenv.mkDerivation (finalAttrs: {
     (enableFeature withHarfbuzz "libharfbuzz")
   ] ++ [
     (enableFeature withIconv "iconv")
+    (enableFeature withIlbc "libilbc")
     (enableFeature withJack "libjack")
   ] ++ optionals (versionAtLeast finalAttrs.version "5.0") [
     (enableFeature withJxl "libjxl")
   ] ++ [
     (enableFeature withLadspa "ladspa")
+  ] ++ optionals (versionAtLeast version "5.1") [
+    (enableFeature withLcms2 "lcms2")
+  ] ++ [
     (enableFeature withLzma "lzma")
+  ] ++ optionals (versionAtLeast version "5.0") [
+    (enableFeature withMetal "metal")
+  ] ++ [
     (enableFeature withMfx "libmfx")
     (enableFeature withModplug "libmodplug")
     (enableFeature withMp3lame "libmp3lame")
@@ -630,11 +633,14 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ [
     (enableFeature withRav1e "librav1e")
     (enableFeature withRtmp "librtmp")
+    (enableFeature withRubberband "librubberband")
     (enableFeature withSamba "libsmbclient")
     (enableFeature withSdl2 "sdl2")
   ] ++ optionals (versionAtLeast version "5.0") [
     (enableFeature withShaderc "libshaderc")
   ] ++ [
+    (enableFeature withShine "libshine")
+    (enableFeature withSnappy "libsnappy")
     (enableFeature withSoxr "libsoxr")
     (enableFeature withSpeex "libspeex")
     (enableFeature withSrt "libsrt")
@@ -643,6 +649,7 @@ stdenv.mkDerivation (finalAttrs: {
     (enableFeature withSvtav1 "libsvtav1")
     (enableFeature withTensorflow "libtensorflow")
     (enableFeature withTheora "libtheora")
+    (enableFeature withTwolame "libtwolame")
     (enableFeature withV4l2 "libv4l2")
     (enableFeature withV4l2M2m "v4l2-m2m")
     (enableFeature withVaapi "vaapi")
@@ -689,6 +696,9 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ optionals stdenv.cc.isClang [
     "--cc=clang"
     "--cxx=clang++"
+  ] ++ optionals withMetal [
+    "--metalcc=${xcode}/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/metal"
+    "--metallib=${xcode}/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/metallib"
   ];
 
   # ffmpeg embeds the configureFlags verbatim in its binaries and because we
@@ -697,17 +707,21 @@ stdenv.mkDerivation (finalAttrs: {
   # such references except for data.
   postConfigure = let
     toStrip = map placeholder (lib.remove "data" finalAttrs.outputs) # We want to keep references to the data dir.
-      ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.stdenv.cc;
+      ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.stdenv.cc
+      ++ lib.optional withMetal xcode;
   in
     "remove-references-to ${lib.concatStringsSep " " (map (o: "-t ${o}") toStrip)} config.h";
 
   strictDeps = true;
 
-  nativeBuildInputs = [ removeReferencesTo addOpenGLRunpath perl pkg-config texinfo yasm ]
+  nativeBuildInputs = [ removeReferencesTo addDriverRunpath perl pkg-config yasm ]
+  # Texinfo version 7.1 introduced breaking changes, which older versions of ffmpeg do not handle.
+  ++ (if versionOlder version "5" then [ texinfo6 ] else [ texinfo ])
   ++ optionals withCudaLLVM [ clang ];
 
   buildInputs = []
   ++ optionals withAlsa [ alsa-lib ]
+  ++ optionals withAmf [ amf-headers ]
   ++ optionals withAom [ libaom ]
   ++ optionals withAppKit [ AppKit ]
   ++ optionals withAribcaption [ libaribcaption ]
@@ -740,9 +754,11 @@ stdenv.mkDerivation (finalAttrs: {
   ++ optionals withGsm [ gsm ]
   ++ optionals withHarfbuzz [ harfbuzz ]
   ++ optionals withIconv [ libiconv ] # On Linux this should be in libc, do we really need it?
+  ++ optionals withIlbc [ libilbc ]
   ++ optionals withJack [ libjack2 ]
   ++ optionals withJxl [ libjxl ]
   ++ optionals withLadspa [ ladspaH ]
+  ++ optionals withLcms2 [ lcms2 ]
   ++ optionals withLzma [ xz ]
   ++ optionals withMfx [ intel-media-sdk ]
   ++ optionals withModplug [ libmodplug ]
@@ -763,9 +779,12 @@ stdenv.mkDerivation (finalAttrs: {
   ++ optionals withQuirc [ quirc ]
   ++ optionals withRav1e [ rav1e ]
   ++ optionals withRtmp [ rtmpdump ]
+  ++ optionals withRubberband ([ rubberband ] ++ lib.optional stdenv.hostPlatform.isDarwin Accelerate)
   ++ optionals withSamba [ samba ]
   ++ optionals withSdl2 [ SDL2 ]
   ++ optionals withShaderc [ shaderc ]
+  ++ optionals withShine [ shine ]
+  ++ optionals withSnappy [ snappy ]
   ++ optionals withSoxr [ soxr ]
   ++ optionals withSpeex [ speex ]
   ++ optionals withSrt [ srt ]
@@ -774,6 +793,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ optionals withSvtav1 [ svt-av1 ]
   ++ optionals withTensorflow [ libtensorflow ]
   ++ optionals withTheora [ libtheora ]
+  ++ optionals withTwolame [ twolame ]
   ++ optionals withV4l2 [ libv4l ]
   ++ optionals withVaapi [ (if withSmallDeps then libva else libva-minimal) ]
   ++ optionals withVdpau [ libvdpau ]
@@ -807,7 +827,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   # Fails with SIGABRT otherwise FIXME: Why?
   checkPhase = let
-    ldLibraryPathEnv = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
+    ldLibraryPathEnv = if stdenv.hostPlatform.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
     libsToLink = [ ]
       ++ optional buildAvcodec "libavcodec"
       ++ optional buildAvdevice "libavdevice"
@@ -835,10 +855,10 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   # Set RUNPATH so that libnvcuvid and libcuda in /run/opengl-driver(-32)/lib can be found.
-  # See the explanation in addOpenGLRunpath.
-  postFixup = optionalString (stdenv.isLinux && withLib) ''
-    addOpenGLRunpath ${placeholder "lib"}/lib/libavcodec.so
-    addOpenGLRunpath ${placeholder "lib"}/lib/libavutil.so
+  # See the explanation in addDriverRunpath.
+  postFixup = optionalString (stdenv.hostPlatform.isLinux && withLib) ''
+    addDriverRunpath ${placeholder "lib"}/lib/libavcodec.so
+    addDriverRunpath ${placeholder "lib"}/lib/libavutil.so
   ''
   # https://trac.ffmpeg.org/ticket/10809
   + optionalString (versionAtLeast version "5.0" && withVulkan && !stdenv.hostPlatform.isMinGW) ''
@@ -879,7 +899,10 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = platforms.all;
     # See https://github.com/NixOS/nixpkgs/pull/295344#issuecomment-1992263658
     broken = stdenv.hostPlatform.isMinGW && stdenv.hostPlatform.is64bit;
-    maintainers = with maintainers; [ atemu arthsmn jopejoe1 ];
+    maintainers = with maintainers; [ atemu jopejoe1 emily ];
     mainProgram = "ffmpeg";
   };
+} // lib.optionalAttrs withCudaLLVM {
+  # remove once https://github.com/NixOS/nixpkgs/issues/318674 is addressed properly
+  hardeningDisable = [ "zerocallusedregs" ];
 })
diff --git a/pkgs/development/libraries/ffmpegthumbnailer/default.nix b/pkgs/development/libraries/ffmpegthumbnailer/default.nix
index 10e9b70d42ede..ff1a8615ab798 100644
--- a/pkgs/development/libraries/ffmpegthumbnailer/default.nix
+++ b/pkgs/development/libraries/ffmpegthumbnailer/default.nix
@@ -39,6 +39,11 @@ stdenv.mkDerivation rec {
       --replace '$'{exec_prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@
   '';
 
+  postInstall = ''
+    substituteInPlace $out/share/thumbnailers/ffmpegthumbnailer.thumbnailer \
+      --replace-fail '=ffmpegthumbnailer' "=$out/bin/ffmpegthumbnailer"
+  '';
+
   meta = with lib; {
     description = "Lightweight video thumbnailer";
     longDescription = "FFmpegthumbnailer is a lightweight video
diff --git a/pkgs/development/libraries/ffms/default.nix b/pkgs/development/libraries/ffms/default.nix
index 1afdd23923ddf..6d5db4cdac5b5 100644
--- a/pkgs/development/libraries/ffms/default.nix
+++ b/pkgs/development/libraries/ffms/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     description = "FFmpeg based source library for easy frame accurate access";
     mainProgram = "ffmsindex";
     license = licenses.mit;
-    maintainers = with maintainers; [ tadeokondrak ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix
index 7c06a346e4bb8..b6107f3ef91af 100644
--- a/pkgs/development/libraries/fftw/default.nix
+++ b/pkgs/development/libraries/fftw/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ lib.optional (precision != "double") "--enable-${precision}"
   # https://www.fftw.org/fftw3_doc/SIMD-alignment-and-fftw_005fmalloc.html
   # FFTW will try to detect at runtime whether the CPU supports these extensions
-  ++ lib.optional (stdenv.isx86_64 && (precision == "single" || precision == "double"))
+  ++ lib.optional (stdenv.hostPlatform.isx86_64 && (precision == "single" || precision == "double"))
     "--enable-sse2 --enable-avx --enable-avx2 --enable-avx512 --enable-avx128-fma"
   ++ lib.optional enableMpi "--enable-mpi"
   # doc generation causes Fortran wrapper generation which hard-codes gcc
diff --git a/pkgs/development/libraries/filter-audio/default.nix b/pkgs/development/libraries/filter-audio/default.nix
index a412f70704703..8b76c151b4728 100644
--- a/pkgs/development/libraries/filter-audio/default.nix
+++ b/pkgs/development/libraries/filter-audio/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Lightweight audio filtering library made from webrtc code";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/fizz/default.nix b/pkgs/development/libraries/fizz/default.nix
index cc7a249cf76fb..4c38c54316b72 100644
--- a/pkgs/development/libraries/fizz/default.nix
+++ b/pkgs/development/libraries/fizz/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
   cmakeFlags = [
     "-Wno-dev"
     (lib.cmakeBool "BUILD_TESTS" finalAttrs.finalPackage.doCheck)
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
diff --git a/pkgs/development/libraries/flann/default.nix b/pkgs/development/libraries/flann/default.nix
index eeac7d14568eb..52d64f18e8e50 100644
--- a/pkgs/development/libraries/flann/default.nix
+++ b/pkgs/development/libraries/flann/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/flann-lib/flann";
     license = lib.licenses.bsd3;
     description = "Fast approximate nearest neighbor searches in high dimensional spaces";
-    maintainers = with lib.maintainers; [viric];
+    maintainers = [ ];
     platforms = with lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/flatbuffers/23.nix b/pkgs/development/libraries/flatbuffers/23.nix
new file mode 100644
index 0000000000000..5263694b05623
--- /dev/null
+++ b/pkgs/development/libraries/flatbuffers/23.nix
@@ -0,0 +1,47 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  python3,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "flatbuffers";
+  version = "23.5.26";
+
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "flatbuffers";
+    rev = "v${version}";
+    hash = "sha256-e+dNPNbCHYDXUS/W+hMqf/37fhVgEGzId6rhP3cToTE=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    python3
+  ];
+
+  cmakeFlags = [
+    "-DFLATBUFFERS_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
+    "-DFLATBUFFERS_OSX_BUILD_UNIVERSAL=OFF"
+  ];
+
+  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+  checkTarget = "test";
+
+  meta = with lib; {
+    description = "Memory Efficient Serialization Library";
+    longDescription = ''
+      FlatBuffers is an efficient cross platform serialization library for
+      games and other memory constrained apps. It allows you to directly
+      access serialized data without unpacking/parsing it first, while still
+      having great forwards/backwards compatibility.
+    '';
+    homepage = "https://google.github.io/flatbuffers/";
+    license = licenses.asl20;
+    maintainers = [ maintainers.teh ];
+    mainProgram = "flatc";
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/flatbuffers/default.nix b/pkgs/development/libraries/flatbuffers/default.nix
index 747a976f4c9e3..00bb9cc8d1875 100644
--- a/pkgs/development/libraries/flatbuffers/default.nix
+++ b/pkgs/development/libraries/flatbuffers/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flatbuffers";
-  version = "23.5.26";
+  version = "24.3.25";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "flatbuffers";
     rev = "v${version}";
-    hash = "sha256-e+dNPNbCHYDXUS/W+hMqf/37fhVgEGzId6rhP3cToTE=";
+    hash = "sha256-uE9CQnhzVgOweYLhWPn2hvzXHyBbFiFVESJ1AEM3BmA=";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/development/libraries/flatcc/default.nix b/pkgs/development/libraries/flatcc/default.nix
index 4d74627ee3c93..888fd9f61288d 100644
--- a/pkgs/development/libraries/flatcc/default.nix
+++ b/pkgs/development/libraries/flatcc/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchFromGitHub
+, fetchpatch
 , cmake
 }:
 
@@ -14,19 +15,23 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0/IZ7eX6b4PTnlSSdoOH0FsORGK9hrLr1zlr/IHsJFQ=";
   };
 
+  patches = [
+    # Fix builds on clang15. Remove post-0.6.1.
+    (fetchpatch {
+      name = "clang15fixes.patch";
+      url = "https://github.com/dvidelabs/flatcc/commit/5885e50f88248bc7ed398880c887ab23db89f05a.patch";
+      hash = "sha256-z2HSxNXerDFKtMGu6/vnzGRlqfz476bFMjg4DVfbObQ";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = [
     "-DFLATCC_INSTALL=on"
   ];
 
-  env.NIX_CFLAGS_COMPILE = toString [
-    "-Wno-error=misleading-indentation"
-    "-Wno-error=stringop-overflow"
-  ];
-
   meta = with lib; {
-    description = "FlatBuffers Compiler and Library in C for C ";
+    description = "FlatBuffers Compiler and Library in C for C";
     mainProgram = "flatcc";
     homepage = "https://github.com/dvidelabs/flatcc";
     license = [ licenses.asl20 ];
diff --git a/pkgs/development/libraries/flite/default.nix b/pkgs/development/libraries/flite/default.nix
deleted file mode 100644
index 8573c862726e6..0000000000000
--- a/pkgs/development/libraries/flite/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, alsa-lib
-, fetchpatch
-, libpulseaudio
-, audioBackend ? "pulseaudio"
-}:
-
-assert lib.assertOneOf "audioBackend" audioBackend [ "alsa" "pulseaudio" ];
-
-stdenv.mkDerivation rec {
-  pname = "flite";
-  version = "2.2";
-
-  src = fetchFromGitHub {
-    owner = "festvox";
-    repo = "flite";
-    rev = "v${version}";
-    sha256 = "1n0p81jzndzc1rzgm66kw9ls189ricy5v1ps11y0p2fk1p56kbjf";
-  };
-
-  buildInputs = lib.optional (stdenv.isLinux && audioBackend == "alsa") alsa-lib
-    ++ lib.optional (stdenv.isLinux && audioBackend == "pulseaudio") libpulseaudio;
-
-  # https://github.com/festvox/flite/pull/60.
-  # Replaces `ar` with `$(AR)` in config/common_make_rules.
-  # Improves cross-compilation compatibility.
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/festvox/flite/commit/54c65164840777326bbb83517568e38a128122ef.patch";
-      sha256 = "sha256-hvKzdX7adiqd9D+9DbnfNdqEULg1Hhqe1xElYxNM1B8=";
-    })
-  ];
-
-  configureFlags = [
-    "--enable-shared"
-  ] ++ lib.optionals stdenv.isLinux [ "--with-audio=${audioBackend}" ];
-
-  # main/Makefile creates and removes 'flite_voice_list.c' from multiple targets:
-  # make[1]: *** No rule to make target 'flite_voice_list.c', needed by 'all'.  Stop
-  enableParallelBuilding = false;
-
-  meta = with lib; {
-    description = "Small, fast run-time speech synthesis engine";
-    homepage = "http://www.festvox.org/flite/";
-    license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ getchoo ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/fmt/default.nix b/pkgs/development/libraries/fmt/default.nix
index 9ce329df79573..f42e12f03beca 100644
--- a/pkgs/development/libraries/fmt/default.nix
+++ b/pkgs/development/libraries/fmt/default.nix
@@ -1,23 +1,32 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, enableShared ? !stdenv.hostPlatform.isStatic
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  enableShared ? !stdenv.hostPlatform.isStatic,
 
-# tests
-, mpd
-, openimageio
-, fcitx5
-, spdlog
+  # tests
+  mpd,
+  openimageio,
+  fcitx5,
+  spdlog,
 }:
 
 let
-  generic = { version, sha256, patches ? [ ] }:
+  generic =
+    {
+      version,
+      sha256,
+      patches ? [ ],
+    }:
     stdenv.mkDerivation {
       pname = "fmt";
       inherit version;
 
-      outputs = [ "out" "dev" ];
+      outputs = [
+        "out"
+        "dev"
+      ];
 
       src = fetchFromGitHub {
         owner = "fmtlib";
@@ -30,14 +39,17 @@ let
 
       nativeBuildInputs = [ cmake ];
 
-      cmakeFlags = [
-        "-DBUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}"
-      ];
+      cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}" ];
 
       doCheck = true;
 
       passthru.tests = {
-        inherit mpd openimageio fcitx5 spdlog;
+        inherit
+          mpd
+          openimageio
+          fcitx5
+          spdlog
+          ;
       };
 
       meta = with lib; {
@@ -70,4 +82,9 @@ in
     version = "10.2.1";
     sha256 = "sha256-pEltGLAHLZ3xypD/Ur4dWPWJ9BGVXwqQyKcDWVmC3co=";
   };
+
+  fmt_11 = generic {
+    version = "11.0.1";
+    sha256 = "sha256-EPidbZxCvysrL64AzbpJDowiNxqy4ii+qwSWAFwf/Ps=";
+  };
 }
diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix
index 8a44cd09dac94..777bef9246623 100644
--- a/pkgs/development/libraries/folks/default.nix
+++ b/pkgs/development/libraries/folks/default.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation (finalAttrs: {
   mesonFlags = [
     "-Ddocs=true"
     "-Dtelepathy_backend=${lib.boolToString telepathySupport}"
-    "-Dtests=${lib.boolToString (finalAttrs.doCheck && stdenv.isLinux)}"
+    "-Dtests=${lib.boolToString (finalAttrs.finalPackage.doCheck && stdenv.hostPlatform.isLinux)}"
   ];
 
   # backends/eds/lib/libfolks-eds.so.26.0.0.p/edsf-persona-store.c:10697:4:
diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix
index 171b81af8365d..8a601382f8ead 100644
--- a/pkgs/development/libraries/folly/default.nix
+++ b/pkgs/development/libraries/folly/default.nix
@@ -1,6 +1,5 @@
 { lib
 , stdenv
-, overrideSDK
 , fetchFromGitHub
 , boost
 , cmake
@@ -56,10 +55,10 @@ stdenv.mkDerivation rec {
     libunwind
     fmt_8
     zstd
-  ] ++ lib.optional stdenv.isLinux jemalloc;
+  ] ++ lib.optional stdenv.hostPlatform.isLinux jemalloc;
 
   # jemalloc headers are required in include/folly/portability/Malloc.h
-  propagatedBuildInputs = lib.optional stdenv.isLinux jemalloc;
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isLinux jemalloc;
 
   env.NIX_CFLAGS_COMPILE = toString [ "-DFOLLY_MOBILE=${if follyMobile then "1" else "0"}" "-fpermissive" ];
   cmakeFlags = [
@@ -67,13 +66,13 @@ stdenv.mkDerivation rec {
 
     # temporary hack until folly builds work on aarch64,
     # see https://github.com/facebook/folly/issues/1880
-    "-DCMAKE_LIBRARY_ARCHITECTURE=${if stdenv.isx86_64 then "x86_64" else "dummy"}"
+    "-DCMAKE_LIBRARY_ARCHITECTURE=${if stdenv.hostPlatform.isx86_64 then "x86_64" else "dummy"}"
 
     # ensure correct dirs in $dev/lib/pkgconfig/libfolly.pc
     # see https://github.com/NixOS/nixpkgs/issues/144170
     "-DCMAKE_INSTALL_INCLUDEDIR=include"
     "-DCMAKE_INSTALL_LIBDIR=lib"
-  ] ++ lib.optional (stdenv.isDarwin && stdenv.isx86_64) [
+  ] ++ lib.optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13"
   ];
 
diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix
index 569c2716f0e53..4f7f3c0fe1e99 100644
--- a/pkgs/development/libraries/fontconfig/default.nix
+++ b/pkgs/development/libraries/fontconfig/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildInputs = [
     expat
-  ] ++ lib.optional stdenv.isDarwin CoreFoundation;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin CoreFoundation;
 
   propagatedBuildInputs = [
     freetype
@@ -69,6 +69,7 @@ stdenv.mkDerivation (finalAttrs: {
   postInstall = ''
     cd "$out/etc/fonts"
     xsltproc --stringparam fontDirectories "${dejavu_fonts.minimal}" \
+      --stringparam includes /etc/fonts/conf.d \
       --path $out/share/xml/fontconfig \
       ${./make-fonts-conf.xsl} $out/etc/fonts/fonts.conf \
       > fonts.conf.tmp
diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.nix b/pkgs/development/libraries/fontconfig/make-fonts-conf.nix
index a03f7446b0ab0..669b66267f879 100644
--- a/pkgs/development/libraries/fontconfig/make-fonts-conf.nix
+++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.nix
@@ -4,33 +4,37 @@ let fontconfig_ = fontconfig; in
 {
   fontconfig ? fontconfig_
   # an array of fonts, e.g. `[ pkgs.dejavu_fonts.minimal ]`
-,  fontDirectories
+  ,  fontDirectories
   , impureFontDirectories ? [
     # nix user profile
     "~/.nix-profile/lib/X11/fonts" "~/.nix-profile/share/fonts"
   ]
-  ++ lib.optional stdenv.isDarwin "~/Library/Fonts"
+  ++ lib.optional stdenv.hostPlatform.isDarwin "~/Library/Fonts"
   ++ [
     # FHS paths for non-NixOS platforms
     "/usr/share/fonts" "/usr/local/share/fonts"
   ]
   # darwin paths
-  ++ lib.optionals stdenv.isDarwin [ "/Library/Fonts" "/System/Library/Fonts" ]
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ "/Library/Fonts" "/System/Library/Fonts" ]
   # nix default profile
   ++ [ "/nix/var/nix/profiles/default/lib/X11/fonts" "/nix/var/nix/profiles/default/share/fonts" ]
+
+  # to include custom config
+  , includes ? ["/etc/fonts/conf.d"]
 }:
 
 runCommand "fonts.conf"
   {
     nativeBuildInputs = [ libxslt ];
     buildInputs = [ fontconfig ];
-    inherit fontDirectories;
+    inherit fontDirectories includes;
     # Add a default font for non-nixos systems, <1MB and in nixos defaults.
     impureFontDirectories = impureFontDirectories ++ [ dejavu_fonts.minimal ];
   }
   ''
     xsltproc --stringparam fontDirectories "$fontDirectories" \
       --stringparam impureFontDirectories "$impureFontDirectories" \
+      --stringparam includes "$includes" \
       --path ${fontconfig.out}/share/xml/fontconfig \
       ${./make-fonts-conf.xsl} ${fontconfig.out}/etc/fonts/fonts.conf \
       > $out
diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
index d04e4ffab967b..aafa9345c87cf 100644
--- a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
+++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
@@ -16,6 +16,7 @@
 
   <xsl:param name="fontDirectories" />
   <xsl:param name="impureFontDirectories" />
+  <xsl:param name="includes" />
 
   <xsl:template match="/fontconfig">
 
@@ -30,8 +31,10 @@
       <xsl:text>&#0010;</xsl:text>
 
       <!-- system-wide config -->
-      <include ignore_missing="yes">/etc/fonts/conf.d</include>
-      <xsl:text>&#0010;</xsl:text>
+      <xsl:for-each select="str:tokenize($includes)">
+        <include ignore_missing="yes"><xsl:value-of select="." /></include>
+        <xsl:text>&#0010;</xsl:text>
+      </xsl:for-each>
 
       <dir prefix="xdg">fonts</dir>
       <xsl:text>&#0010;</xsl:text>
diff --git a/pkgs/development/libraries/fox/default.nix b/pkgs/development/libraries/fox/default.nix
index 2715e2c80ca43..68a9806cf47f7 100644
--- a/pkgs/development/libraries/fox/default.nix
+++ b/pkgs/development/libraries/fox/default.nix
@@ -6,13 +6,11 @@
 , libtiff
 , zlib
 , bzip2
-, libGL
-, libGLU
+, mesa_glu
 , libXcursor
 , libXext
 , libXrandr
 , libXft
-, CoreServices
 }:
 
 stdenv.mkDerivation rec {
@@ -24,8 +22,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-bu+IEqNkv9OAf96dPYre3CP759pjalVIbYyc3QSQW2w=";
   };
 
-  buildInputs = [ libpng libjpeg libtiff zlib bzip2 libGL libGLU libXcursor libXext libXrandr libXft ]
-    ++ lib.optional stdenv.isDarwin CoreServices;
+  buildInputs = [ libpng libjpeg libtiff zlib bzip2 mesa_glu libXcursor libXext libXrandr libXft ];
 
   doCheck = true;
 
@@ -43,7 +40,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "http://fox-toolkit.org";
     license = licenses.lgpl3Plus;
-    maintainers = [];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/fox/fox-1.6.nix b/pkgs/development/libraries/fox/fox-1.6.nix
index 0ab874fd76dd2..e10d01d2c8421 100644
--- a/pkgs/development/libraries/fox/fox-1.6.nix
+++ b/pkgs/development/libraries/fox/fox-1.6.nix
@@ -13,6 +13,7 @@
 , libXext
 , libXft
 , libXfixes
+, mesa
 , xinput
 , CoreServices
 }:
@@ -29,7 +30,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libpng libjpeg libtiff zlib bzip2 libXcursor libXrandr
     libXext libXft libGLU libGL libXfixes xinput
-  ] ++ lib.optional stdenv.isDarwin CoreServices;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin CoreServices;
 
   doCheck = true;
 
@@ -38,7 +39,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   meta = {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     branch = "1.6";
     description = "C++ based class library for building Graphical User Interfaces";
     longDescription = ''
@@ -49,7 +50,7 @@ stdenv.mkDerivation rec {
       '';
     homepage = "http://fox-toolkit.org";
     license = lib.licenses.lgpl3;
-    maintainers = [];
-    platforms = lib.platforms.mesaPlatforms;
+    maintainers = [ ];
+    inherit (mesa.meta) platforms;
   };
 }
diff --git a/pkgs/development/libraries/freealut/default.nix b/pkgs/development/libraries/freealut/default.nix
index dbae2b20b61c9..2f98b1c8e7a27 100644
--- a/pkgs/development/libraries/freealut/default.nix
+++ b/pkgs/development/libraries/freealut/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   buildInputs = [ openal
-  ] ++ lib.optional stdenv.isDarwin
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin
     darwin.apple_sdk.frameworks.OpenAL
   ;
 
diff --git a/pkgs/development/libraries/freeglut/default.nix b/pkgs/development/libraries/freeglut/default.nix
index 69c3b65e4a51c..590167fc70361 100644
--- a/pkgs/development/libraries/freeglut/default.nix
+++ b/pkgs/development/libraries/freeglut/default.nix
@@ -1,24 +1,24 @@
-{ lib, stdenv, fetchurl, libICE, libXext, libXi, libXrandr, libXxf86vm, libGL, libGLU, cmake
+{ lib, stdenv, fetchurl, libICE, libXext, libXi, libXrandr, libXxf86vm, libGLX, libGLU, cmake
 , testers
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "freeglut";
-  version = "3.4.0";
+  version = "3.6.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/freeglut/freeglut-${finalAttrs.version}.tar.gz";
-    sha256 = "sha256-PAvLkV2bGAqX7a69ARt6HeVFg6g4ZE3NQrsOoMbz6uw=";
+    sha256 = "sha256-nD1NZRb7+gKA7ck8d2mPtzA+RDwaqvN9Jp4yiKbD6lI=";
   };
 
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ libICE libXext libXi libXrandr libXxf86vm libGL libGLU ];
+  buildInputs = [ libICE libXext libXi libXrandr libXxf86vm libGLU ];
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
-                 "-DOPENGL_INCLUDE_DIR=${libGL}/include"
-                 "-DOPENGL_gl_LIBRARY:FILEPATH=${libGL}/lib/libGL.dylib"
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
+                 "-DOPENGL_INCLUDE_DIR=${libGLX.dev}/include"
+                 "-DOPENGL_gl_LIBRARY:FILEPATH=${libGLX}/lib/libGL.dylib"
                  "-DOPENGL_glu_LIBRARY:FILEPATH=${libGLU}/lib/libGLU.dylib"
                  "-DFREEGLUT_BUILD_DEMOS:BOOL=OFF"
                  "-DFREEGLUT_BUILD_STATIC:BOOL=OFF"
diff --git a/pkgs/development/libraries/freeimage/default.nix b/pkgs/development/libraries/freeimage/default.nix
index 245ea93f63e40..dd63935b23fd6 100644
--- a/pkgs/development/libraries/freeimage/default.nix
+++ b/pkgs/development/libraries/freeimage/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchsvn, darwin, libtiff
+{ lib, stdenv, fetchsvn, cctools, libtiff
 , libpng, zlib, libwebp, libraw, openexr, openjpeg
 , libjpeg, jxrlib, pkg-config
 , fixDarwinDylibNames, autoSignDarwinBinariesHook }:
@@ -30,22 +30,22 @@ stdenv.mkDerivation (finalAttrs: {
       --replace "pkg-config" "$PKG_CONFIG"
     substituteInPlace Makefile.gnu \
       --replace "pkg-config" "$PKG_CONFIG"
-  '' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
+  '' + lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) ''
     # Upstream Makefile hardcodes i386 and x86_64 architectures only
     substituteInPlace Makefile.osx --replace "x86_64" "arm64"
   '';
 
   nativeBuildInputs = [
     pkg-config
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.cctools
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    cctools
     fixDarwinDylibNames
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
     autoSignDarwinBinariesHook
   ];
   buildInputs = [ libtiff libtiff.dev_private libpng zlib libwebp libraw openexr openjpeg libjpeg libjpeg.dev_private jxrlib ];
 
-  postBuild = lib.optionalString (!stdenv.isDarwin) ''
+  postBuild = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     make -f Makefile.fip
   '';
 
@@ -56,13 +56,13 @@ stdenv.mkDerivation (finalAttrs: {
     mkdir -p $INCDIR $INSTALLDIR
   ''
   # Workaround for Makefiles.osx not using ?=
-  + lib.optionalString stdenv.isDarwin ''
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
     makeFlagsArray+=( "INCDIR=$INCDIR" "INSTALLDIR=$INSTALLDIR" )
   '';
 
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     make -f Makefile.fip install
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     ln -s $out/lib/libfreeimage.3.dylib $out/lib/libfreeimage.dylib
   '';
 
@@ -86,7 +86,7 @@ stdenv.mkDerivation (finalAttrs: {
       "CVE-2023-47995"
       "CVE-2023-47996"
     ];
-    maintainers = with lib.maintainers; [viric l-as];
+    maintainers = with lib.maintainers; [ l-as ];
     platforms = with lib.platforms; unix;
   };
 })
diff --git a/pkgs/development/libraries/freenect/default.nix b/pkgs/development/libraries/freenect/default.nix
index 387fac6d84ada..f58785c1e1bd8 100644
--- a/pkgs/development/libraries/freenect/default.nix
+++ b/pkgs/development/libraries/freenect/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, lib, fetchFromGitHub, cmake, libusb1, pkg-config, freeglut, libGLU, libGL, libXi, libXmu
+{ stdenv, lib, fetchFromGitHub, cmake, libusb1, pkg-config, libglut, libGLU, libGL, libXi, libXmu
 , GLUT, Cocoa
  }:
 
 stdenv.mkDerivation rec {
   pname = "freenect";
-  version = "0.7.0";
+  version = "0.7.5";
 
   src = fetchFromGitHub {
     owner = "OpenKinect";
     repo = "libfreenect";
     rev = "v${version}";
-    sha256 = "sha256-Lb5mrl9jiI1Z9UOAlP+bBPNoKNxm5VSrFZRvifEfhoU=";
+    sha256 = "sha256-PpJGFWrlQ5sK7TJxQNoPujw1MxWRjphvblwOqnF+mSg=";
   };
 
-  buildInputs = [ libusb1 freeglut libGLU libGL libXi libXmu ]
-    ++ lib.optionals stdenv.isDarwin [ GLUT Cocoa ];
+  buildInputs = [ libusb1 libglut libGLU libGL libXi libXmu ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ GLUT Cocoa ];
 
   nativeBuildInputs = [ cmake pkg-config ];
 
diff --git a/pkgs/development/libraries/freetds/default.nix b/pkgs/development/libraries/freetds/default.nix
index d6c38b555dd6e..fa86bc4a18c9e 100644
--- a/pkgs/development/libraries/freetds/default.nix
+++ b/pkgs/development/libraries/freetds/default.nix
@@ -8,11 +8,11 @@ assert odbcSupport -> unixODBC != null;
 
 stdenv.mkDerivation rec {
   pname = "freetds";
-  version = "1.4.17";
+  version = "1.4.22";
 
   src = fetchurl {
     url    = "https://www.freetds.org/files/stable/${pname}-${version}.tar.bz2";
-    hash   = "sha256-P3CoRV6zopAtQDmtkbk0o0jKHu4jpKkqPeCCSQWn0aI=";
+    hash   = "sha256-qafyTwp6hxYX526MxuZVaueIBC8cAGGVZlUFSZsjNLE=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/freetts/default.nix b/pkgs/development/libraries/freetts/default.nix
index ec948f1fdccc9..8f6fbad6d4d64 100644
--- a/pkgs/development/libraries/freetts/default.nix
+++ b/pkgs/development/libraries/freetts/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.2.2";
 
   src = fetchzip {
-    url = "mirror://sourceforge/freetts/${finalAttrs.pname}-${finalAttrs.version}-src.zip";
+    url = "mirror://sourceforge/freetts/freetts-${finalAttrs.version}-src.zip";
     hash = "sha256-+bhM0ErEZVnmcz5CBqn/AeGaOhKnCjZzGeqgO/89wms=";
     stripRoot = false;
   };
diff --git a/pkgs/development/libraries/freetype/default.nix b/pkgs/development/libraries/freetype/default.nix
index 8ff0005d0ff07..34e156256afd2 100644
--- a/pkgs/development/libraries/freetype/default.nix
+++ b/pkgs/development/libraries/freetype/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [ pkg-config which ]
     ++ lib.optional (!stdenv.hostPlatform.isWindows) makeWrapper
     # FreeType requires GNU Make, which is not part of stdenv on FreeBSD.
-    ++ lib.optional (!stdenv.isLinux) gnumake;
+    ++ lib.optional (!stdenv.hostPlatform.isLinux) gnumake;
 
   patches = [
     ./enable-table-validation.patch
@@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
   CC_BUILD = "${buildPackages.stdenv.cc}/bin/cc";
 
   # The asm for armel is written with the 'asm' keyword.
-  CFLAGS = lib.optionalString stdenv.isAarch32 "-std=gnu99"
+  CFLAGS = lib.optionalString stdenv.hostPlatform.isAarch32 "-std=gnu99"
     + lib.optionalString stdenv.hostPlatform.is32bit " -D_FILE_OFFSET_BITS=64";
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/freexl/default.nix b/pkgs/development/libraries/freexl/default.nix
index 74d4a646b074b..ffcf81e92f58c 100644
--- a/pkgs/development/libraries/freexl/default.nix
+++ b/pkgs/development/libraries/freexl/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     expat
     minizip
     zlib
-  ] ++ lib.optional stdenv.isDarwin libiconv;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin libiconv;
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/frei0r/default.nix b/pkgs/development/libraries/frei0r/default.nix
index 1b0a3007710b4..d05d8ddd5f4ae 100644
--- a/pkgs/development/libraries/frei0r/default.nix
+++ b/pkgs/development/libraries/frei0r/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "frei0r-plugins";
-  version = "2.3.2";
+  version = "2.3.3";
 
   src = fetchFromGitHub {
     owner = "dyne";
     repo = "frei0r";
     rev = "v${version}";
-    hash = "sha256-shPCCKcmacSB/mqwLU6BPR1p+/9Myg759MMehj9yijI=";
+    hash = "sha256-uKYCJD88TnrJTTnzCCietNt01QPeFW+hhnjcBNKUWsY=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     homepage = "https://frei0r.dyne.org";
     description = "Minimalist, cross-platform, shared video plugins";
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/fribidi/default.nix b/pkgs/development/libraries/fribidi/default.nix
index d23cd352360bc..691b826e3af55 100644
--- a/pkgs/development/libraries/fribidi/default.nix
+++ b/pkgs/development/libraries/fribidi/default.nix
@@ -11,14 +11,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "fribidi";
-  version = "1.0.13";
+  version = "1.0.15";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   # NOTE: Only URL tarball has "Have pre-generated man pages: true", which works-around upstream usage of some rare ancient `c2man` fossil application.
   src = fetchurl {
     url = with finalAttrs; "https://github.com/fribidi/fribidi/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-f6FsgMgb1iL3sZjTE1baE5zDGKY/x3YSF69BMJA/VKI=";
+    sha256 = "sha256-C7x/9jO/ogiuMtfjac9afSDV0lV6CwZ8mqmLy/mWdYc=";
   };
 
   postPatch = ''
@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   nativeBuildInputs = [ meson ninja pkg-config ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
diff --git a/pkgs/development/libraries/ftgl/default.nix b/pkgs/development/libraries/ftgl/default.nix
deleted file mode 100644
index b6554979c7ee4..0000000000000
--- a/pkgs/development/libraries/ftgl/default.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, doxygen
-, freeglut
-, freetype
-, libGL
-, libGLU
-, pkg-config
-, darwin
-}:
-
-let
-  inherit (darwin.apple_sdk.frameworks) OpenGL GLUT;
-in
-stdenv.mkDerivation rec {
-  pname = "ftgl";
-  version = "2.4.0";
-
-  src = fetchFromGitHub {
-    owner = "frankheckenbach";
-    repo = "ftgl";
-    rev = "v${version}";
-    hash = "sha256-6TDNGoMeBLnucmHRgEDIVWcjlJb7N0sTluqBwRMMWn4=";
-  };
-
-  # GL_DYLIB is hardcoded to an impure path
-  # /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
-  # and breaks build on recent macOS versions
-  postPatch = ''
-    substituteInPlace m4/gl.m4 \
-      --replace ' -dylib_file $GL_DYLIB: $GL_DYLIB' ""
-  '';
-
-  nativeBuildInputs = [
-    autoreconfHook
-    doxygen
-    pkg-config
-  ];
-  buildInputs = [
-    freetype
-  ] ++ (if stdenv.isDarwin then [
-    OpenGL
-    GLUT
-  ] else [
-    libGL
-    libGLU
-    freeglut
-  ]);
-
-  configureFlags = [
-    "--with-ft-prefix=${lib.getDev freetype}"
-  ];
-
-  enableParallelBuilding = true;
-
-  postInstall = ''
-    install -Dm644 src/FTSize.h -t ${placeholder "out"}/include/FTGL
-    install -Dm644 src/FTFace.h -t ${placeholder "out"}/include/FTGL
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/frankheckenbach/ftgl";
-    description = "Font rendering library for OpenGL applications";
-    longDescription = ''
-      FTGL is a free cross-platform Open Source C++ library that uses Freetype2
-      to simplify rendering fonts in OpenGL applications. FTGL supports bitmaps,
-      pixmaps, texture maps, outlines, polygon mesh, and extruded polygon
-      rendering modes.
-    '';
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/functionalplus/default.nix b/pkgs/development/libraries/functionalplus/default.nix
index e4eef8dfe532c..e07fa8fec5f26 100644
--- a/pkgs/development/libraries/functionalplus/default.nix
+++ b/pkgs/development/libraries/functionalplus/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "functionalplus";
-  version = "0.2.24";
+  version = "0.2.25";
 
   src = fetchFromGitHub {
     owner = "Dobiasd";
     repo = "FunctionalPlus";
     rev = "v${version}";
-    sha256 = "sha256-iQGvqFiTqejSqXALgUWCBjfH9QO0cg3vnI5PphgVoms=";
+    sha256 = "sha256-eKCOi5g8YdKgxaI/mLlqB2m1zwrU9DOSrQF+PW2DBBQ=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/Dobiasd/FunctionalPlus";
     license = licenses.boost;
     platforms = platforms.all;
-    maintainers = [];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/g2o/default.nix b/pkgs/development/libraries/g2o/default.nix
index 7ff0c207060c0..6f6560ea9f3f1 100644
--- a/pkgs/development/libraries/g2o/default.nix
+++ b/pkgs/development/libraries/g2o/default.nix
@@ -28,7 +28,7 @@ mkDerivation rec {
     # Detection script is broken
     "-DQGLVIEWER_INCLUDE_DIR=${libqglviewer}/include/QGLViewer"
     "-DG2O_BUILD_EXAMPLES=OFF"
-  ] ++ lib.optionals stdenv.isx86_64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [
     "-DDO_SSE_AUTODETECT=OFF"
     "-DDISABLE_SSE3=${  if stdenv.hostPlatform.sse3Support   then "OFF" else "ON"}"
     "-DDISABLE_SSE4_1=${if stdenv.hostPlatform.sse4_1Support then "OFF" else "ON"}"
@@ -43,6 +43,6 @@ mkDerivation rec {
     maintainers = with maintainers; [ lopsided98 ];
     platforms = platforms.all;
     # fatal error: 'qglviewer.h' file not found
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/galario/default.nix b/pkgs/development/libraries/galario/default.nix
index 8b54cfb7b8797..add2445f4462c 100644
--- a/pkgs/development/libraries/galario/default.nix
+++ b/pkgs/development/libraries/galario/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ fftw fftwFloat ]
   ++ lib.optional enablePython pythonPackages.python
-  ++ lib.optional stdenv.isDarwin llvmPackages.openmp
+  ++ lib.optional stdenv.hostPlatform.isDarwin llvmPackages.openmp
   ;
 
   propagatedBuildInputs = lib.optionals enablePython [
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
   '';
 
   preCheck = ''
-    ${if stdenv.isDarwin then "export DYLD_LIBRARY_PATH=$(pwd)/src/" else "export LD_LIBRARY_PATH=$(pwd)/src/"}
+    ${if stdenv.hostPlatform.isDarwin then "export DYLD_LIBRARY_PATH=$(pwd)/src/" else "export LD_LIBRARY_PATH=$(pwd)/src/"}
     ${lib.optionalString enablePython "sed -i -e 's|^#!.*|#!${stdenv.shell}|' python/py.test.sh"}
   '';
 
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  postInstall = lib.optionalString (stdenv.isDarwin && enablePython) ''
+  postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin && enablePython) ''
     install_name_tool -change libgalario.dylib $out/lib/libgalario.dylib $out/lib/python*/site-packages/galario/double/libcommon.so
     install_name_tool -change libgalario_single.dylib $out/lib/libgalario_single.dylib $out/lib/python*/site-packages/galario/single/libcommon.so
   '';
diff --git a/pkgs/development/libraries/gamin/abstract-socket-namespace.patch b/pkgs/development/libraries/gamin/abstract-socket-namespace.patch
deleted file mode 100644
index ff1610559721e..0000000000000
--- a/pkgs/development/libraries/gamin/abstract-socket-namespace.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From 737452159d521aef2041a2767f3ebf9f68f4b6a9 Mon Sep 17 00:00:00 2001
-From: Christian Kampka <christian@kampka.net>
-Date: Tue, 1 Sep 2020 13:54:35 +0200
-Subject: [PATCH] Pin abstract namespace sockets to host_os
-
-Running programs with AC_RUN_IFELSE fails when cross-compiling.
-Since abstract namespace sockets are linux feature, we can easily
-assume it is available for linux and not for darwin.
----
- configure.in | 47 ++++++-----------------------------------------
- 1 file changed, 6 insertions(+), 41 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index eb129db..0ed82ba 100644
---- a/configure.in
-+++ b/configure.in
-@@ -387,47 +387,12 @@ fi
- 
- #### Abstract sockets
- 
--AC_MSG_CHECKING(abstract socket namespace)
--AC_LANG_PUSH(C)
--AC_RUN_IFELSE([AC_LANG_PROGRAM(
--[[
--#include <sys/types.h>
--#include <stdlib.h>
--#include <string.h>
--#include <stdio.h>
--#include <sys/socket.h>
--#include <sys/un.h>
--#include <errno.h>
--]],
--[[
--  int listen_fd;
--  struct sockaddr_un addr;
--  
--  listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
--  
--  if (listen_fd < 0)
--    {
--      fprintf (stderr, "socket() failed: %s\n", strerror (errno));
--      exit (1);
--    }
--
--  memset (&addr, '\0', sizeof (addr));
--  addr.sun_family = AF_UNIX;
--  strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
--  addr.sun_path[0] = '\0'; /* this is what makes it abstract */
--  
--  if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0)
--    {
--       fprintf (stderr, "Abstract socket namespace bind() failed: %s\n", 
--                strerror (errno));
--       exit (1);
--    }
--  else 
--    exit (0);
--]])],
--              [have_abstract_sockets=yes],
--              [have_abstract_sockets=no])
--AC_LANG_POP(C)
-+AC_MSG_CHECKING([whether target os has abstract socket namespace])
-+if test x$target_os = xlinux-gnu ; then
-+    have_abstract_sockets=yes
-+else
-+    have_abstract_sockets=no
-+fi	
- AC_MSG_RESULT($have_abstract_sockets)
- 
- if test x$enable_abstract_sockets = xyes; then
--- 
-2.25.4
-
diff --git a/pkgs/development/libraries/gamin/deadlock.patch b/pkgs/development/libraries/gamin/deadlock.patch
deleted file mode 100644
index e2abc8ce2d97d..0000000000000
--- a/pkgs/development/libraries/gamin/deadlock.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Fix for a deadlock:
-https://bugzilla.gnome.org/show_bug.cgi?id=667230
-
-From cc14440eface093548cb3bc7814da11d9a99d283 Mon Sep 17 00:00:00 2001
-From: Anssi Hannula <anssi@mageia.org>
-Date: Wed, 4 Jan 2012 00:23:55 +0200
-Subject: [PATCH] fix possible server deadlock in ih_sub_cancel
-
-ih_sub_foreach() calls ih_sub_cancel() while inotify_lock is locked.
-However, ih_sub_cancel() locks it again, and locking GMutex recursively
-causes undefined behaviour.
-
-Fix that by removing locking from ih_sub_cancel() as ih_sub_foreach()
-is its only user. Also make the function static so that it won't
-accidentally get used by other files without locking (inotify-helper.h
-is an internal server header).
-
-This should fix the intermittent deadlocks I've been experiencing
-causing KDE applications to no longer start, and probably also
-http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542361
----
- server/inotify-helper.c |    7 ++-----
- server/inotify-helper.h |    1 -
- 2 files changed, 2 insertions(+), 6 deletions(-)
-
-diff --git a/server/inotify-helper.c b/server/inotify-helper.c
-index d77203e..0789fa4 100644
---- a/server/inotify-helper.c
-+++ b/server/inotify-helper.c
-@@ -123,13 +123,11 @@ ih_sub_add (ih_sub_t * sub)
- 
- /**
-  * Cancels a subscription which was being monitored.
-+ * inotify_lock must be held when calling.
-  */
--gboolean
-+static gboolean
- ih_sub_cancel (ih_sub_t * sub)
- {
--	G_LOCK(inotify_lock);
--
--
- 	if (!sub->cancelled)
- 	{
- 		IH_W("cancelling %s\n", sub->pathname);
-@@ -140,7 +138,6 @@ ih_sub_cancel (ih_sub_t * sub)
- 		sub_list = g_list_remove (sub_list, sub);
- 	}
- 
--	G_UNLOCK(inotify_lock);
- 	return TRUE;
- }
- 
-diff --git a/server/inotify-helper.h b/server/inotify-helper.h
-index 5d3b6d0..d36b5fd 100644
---- a/server/inotify-helper.h
-+++ b/server/inotify-helper.h
-@@ -34,7 +34,6 @@ gboolean	 ih_startup		(event_callback_t ecb,
- 					 found_callback_t fcb);
- gboolean	 ih_running		(void);
- gboolean	 ih_sub_add		(ih_sub_t *sub);
--gboolean	 ih_sub_cancel		(ih_sub_t *sub);
- 
- /* Return FALSE from 'f' if the subscription should be cancelled */
- void		 ih_sub_foreach		(void *callerdata, gboolean (*f)(ih_sub_t *sub, void *callerdata));
--- 
-1.7.7.2
-
diff --git a/pkgs/development/libraries/gamin/debian-patches.nix b/pkgs/development/libraries/gamin/debian-patches.nix
deleted file mode 100644
index a8f334fb3c394..0000000000000
--- a/pkgs/development/libraries/gamin/debian-patches.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-# Generated by debian-patches.sh from debian-patches.txt
-let
-  prefix = "https://sources.debian.org/data/main/g/gamin/0.1.10-4.1/debian/patches";
-in
-[
-  {
-    url = "${prefix}/17_deprecated_const_return.patch";
-    sha256 = "0bssrqcmyivlpk2g0q71d1yavd4wv1lw34l8qipm0ndljjd6rbrk";
-  }
-]
diff --git a/pkgs/development/libraries/gamin/debian-patches.txt b/pkgs/development/libraries/gamin/debian-patches.txt
deleted file mode 100644
index 46d2420b21ede..0000000000000
--- a/pkgs/development/libraries/gamin/debian-patches.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gamin/0.1.10-4.1
-17_deprecated_const_return.patch
diff --git a/pkgs/development/libraries/gamin/default.nix b/pkgs/development/libraries/gamin/default.nix
deleted file mode 100644
index e2d32fd645278..0000000000000
--- a/pkgs/development/libraries/gamin/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, glib, autoreconfHook }:
-
-stdenv.mkDerivation rec {
-  pname = "gamin";
-  version = "0.1.10";
-
-  src = fetchurl {
-    url = "https://www.gnome.org/~veillard/gamin/sources/gamin-${version}.tar.gz";
-    sha256 = "18cr51y5qacvs2fc2p1bqv32rs8bzgs6l67zhasyl45yx055y218";
-  };
-
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
-
-  buildInputs = [ glib ];
-
-  # `_GNU_SOURCE' is needed, e.g., to get `struct ucred' from
-  # <sys/socket.h> with Glibc 2.9.
-  configureFlags = [
-    "--disable-debug"
-    "--without-python" # python3 not supported
-    "CPPFLAGS=-D_GNU_SOURCE"
-  ];
-
-  preBuild = lib.optionalString stdenv.isDarwin ''
-    sed -i 's/,--version-script=.*$/\\/' libgamin/Makefile
-  '';
-
-  env = lib.optionalAttrs stdenv.cc.isClang {
-    NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
-  };
-
-  patches = [ ./deadlock.patch ]
-    ++ map fetchurl (import ./debian-patches.nix)
-    ++ lib.optional stdenv.cc.isClang ./returnval.patch
-    ++ lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
-      name = "fix-pthread-mutex.patch";
-      url = "https://git.alpinelinux.org/aports/plain/main/gamin/fix-pthread-mutex.patch?h=3.4-stable&id=a1a836b089573752c1b0da7d144c0948b04e8ea8";
-      sha256 = "13igdbqsxb3sz0h417k6ifmq2n4siwqspj6slhc7fdl5wd1fxmdz";
-    }) ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) ./abstract-socket-namespace.patch;
-
-
-  meta = with lib; {
-    homepage    = "https://people.gnome.org/~veillard/gamin/";
-    description = "File and directory monitoring system";
-    maintainers = with maintainers; [ lovek323 ];
-    license = licenses.gpl2;
-    platforms   = platforms.unix;
-  };
-}
-
diff --git a/pkgs/development/libraries/gamin/returnval.patch b/pkgs/development/libraries/gamin/returnval.patch
deleted file mode 100644
index 3944b14be64ca..0000000000000
--- a/pkgs/development/libraries/gamin/returnval.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -rupN gamin-0.1.10-orig/server/gam_eq.c gamin-0.1.10/server/gam_eq.c
---- gamin-0.1.10-orig/server/gam_eq.c	2015-04-05 19:25:54.000000000 -0400
-+++ gamin-0.1.10/server/gam_eq.c	2015-04-05 19:26:00.000000000 -0400
-@@ -124,7 +124,7 @@ gam_eq_flush (gam_eq_t *eq, GamConnDataP
- {
- 	gboolean done_work = FALSE;
- 	if (!eq)
--		return;
-+		return done_work;
- 
- #ifdef GAM_EQ_VERBOSE
- 	GAM_DEBUG(DEBUG_INFO, "gam_eq: Flushing event queue for %s\n", gam_connection_get_pidname (conn));
diff --git a/pkgs/development/libraries/ganv/default.nix b/pkgs/development/libraries/ganv/default.nix
index 1e4b8436e8228..4c477421a7fd5 100644
--- a/pkgs/development/libraries/ganv/default.nix
+++ b/pkgs/development/libraries/ganv/default.nix
@@ -1,27 +1,51 @@
-{ lib, stdenv, fetchgit, graphviz, gtk2, gtkmm2, pkg-config, python3, wafHook }:
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  graphviz,
+  gtk2,
+  gtkmm2,
+  meson,
+  ninja,
+  cmake,
+  pkg-config,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "ganv";
-  version = "unstable-2019-12-30";
+  version = "1.8.2-unstable-2024-07-04";
 
-  src = fetchgit {
-    url = "https://gitlab.com/drobilla/${pname}.git";
-    fetchSubmodules = true;
-    rev = "90bd022f8909f92cc5290fdcfc76c626749e1186";
-    sha256 = "01znnalirbqxpz62fbw2c14c8xn117jc92xv6dhb3hln92k9x37f";
+  src = fetchFromGitLab {
+    owner = "drobilla";
+    repo = "ganv";
+    rev = "4d2e04dbcabd0b5d715ea7eeeb909f4088055763";
+    hash = "sha256-DzODtYI8uwP65ck8Q90QEnjQbvPobepeQVgNZZjF+jk=";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 gtk2 ];
-  buildInputs = [ graphviz gtkmm2 ];
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    cmake
+  ];
+
+  buildInputs = [
+    gtk2
+    gtkmm2
+    graphviz
+  ];
 
   strictDeps = true;
 
-  meta = with lib; {
+  # libintl detection does not work even if provided
+  mesonAutoFeatures = "disabled";
+
+  meta = {
     description = "Interactive Gtk canvas widget for graph-based interfaces";
     mainProgram = "ganv_bench";
     homepage = "http://drobilla.net";
-    license = licenses.gpl3;
-    maintainers = [ maintainers.goibhniu ];
-    platforms = platforms.linux;
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ t4ccer ];
+    platforms = lib.platforms.linux;
   };
-  }
+}
diff --git a/pkgs/development/libraries/garmintools/default.nix b/pkgs/development/libraries/garmintools/default.nix
index e183a24c81280..2c5740692f4b8 100644
--- a/pkgs/development/libraries/garmintools/default.nix
+++ b/pkgs/development/libraries/garmintools/default.nix
@@ -14,6 +14,6 @@ stdenv.mkDerivation rec {
     maintainers = [ ];
     platforms = lib.platforms.unix;
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
   };
 }
diff --git a/pkgs/development/libraries/gbenchmark/default.nix b/pkgs/development/libraries/gbenchmark/default.nix
index fd7c22a674d0b..be39b0d7cbdd3 100644
--- a/pkgs/development/libraries/gbenchmark/default.nix
+++ b/pkgs/development/libraries/gbenchmark/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gbenchmark";
-  version = "1.8.3";
+  version = "1.8.5";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "benchmark";
     rev = "v${version}";
-    sha256 = "sha256-gztnxui9Fe/FTieMjdvfJjWHjkImtlsHn6fM1FruyME=";
+    hash = "sha256-c46Xna/t21WKaFa7n4ieIacsrxJ+15uGNYWCUVuUhsI=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   # Tests fail on 32-bit due to not enough precision
-  doCheck = stdenv.is64bit;
+  doCheck = stdenv.hostPlatform.is64bit;
 
   passthru.tests = {
     inherit prometheus-cpp;
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     description = "Microbenchmark support library";
     homepage = "https://github.com/google/benchmark";
     license = licenses.asl20;
-    platforms = platforms.linux ++ platforms.darwin;
+    platforms = platforms.linux ++ platforms.darwin ++ platforms.freebsd;
     maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/development/libraries/gcc/libstdc++/5.nix b/pkgs/development/libraries/gcc/libstdc++/5.nix
index 48a034aebcebc..455c84e5dc187 100644
--- a/pkgs/development/libraries/gcc/libstdc++/5.nix
+++ b/pkgs/development/libraries/gcc/libstdc++/5.nix
@@ -114,6 +114,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar ];
     # never built on aarch64-linux since first introduction in nixpkgs
-    broken = stdenv.isLinux && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64;
   };
 }
diff --git a/pkgs/development/libraries/gd/default.nix b/pkgs/development/libraries/gd/default.nix
index bf59bdd1f625a..6b1a471d4aac3 100644
--- a/pkgs/development/libraries/gd/default.nix
+++ b/pkgs/development/libraries/gd/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     "--enable-gd-formats"
   ]
     # -pthread gets passed to clang, causing warnings
-    ++ lib.optional stdenv.isDarwin "--enable-werror=no";
+    ++ lib.optional stdenv.hostPlatform.isDarwin "--enable-werror=no";
 
   nativeBuildInputs = [ autoconf automake pkg-config ];
 
@@ -62,6 +62,6 @@ stdenv.mkDerivation rec {
     description = "Dynamic image creation library";
     license = licenses.free; # some custom license
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix
index f8bf3f7c075aa..6bddc8c6b5e5c 100644
--- a/pkgs/development/libraries/gdal/default.nix
+++ b/pkgs/development/libraries/gdal/default.nix
@@ -5,7 +5,7 @@
 , fetchpatch
 
 , useMinimalFeatures ? false
-, useTiledb ? (!useMinimalFeatures) && !(stdenv.isDarwin && stdenv.isx86_64)
+, useTiledb ? (!useMinimalFeatures) && !(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64)
 , useLibHEIF ? (!useMinimalFeatures)
 , useLibJXL ? (!useMinimalFeatures)
 , useMysql ? (!useMinimalFeatures)
@@ -80,20 +80,23 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gdal" + lib.optionalString useMinimalFeatures "-minimal";
-  version = "3.9.0";
+  version = "3.9.2";
 
   src = fetchFromGitHub {
     owner = "OSGeo";
     repo = "gdal";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-xEekgF9GzsPYkwk7Nny9b1DMLTxBqTSdudYxaz4jl/c=";
+    hash = "sha256-BXnpNfi9tUd6nnwYdstuOfGsFVif8kkmkW97X1UAgt8=";
   };
 
   patches = [
-    # HDF5: add support for libhdf5 >= 1.14.4.2 when built with Float16
     (fetchpatch {
-      url = "https://github.com/OSGeo/gdal/commit/16ade8253f26200246abb5ab24d17e18216e7a11.patch";
-      sha256 = "sha256-N6YqfcOUWeaJXVE9RUo1dzulxqIY5Q/UygPnZHau3Lc=";
+      url = "https://github.com/OSGeo/gdal/commit/91e4f55f8f374a75f8f2ecd05670edcfa4c0af84.patch";
+      sha256 = "sha256-C2lkZLsORso7WVxgX79r5swkoVu/APPwQp2C/rmmCAo=";
+    })
+    (fetchpatch {
+      url = "https://github.com/OSGeo/gdal/commit/40c3212fe4ba93e5176df4cd8ae5e29e06bb6027.patch";
+      sha256 = "sha256-D55iT6E/YdpSyfN7KUDTh1gdmIDLHXW4VC5d6D9B7ls=";
     })
   ];
 
@@ -116,9 +119,9 @@ stdenv.mkDerivation (finalAttrs: {
     "-DMYSQL_LIBRARY=${lib.getLib libmysqlclient}/lib/${lib.optionalString (libmysqlclient.pname != "mysql") "mysql/"}libmysqlclient${stdenv.hostPlatform.extensions.sharedLibrary}"
   ] ++ lib.optionals finalAttrs.doInstallCheck [
     "-DBUILD_TESTING=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     "-DCMAKE_SKIP_BUILD_RPATH=ON" # without, libgdal.so can't find libmariadb.so
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON"
   ] ++ lib.optionals (!useTiledb) [
     "-DGDAL_USE_TILEDB=OFF"
@@ -154,8 +157,8 @@ stdenv.mkDerivation (finalAttrs: {
       netCdfDeps = lib.optionals useNetCDF [ netcdf ];
       armadilloDeps = lib.optionals useArmadillo [ armadillo ];
 
-      darwinDeps = lib.optionals stdenv.isDarwin [ libiconv ];
-      nonDarwinDeps = lib.optionals (!stdenv.isDarwin) ([
+      darwinDeps = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
+      nonDarwinDeps = lib.optionals (!stdenv.hostPlatform.isDarwin) ([
         # tests for formats enabled by these packages fail on macos
         openexr
         xercesc
@@ -177,7 +180,7 @@ stdenv.mkDerivation (finalAttrs: {
       json_c
       lerc
       xz
-      libxml2
+      (libxml2.override { enableHttp = true; })
       lz4
       openjpeg
       openssl
@@ -265,10 +268,13 @@ stdenv.mkDerivation (finalAttrs: {
     # failing with PROJ 9.3.1
     # https://github.com/OSGeo/gdal/issues/8908
     "test_osr_esri_28"
-  ] ++ lib.optionals (!stdenv.isx86_64) [
+    # flakey tests, to remove on next release
+    "test_vsiaz_write_blockblob_chunk_size_1"
+    "test_vsiaz_fake_write"
+  ] ++ lib.optionals (!stdenv.hostPlatform.isx86_64) [
     # likely precision-related expecting x87 behaviour
     "test_jp2openjpeg_22"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # flaky on macos
     "test_rda_download_queue"
   ] ++ lib.optionals (lib.versionOlder proj.version "8") [
diff --git a/pkgs/development/libraries/gdbm/default.nix b/pkgs/development/libraries/gdbm/default.nix
deleted file mode 100644
index d6ed7d32e7016..0000000000000
--- a/pkgs/development/libraries/gdbm/default.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-{ stdenv, lib, fetchurl, updateAutotoolsGnuConfigScriptsHook }:
-
-stdenv.mkDerivation rec {
-  pname = "gdbm";
-  version = "1.23";
-
-  src = fetchurl {
-    url = "mirror://gnu/gdbm/${pname}-${version}.tar.gz";
-    sha256 = "sha256-dLEIHSH/8TrkvXwW5dblBKTCb3zeHcoNljpIQXS7ys0=";
-  };
-
-  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
-
-  doCheck = true; # not cross;
-
-  # Linking static stubs on cygwin requires correct ordering.
-  # Consider upstreaming this.
-
-  # Disable dbmfetch03.at test because it depends on unlink()
-  # failing on a link in a chmod -w directory, which cygwin
-  # apparently allows.
-  postPatch = lib.optionalString stdenv.buildPlatform.isCygwin ''
-      substituteInPlace tests/Makefile.in --replace \
-        '_LDADD = ../src/libgdbm.la ../compat/libgdbm_compat.la' \
-        '_LDADD = ../compat/libgdbm_compat.la ../src/libgdbm.la'
-      substituteInPlace tests/testsuite.at --replace \
-        'm4_include([dbmfetch03.at])' ""
-  '';
-
-  enableParallelBuilding = true;
-  configureFlags = [ "--enable-libgdbm-compat" ];
-
-  # create symlinks for compatibility
-  postInstall = ''
-    install -dm755 $out/include/gdbm
-    (
-      cd $out/include/gdbm
-      ln -s ../gdbm.h gdbm.h
-      ln -s ../ndbm.h ndbm.h
-      ln -s ../dbm.h  dbm.h
-    )
-  '';
-
-  meta = with lib; {
-    description = "GNU dbm key/value database library";
-    longDescription = ''
-       GNU dbm (or GDBM, for short) is a library of database functions that
-       use extensible hashing and work similar to the standard UNIX dbm.
-       These routines are provided to a programmer needing to create and
-       manipulate a hashed database.
-
-       The basic use of GDBM is to store key/data pairs in a data file.
-       Each key must be unique and each key is paired with only one data
-       item.
-
-       The library provides primitives for storing key/data pairs,
-       searching and retrieving the data by its key and deleting a key
-       along with its data.  It also support sequential iteration over all
-       key/data pairs in a database.
-
-       For compatibility with programs using old UNIX dbm function, the
-       package also provides traditional dbm and ndbm interfaces.
-      '';
-    homepage = "https://www.gnu.org/software/gdbm/";
-    license = licenses.gpl3Plus;
-    platforms = platforms.all;
-    maintainers = [ maintainers.vrthra ];
-  };
-}
diff --git a/pkgs/development/libraries/gdcm/default.nix b/pkgs/development/libraries/gdcm/default.nix
index bdfa576f23dfe..50ad7bdd9fd62 100644
--- a/pkgs/development/libraries/gdcm/default.nix
+++ b/pkgs/development/libraries/gdcm/default.nix
@@ -10,7 +10,7 @@
 , libiconv
 , enablePython ? false
 , python ? null
-, swig4
+, swig
 , expat
 , libuuid
 , openjpeg
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-  ] ++ lib.optional stdenv.isDarwin DarwinTools;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin DarwinTools;
 
   buildInputs = [
     expat
@@ -60,11 +60,11 @@ stdenv.mkDerivation rec {
     zlib
   ] ++ lib.optionals enableVTK [
     vtk
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
     Cocoa
     libiconv
-  ] ++ lib.optionals enablePython [ swig4 python ];
+  ] ++ lib.optionals enablePython [ swig python ];
 
   disabledTests = [
     # require networking:
@@ -72,12 +72,12 @@ stdenv.mkDerivation rec {
     "TestFind"
     "gdcmscu-echo-dicomserver"
     "gdcmscu-find-dicomserver"
-    # seemingly ought to be be disabled when the test data submodule is not present:
+    # seemingly ought to be disabled when the test data submodule is not present:
     "TestvtkGDCMImageReader2_3"
     "TestSCUValidation"
     # errors because 3 classes not wrapped:
     "TestWrapPython"
-  ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux) [
     "TestRescaler2"
   ];
 
diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix
index 9260f8fc1e2c3..b7ba122453629 100644
--- a/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
 
     # for man pages
     docutils
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ] ++ lib.optionals withIntrospection [
     gi-docgen
@@ -105,7 +105,7 @@ stdenv.mkDerivation (finalAttrs: {
       moveToOutput "bin" "$dev"
       moveToOutput "bin/gdk-pixbuf-thumbnailer" "$out"
 
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
       # meson erroneously installs loaders with .dylib extension on Darwin.
       # Their @rpath has to be replaced before gdk-pixbuf-query-loaders looks at them.
       for f in $out/${finalAttrs.passthru.moduleDir}/*.dylib; do
@@ -118,7 +118,7 @@ stdenv.mkDerivation (finalAttrs: {
     '';
 
   # The fixDarwinDylibNames hook doesn't patch binaries.
-  preFixup = lib.optionalString stdenv.isDarwin ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     for f in $out/bin/* $dev/bin/*; do
         install_name_tool -change @rpath/libgdk_pixbuf-2.0.0.dylib $out/lib/libgdk_pixbuf-2.0.0.dylib $f
     done
@@ -134,7 +134,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   setupHook = ./setup-hook.sh;
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   passthru = {
     updateScript = gnome.updateScript {
@@ -156,7 +156,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Library for image loading and manipulation";
     homepage = "https://gitlab.gnome.org/GNOME/gdk-pixbuf";
     license = licenses.lgpl21Plus;
-    maintainers = [ maintainers.eelco ] ++ teams.gnome.members;
+    maintainers = teams.gnome.members;
     mainProgram = "gdk-pixbuf-thumbnailer";
     pkgConfigModules = [ "gdk-pixbuf-2.0" ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/gdk-pixbuf/xlib.nix b/pkgs/development/libraries/gdk-pixbuf/xlib.nix
index dd498bb9aeac6..0e0e2108da8dd 100644
--- a/pkgs/development/libraries/gdk-pixbuf/xlib.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/xlib.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Deprecated API for integrating GdkPixbuf with Xlib data types";
     homepage = "https://gitlab.gnome.org/Archive/gdk-pixbuf-xlib";
-    maintainers = teams.gnome.members;
+    maintainers = [ ];
     license = licenses.lgpl21Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/gegl/default.nix b/pkgs/development/libraries/gegl/default.nix
index addc4a9dbe448..95cdef4734671 100644
--- a/pkgs/development/libraries/gegl/default.nix
+++ b/pkgs/development/libraries/gegl/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
     gexiv2
     openexr
     suitesparse
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     OpenCL
   ] ++ lib.optionals stdenv.cc.isClang [
     llvmPackages.openmp
@@ -114,7 +114,7 @@ stdenv.mkDerivation rec {
   '';
 
   # tests fail to connect to the com.apple.fonts daemon in sandboxed mode
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "Graph-based image processing framework";
diff --git a/pkgs/development/libraries/gensio/default.nix b/pkgs/development/libraries/gensio/default.nix
index 8a895c36e8657..9bd0633e3d1b5 100644
--- a/pkgs/development/libraries/gensio/default.nix
+++ b/pkgs/development/libraries/gensio/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gensio";
-  version = "2.8.5";
+  version = "2.8.9";
 
   src = fetchFromGitHub {
     owner = "cminyard";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-J1fP3CtTLkUMZxzsbu3ZMbg4ag1NFvaI5AibFT7eZso=";
+    sha256 = "sha256-xW3I1OfL+AfbeKf/kwBdsZRoCsPPZ7oLMppeIepn/P0=";
   };
 
   passthru = {
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ openssl ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ openssl ];
 
   meta = with lib; {
     description = "General Stream I/O";
diff --git a/pkgs/development/libraries/geoclue/default.nix b/pkgs/development/libraries/geoclue/default.nix
index 3c6a40eeb5cb4..84fa20f8efadb 100644
--- a/pkgs/development/libraries/geoclue/default.nix
+++ b/pkgs/development/libraries/geoclue/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     avahi
   ] ++ lib.optionals withDemoAgent [
     libnotify gdk-pixbuf
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     modemmanager
   ];
 
@@ -83,7 +83,7 @@ stdenv.mkDerivation rec {
     "-Dmozilla-api-key=5c28d1f4-9511-47ff-b11a-2bef80fc177c"
     "-Ddbus-srv-user=geoclue"
     "-Ddbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-D3g-source=false"
     "-Dcdma-source=false"
     "-Dmodem-gps-source=false"
@@ -96,7 +96,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = stdenv.isDarwin && withDemoAgent;
+    broken = stdenv.hostPlatform.isDarwin && withDemoAgent;
     description = "Geolocation framework and some data providers";
     homepage = "https://gitlab.freedesktop.org/geoclue/geoclue/wikis/home";
     maintainers = with maintainers; [ raskin mimame ];
diff --git a/pkgs/development/libraries/geogram/default.nix b/pkgs/development/libraries/geogram/default.nix
index 619b5dfcdf574..444975de853c6 100644
--- a/pkgs/development/libraries/geogram/default.nix
+++ b/pkgs/development/libraries/geogram/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
     ./replace-bundled-zlib.patch
   ];
 
-  postPatch = lib.optionalString stdenv.isAarch64 ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
     substituteInPlace cmake/platforms/*/config.cmake \
       --replace "-m64" ""
   '';
@@ -120,7 +120,7 @@ stdenv.mkDerivation rec {
 
     # Broken on aarch64-linux as of version 1.8.3
     # See https://github.com/BrunoLevy/geogram/issues/74
-    broken = stdenv.isLinux && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64;
 
     platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
     maintainers = with maintainers; [ tmarkus ];
diff --git a/pkgs/development/libraries/geographiclib/default.nix b/pkgs/development/libraries/geographiclib/default.nix
deleted file mode 100644
index 70eba2c3a384a..0000000000000
--- a/pkgs/development/libraries/geographiclib/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, doxygen }:
-
-stdenv.mkDerivation rec {
-  pname = "geographiclib";
-  version = "2.3";
-
-  src = fetchFromGitHub {
-    owner = "geographiclib";
-    repo = "geographiclib";
-    rev = "v${version}";
-    hash = "sha256-FVA2y1q0WjRSCltCN2qntWC//Zj94TXO/fTebFfQ9NY=";
-  };
-
-  nativeBuildInputs = [ cmake doxygen ];
-
-  cmakeFlags = [
-    "-DBUILD_DOCUMENTATION=ON"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-  ];
-
-  meta = with lib; {
-    description = "C++ geographic library";
-    longDescription = ''
-      GeographicLib is a small C++ library for:
-      * geodesic and rhumb line calculations
-      * conversions between geographic, UTM, UPS, MGRS, geocentric, and local cartesian coordinates
-      * gravity (e.g., EGM2008) and geomagnetic field (e.g., WMM2020) calculations
-    '';
-    homepage = "https://geographiclib.sourceforge.io/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ sikmir ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/geos/3.11.nix b/pkgs/development/libraries/geos/3.11.nix
index da276f35a6f8b..32e1f39965d75 100644
--- a/pkgs/development/libraries/geos/3.11.nix
+++ b/pkgs/development/libraries/geos/3.11.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "3.11.4";
 
   src = fetchurl {
-    url = "https://download.osgeo.org/geos/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2";
+    url = "https://download.osgeo.org/geos/geos-${finalAttrs.version}.tar.bz2";
     hash = "sha256-NkyIzPw4qlDPZccA57KuRwbtEDMmEoST2/dQx40TbSw=";
   };
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [ cmake ];
 
   # https://github.com/libgeos/geos/issues/930
-  cmakeFlags = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;unit-geom-Envelope"
   ];
 
diff --git a/pkgs/development/libraries/geos/3.9.nix b/pkgs/development/libraries/geos/3.9.nix
index 4ca53e36971ba..b2cf3e8f96292 100644
--- a/pkgs/development/libraries/geos/3.9.nix
+++ b/pkgs/development/libraries/geos/3.9.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "3.9.5";
 
   src = fetchurl {
-    url = "https://download.osgeo.org/geos/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2";
+    url = "https://download.osgeo.org/geos/geos-${finalAttrs.version}.tar.bz2";
     hash = "sha256-xsmu36iGT7RLp4kRQIRCOCv9BpDPLUCRrjgFyGN4kDY=";
   };
 
diff --git a/pkgs/development/libraries/geos/default.nix b/pkgs/development/libraries/geos/default.nix
index c68b4a02d662a..2e63196b04207 100644
--- a/pkgs/development/libraries/geos/default.nix
+++ b/pkgs/development/libraries/geos/default.nix
@@ -9,17 +9,17 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "geos";
-  version = "3.12.2";
+  version = "3.13.0";
 
   src = fetchurl {
-    url = "https://download.osgeo.org/geos/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2";
-    hash = "sha256-NMd3C/AJDuiEiK+Ydn0I53nxJPozQ34Kq+yKvUYJ/sY=";
+    url = "https://download.osgeo.org/geos/geos-${finalAttrs.version}.tar.bz2";
+    hash = "sha256-R+yD/zNNZyueRCZpXxXabmNoJEIUlx+r84b/jvbfOeQ=";
   };
 
   nativeBuildInputs = [ cmake ];
 
   # https://github.com/libgeos/geos/issues/930
-  cmakeFlags = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;unit-geom-Envelope"
   ];
 
diff --git a/pkgs/development/libraries/getdns/default.nix b/pkgs/development/libraries/getdns/default.nix
index 7fb6411584608..b85dc689d96cf 100644
--- a/pkgs/development/libraries/getdns/default.nix
+++ b/pkgs/development/libraries/getdns/default.nix
@@ -3,10 +3,10 @@
 { lib, stdenv, fetchurl, cmake, darwin, doxygen, libidn2, libyaml, openssl
 , systemd, unbound, yq }:
 let
-  metaCommon = with lib; {
-    maintainers = with maintainers; [ leenaars ehmry ];
-    license = licenses.bsd3;
-    platforms = platforms.all;
+  metaCommon = {
+    maintainers = with lib.maintainers; [ leenaars ehmry ];
+    license = lib.licenses.bsd3;
+    platforms = lib.platforms.all;
   };
 in rec {
 
@@ -16,7 +16,7 @@ in rec {
     outputs = [ "out" "dev" "lib" "man" ];
 
     src = fetchurl {
-      url = with lib; "https://getdnsapi.net/releases/${pname}-${concatStringsSep "-" (splitVersion version)}/${pname}-${version}.tar.gz";
+      url = "https://getdnsapi.net/releases/${pname}-${lib.concatStringsSep "-" (lib.splitVersion version)}/${pname}-${version}.tar.gz";
       # upstream publishes hashes in hex format
       sha256 = "f1404ca250f02e37a118aa00cf0ec2cbe11896e060c6d369c6761baea7d55a2c";
     };
@@ -34,22 +34,21 @@ in rec {
 
     postInstall = "rm -r $out/share/doc";
 
-    meta = with lib;
-      metaCommon // {
-        description = "Modern asynchronous DNS API";
-        longDescription = ''
-          getdns is an implementation of a modern asynchronous DNS API; the
-          specification was originally edited by Paul Hoffman. It is intended to make all
-          types of DNS information easily available to application developers and non-DNS
-          experts. DNSSEC offers a unique global infrastructure for establishing and
-          enhancing cryptographic trust relations. With the development of this API the
-          developers intend to offer application developers a modern and flexible
-          interface that enables end-to-end trust in the DNS architecture, and which will
-          inspire application developers to implement innovative security solutions in
-          their applications.
-        '';
-        homepage = "https://getdnsapi.net";
-      };
+    meta = metaCommon // {
+      description = "Modern asynchronous DNS API";
+      longDescription = ''
+        getdns is an implementation of a modern asynchronous DNS API; the
+        specification was originally edited by Paul Hoffman. It is intended to make all
+        types of DNS information easily available to application developers and non-DNS
+        experts. DNSSEC offers a unique global infrastructure for establishing and
+        enhancing cryptographic trust relations. With the development of this API the
+        developers intend to offer application developers a modern and flexible
+        interface that enables end-to-end trust in the DNS architecture, and which will
+        inspire application developers to implement innovative security solutions in
+        their applications.
+      '';
+      homepage = "https://getdnsapi.net";
+    };
   };
 
   stubby = stdenv.mkDerivation rec {
@@ -63,7 +62,7 @@ in rec {
     nativeBuildInputs = [ cmake doxygen yq ];
 
     buildInputs = [ getdns libyaml openssl systemd ]
-      ++ lib.optionals stdenv.isDarwin [ darwin.Security ];
+      ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.Security ];
 
     postInstall = ''
       rm -r $out/share/doc
@@ -72,22 +71,20 @@ in rec {
         > $stubbyExampleJson
     '';
 
-    passthru.settingsExample = with builtins;
-      fromJSON (readFile stubby.stubbyExampleJson);
-
-    meta = with lib;
-      metaCommon // {
-        description = "Local DNS Privacy stub resolver (using DNS-over-TLS)";
-        mainProgram = "stubby";
-        longDescription = ''
-          Stubby is an application that acts as a local DNS Privacy stub
-          resolver (using RFC 7858, aka DNS-over-TLS). Stubby encrypts DNS
-          queries sent from a client machine (desktop or laptop) to a DNS
-          Privacy resolver increasing end user privacy. Stubby is developed by
-          the getdns team.
-        '';
-        homepage = "https://dnsprivacy.org/dns_privacy_daemon_-_stubby/";
-      };
+    passthru.settingsExample = builtins.fromJSON (builtins.readFile stubby.stubbyExampleJson);
+
+    meta = metaCommon // {
+      description = "Local DNS Privacy stub resolver (using DNS-over-TLS)";
+      mainProgram = "stubby";
+      longDescription = ''
+        Stubby is an application that acts as a local DNS Privacy stub
+        resolver (using RFC 7858, aka DNS-over-TLS). Stubby encrypts DNS
+        queries sent from a client machine (desktop or laptop) to a DNS
+        Privacy resolver increasing end user privacy. Stubby is developed by
+        the getdns team.
+      '';
+      homepage = "https://dnsprivacy.org/dns_privacy_daemon_-_stubby/";
+    };
   };
 
 }
diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix
index 7a0d7a3ee667b..0518a40c29301 100644
--- a/pkgs/development/libraries/gettext/default.nix
+++ b/pkgs/development/libraries/gettext/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  LDFLAGS = lib.optionalString stdenv.isSunOS "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec";
+  LDFLAGS = lib.optionalString stdenv.hostPlatform.isSunOS "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec";
 
   configureFlags = [
      "--disable-csharp"
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   buildInputs = lib.optionals (!stdenv.hostPlatform.isMinGW) [
     bash
   ]
-  ++ lib.optionals (!stdenv.isLinux && !stdenv.hostPlatform.isCygwin) [
+  ++ lib.optionals (!stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isCygwin) [
     # HACK, see #10874 (and 14664)
     libiconv
   ];
@@ -96,12 +96,12 @@ stdenv.mkDerivation rec {
 
     homepage = "https://www.gnu.org/software/gettext/";
 
-    maintainers = with maintainers; [ zimbatm vrthra ];
+    maintainers = with maintainers; [ zimbatm ];
     license = licenses.gpl2Plus;
     platforms = platforms.all;
   };
 }
 
-// lib.optionalAttrs stdenv.isDarwin {
+// lib.optionalAttrs stdenv.hostPlatform.isDarwin {
   makeFlags = [ "CFLAGS=-D_FORTIFY_SOURCE=0" ];
 }
diff --git a/pkgs/development/libraries/gexiv2/default.nix b/pkgs/development/libraries/gexiv2/default.nix
index 9753f78ec83ed..7a0e61cbf2b05 100644
--- a/pkgs/development/libraries/gexiv2/default.nix
+++ b/pkgs/development/libraries/gexiv2/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gexiv2";
-  version = "0.14.2";
+  version = "0.14.3";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Kgyc9I++izQ1AIhm/9QLjt2wZn0iErQjlv32iOk84L4=";
+    sha256 = "IeZNLFbpszPUT+8/KkslZT2SLEGazZcvqW+raVIX4sg=";
   };
 
   nativeBuildInputs = [
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   preCheck = let
-    libSuffix = if stdenv.isDarwin then "2.dylib" else "so.2";
+    libSuffix = if stdenv.hostPlatform.isDarwin then "2.dylib" else "so.2";
   in ''
     # Our gobject-introspection patches make the shared library paths absolute
     # in the GIR files. When running unit tests, the library is not yet installed,
diff --git a/pkgs/development/libraries/gfbgraph/default.nix b/pkgs/development/libraries/gfbgraph/default.nix
index c3c41d971beb9..b099a2dd10e31 100644
--- a/pkgs/development/libraries/gfbgraph/default.nix
+++ b/pkgs/development/libraries/gfbgraph/default.nix
@@ -10,7 +10,6 @@
 , json-glib
 , gobject-introspection
 , gtk-doc
-, pkgs
 , docbook-xsl-nons
 }:
 
diff --git a/pkgs/development/libraries/gfxstream/default.nix b/pkgs/development/libraries/gfxstream/default.nix
index e3164c95a4c64..6dd5a11e841fe 100644
--- a/pkgs/development/libraries/gfxstream/default.nix
+++ b/pkgs/development/libraries/gfxstream/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   ];
 
   # Ensure that meson can find an Objective-C compiler on Darwin.
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace meson.build \
       --replace-fail "project('gfxstream_backend', 'cpp', 'c'" "project('gfxstream_backend', 'cpp', 'c', 'objc'"
   '';
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ meson ninja pkg-config python3 ];
   buildInputs = [ aemu libglvnd vulkan-headers vulkan-loader xorg.libX11 ]
     ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform libdrm) [ libdrm ]
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
       darwin.apple_sdk.frameworks.Cocoa
       darwin.apple_sdk.frameworks.CoreGraphics
       darwin.apple_sdk.frameworks.IOKit
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
       darwin.apple_sdk.frameworks.QuartzCore
     ];
 
-  env = lib.optionalAttrs stdenv.isDarwin {
+  env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
     NIX_LDFLAGS = toString [
       "-framework Cocoa"
       "-framework IOKit"
@@ -51,7 +51,7 @@ stdenv.mkDerivation {
   };
 
   # dlopens libvulkan.
-  preConfigure = lib.optionalString (!stdenv.isDarwin) ''
+  preConfigure = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     mesonFlagsArray=(-Dcpp_link_args="-Wl,--push-state -Wl,--no-as-needed -lvulkan -Wl,--pop-state")
   '';
 
diff --git a/pkgs/development/libraries/giflib/default.nix b/pkgs/development/libraries/giflib/default.nix
index 67677e8a85110..c6dd7c81833f6 100644
--- a/pkgs/development/libraries/giflib/default.nix
+++ b/pkgs/development/libraries/giflib/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     ./mingw-install-exes.patch
   ];
 
-  nativeBuildInputs = lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     homepage = "https://giflib.sourceforge.net/";
     platforms = lib.platforms.unix ++ lib.platforms.windows;
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     branch = "5.2";
   };
 }
diff --git a/pkgs/development/libraries/git2-cpp/default.nix b/pkgs/development/libraries/git2-cpp/default.nix
index bf12d2c489489..45750d0b24d47 100644
--- a/pkgs/development/libraries/git2-cpp/default.nix
+++ b/pkgs/development/libraries/git2-cpp/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://github.com/ken-matsui/git2-cpp";
     description = "libgit2 bindings for C++";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 })
diff --git a/pkgs/development/libraries/givaro/default.nix b/pkgs/development/libraries/givaro/default.nix
index 44fe143968360..a77cc10e2e36f 100644
--- a/pkgs/development/libraries/givaro/default.nix
+++ b/pkgs/development/libraries/givaro/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--without-archnative"
-  ] ++ lib.optionals stdenv.isx86_64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [
     # disable SIMD instructions (which are enabled *when available* by default)
     "--${if stdenv.hostPlatform.sse3Support   then "enable" else "disable"}-sse3"
     "--${if stdenv.hostPlatform.ssse3Support  then "enable" else "disable"}-ssse3"
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index 604435cee5105..99fb182bc88d2 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -83,11 +83,11 @@ in stdenv.mkDerivation (finalAttrs: {
 
   mesonFlags = [
     "-Dinstalled_test_prefix=${placeholder "installedTests"}"
-  ] ++ lib.optionals (!stdenv.isLinux || stdenv.hostPlatform.isMusl) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isMusl) [
     "-Dprofiler=disabled"
   ];
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   postPatch = ''
     patchShebangs build/choose-tests-locale.sh
@@ -130,7 +130,7 @@ in stdenv.mkDerivation (finalAttrs: {
     runHook postCheck
   '';
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   passthru = {
     tests = {
diff --git a/pkgs/development/libraries/gl2ps/default.nix b/pkgs/development/libraries/gl2ps/default.nix
index dfc9e36488f86..eec23cef70bce 100644
--- a/pkgs/development/libraries/gl2ps/default.nix
+++ b/pkgs/development/libraries/gl2ps/default.nix
@@ -6,7 +6,7 @@
 , libpng
 , libGL
 , libGLU
-, freeglut
+, libglut
 , darwin
 }:
 
@@ -26,11 +26,11 @@ stdenv.mkDerivation rec {
   buildInputs = [
     zlib
     libpng
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libGL
     libGLU
-    freeglut
-  ] ++ lib.optionals stdenv.isDarwin [
+    libglut
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.OpenGL
   ];
 
diff --git a/pkgs/development/libraries/gl3w/default.nix b/pkgs/development/libraries/gl3w/default.nix
index c0934e7d18f9b..c12ab1f22a8f6 100644
--- a/pkgs/development/libraries/gl3w/default.nix
+++ b/pkgs/development/libraries/gl3w/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     description = "Simple OpenGL core profile loading";
     homepage = "https://github.com/skaslev/gl3w";
     license = licenses.unlicense;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/gle/default.nix b/pkgs/development/libraries/gle/default.nix
index 79be821faaecb..f9ef65197bd5e 100644
--- a/pkgs/development/libraries/gle/default.nix
+++ b/pkgs/development/libraries/gle/default.nix
@@ -1,8 +1,8 @@
-{lib, stdenv, fetchurl, freeglut, libX11, libXt, libXmu, libXi, libXext, libGL, libGLU}:
+{lib, stdenv, fetchurl, libglut, libX11, libXt, libXmu, libXi, libXext, libGL, libGLU}:
 stdenv.mkDerivation rec {
   pname = "gle";
   version = "3.1.0";
-  buildInputs = [libGLU libGL freeglut libX11 libXt libXmu libXi libXext];
+  buildInputs = [libGLU libGL libglut libX11 libXt libXmu libXi libXext];
   src = fetchurl {
     urls = [
       "mirror://sourceforge/project/gle/gle/gle-${version}/gle-${version}.tar.gz"
diff --git a/pkgs/development/libraries/glew/1.10.nix b/pkgs/development/libraries/glew/1.10.nix
index 7d8e0689c95ec..a675eebaa3428 100644
--- a/pkgs/development/libraries/glew/1.10.nix
+++ b/pkgs/development/libraries/glew/1.10.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchurl, libGLU, libXmu, libXi, libXext
 , AGL, OpenGL
 , testers
+, mesa
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -8,12 +9,12 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.10.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/glew/${finalAttrs.pname}-${finalAttrs.version}.tgz";
+    url = "mirror://sourceforge/glew/glew-${finalAttrs.version}.tgz";
     sha256 = "01zki46dr5khzlyywr3cg615bcal32dazfazkf360s1znqh17i4r";
   };
 
-  buildInputs = if stdenv.isDarwin then [ AGL ] else [ libXmu libXi libXext ];
-  propagatedBuildInputs = if stdenv.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h
+  buildInputs = if stdenv.hostPlatform.isDarwin then [ AGL ] else [ libXmu libXi libXext ];
+  propagatedBuildInputs = if stdenv.hostPlatform.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h
 
   outputs = [ "out" "dev" ];
 
@@ -52,6 +53,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.free; # different files under different licenses
       #["BSD" "GLX" "SGI-B" "GPL2"]
     pkgConfigModules = [ "glew" ];
-    platforms = platforms.mesaPlatforms;
+    inherit (mesa.meta) platforms;
   };
 })
diff --git a/pkgs/development/libraries/glew/default.nix b/pkgs/development/libraries/glew/default.nix
index 4681e4f6abce0..8d68ad0867644 100644
--- a/pkgs/development/libraries/glew/default.nix
+++ b/pkgs/development/libraries/glew/default.nix
@@ -1,7 +1,16 @@
-{ lib, stdenv, fetchurl, fetchpatch, cmake, libGLU, libXmu, libXi, libXext
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, cmake
+, libGLU
+, libXmu
+, libXi
+, libXext
 , OpenGL
-, enableEGL ? false
+, enableEGL ? (!stdenv.hostPlatform.isDarwin)
 , testers
+, mesa
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -9,7 +18,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "2.2.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/glew/${finalAttrs.pname}-${finalAttrs.version}.tgz";
+    url = "mirror://sourceforge/glew/glew-${finalAttrs.version}.tgz";
     sha256 = "1qak8f7g1iswgswrgkzc7idk7jmqgwrs58fhg2ai007v7j4q5z6l";
   };
 
@@ -19,13 +28,20 @@ stdenv.mkDerivation (finalAttrs: {
     # https://github.com/nigels-com/glew/pull/342
     (fetchpatch {
       url = "https://github.com/nigels-com/glew/commit/966e53fa153175864e151ec8a8e11f688c3e752d.diff";
-      sha256 = "sha256-xsSwdAbdWZA4KVoQhaLlkYvO711i3QlHGtv6v1Omkhw=";
+      hash = "sha256-xsSwdAbdWZA4KVoQhaLlkYvO711i3QlHGtv6v1Omkhw=";
+    })
+
+    # don't make EGL support disable GLX, use the same patch as ArchLinux
+    # https://gitlab.archlinux.org/archlinux/packaging/packages/glew/-/blob/ca08ff5d4cd3548a593eb1118d0a84b0c3670349/egl+glx.patch
+    (fetchpatch {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/glew/-/raw/ca08ff5d4cd3548a593eb1118d0a84b0c3670349/egl+glx.patch?inline=false";
+      hash = "sha256-IG3FPhhaor1kshEH3Kr8yzIHqBhczRwCqH7ZeDwlzGE=";
     })
   ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optionals (!stdenv.isDarwin) [ libXmu libXi libXext ];
-  propagatedBuildInputs = if stdenv.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h
+  buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [ libXmu libXi libXext ];
+  propagatedBuildInputs = if stdenv.hostPlatform.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h
 
   cmakeDir = "cmake";
   cmakeFlags = [
@@ -59,8 +75,8 @@ stdenv.mkDerivation (finalAttrs: {
     pkgConfigModules = [ "glew" ];
     platforms = with platforms;
       if enableEGL then
-        subtractLists darwin mesaPlatforms
+        subtractLists darwin mesa.meta.platforms
       else
-        mesaPlatforms;
+        mesa.meta.platforms;
   };
 })
diff --git a/pkgs/development/libraries/glfw/3.x-wayland-minecraft.nix b/pkgs/development/libraries/glfw/3.x-wayland-minecraft.nix
deleted file mode 100644
index 03baa891b3b4d..0000000000000
--- a/pkgs/development/libraries/glfw/3.x-wayland-minecraft.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, fetchpatch2, cmake, extra-cmake-modules
-, libGL, wayland, wayland-protocols, libxkbcommon, libdecor
-}:
-
-stdenv.mkDerivation {
-  version = "unstable-2023-06-01";
-  pname = "glfw-wayland-minecraft";
-
-  src = fetchFromGitHub {
-    owner = "glfw";
-    repo = "GLFW";
-    rev = "3eaf1255b29fdf5c2895856c7be7d7185ef2b241";
-    sha256 = "sha256-UnwuE/3q6I4dS5syagpnqrDEVDK9XSVdyOg7KNkdUUA=";
-  };
-
-  patches = [
-    (fetchpatch2 {
-      url = "https://raw.githubusercontent.com/Admicos/minecraft-wayland/15f88a515c63a9716cfdf4090fab8e16543f4ebd/0003-Don-t-crash-on-calls-to-focus-or-icon.patch";
-      hash = "sha256-NZbKh16h+tWXXnz13QcFBFaeGXMNxZKGQb9xJEahFnE=";
-    })
-    (fetchpatch2 {
-      url = "https://raw.githubusercontent.com/Admicos/minecraft-wayland/15f88a515c63a9716cfdf4090fab8e16543f4ebd/0005-Add-warning-about-being-an-unofficial-patch.patch";
-      hash = "sha256-QMUNlnlCeFz5gIVdbM+YXPsrmiOl9cMwuVRSOvlw+T0=";
-    })
-  ];
-
-  propagatedBuildInputs = [ libGL ];
-
-  nativeBuildInputs = [ cmake extra-cmake-modules ];
-
-  buildInputs = [ wayland wayland-protocols libxkbcommon ];
-
-  cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=ON"
-    "-DGLFW_BUILD_WAYLAND=ON"
-    "-DGLFW_BUILD_X11=OFF"
-    "-DCMAKE_C_FLAGS=-D_GLFW_EGL_LIBRARY='\"${lib.getLib libGL}/lib/libEGL.so.1\"'"
-  ];
-
-  postPatch = ''
-    substituteInPlace src/wl_init.c \
-      --replace "libxkbcommon.so.0" "${lib.getLib libxkbcommon}/lib/libxkbcommon.so.0"
-
-    substituteInPlace src/wl_init.c \
-      --replace "libdecor-0.so.0" "${lib.getLib libdecor}/lib/libdecor-0.so.0"
-
-    substituteInPlace src/wl_init.c \
-      --replace "libwayland-client.so.0" "${lib.getLib wayland}/lib/libwayland-client.so.0"
-
-    substituteInPlace src/wl_init.c \
-      --replace "libwayland-cursor.so.0" "${lib.getLib wayland}/lib/libwayland-cursor.so.0"
-
-    substituteInPlace src/wl_init.c \
-      --replace "libwayland-egl.so.1" "${lib.getLib wayland}/lib/libwayland-egl.so.1"
-  '';
-
-  meta = with lib; {
-    description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time - with patches to support Minecraft on Wayland";
-    homepage = "https://www.glfw.org/";
-    license = licenses.zlib;
-    maintainers = with maintainers; [ Scrumplex ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
deleted file mode 100644
index 67d5a0095148b..0000000000000
--- a/pkgs/development/libraries/glfw/3.x.nix
+++ /dev/null
@@ -1,68 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, cmake
-, libGL, libXrandr, libXinerama, libXcursor, libX11, libXi, libXext
-, Carbon, Cocoa, Kernel, OpenGL, fixDarwinDylibNames
-, extra-cmake-modules, wayland
-, wayland-scanner, wayland-protocols, libxkbcommon
-}:
-
-stdenv.mkDerivation rec {
-  version = "3.4";
-  pname = "glfw";
-
-  src = fetchFromGitHub {
-    owner = "glfw";
-    repo = "GLFW";
-    rev = version;
-    sha256 = "sha256-FcnQPDeNHgov1Z07gjFze0VMz2diOrpbKZCsI96ngz0=";
-  };
-
-  # Fix linkage issues on X11 (https://github.com/NixOS/nixpkgs/issues/142583)
-  patches = ./x11.patch;
-
-  propagatedBuildInputs =
-    lib.optionals stdenv.isDarwin [ OpenGL ]
-    ++ lib.optionals stdenv.isLinux [ libGL ];
-
-  nativeBuildInputs = [ cmake extra-cmake-modules ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames
-    ++ lib.optionals stdenv.isLinux [ wayland-scanner ];
-
-  buildInputs =
-    lib.optionals stdenv.isDarwin [ Carbon Cocoa Kernel ]
-    ++ lib.optionals stdenv.isLinux [
-      wayland
-      wayland-protocols
-      libxkbcommon
-      libX11
-      libXrandr
-      libXinerama
-      libXcursor
-      libXi
-      libXext
-    ];
-
-  cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin && !stdenv.hostPlatform.isWindows) [
-    "-DCMAKE_C_FLAGS=-D_GLFW_GLX_LIBRARY='\"${lib.getLib libGL}/lib/libGL.so.1\"'"
-    "-DCMAKE_C_FLAGS=-D_GLFW_EGL_LIBRARY='\"${lib.getLib libGL}/lib/libEGL.so.1\"'"
-  ];
-
-  postPatch = lib.optionalString stdenv.isLinux ''
-    substituteInPlace src/wl_init.c \
-      --replace "libxkbcommon.so.0" "${lib.getLib libxkbcommon}/lib/libxkbcommon.so.0"
-  '';
-
-  # glfw may dlopen libwayland-client.so:
-  postFixup = lib.optionalString stdenv.isLinux ''
-    patchelf ''${!outputLib}/lib/libglfw.so --add-rpath ${lib.getLib wayland}/lib
-  '';
-
-  meta = with lib; {
-    description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
-    homepage = "https://www.glfw.org/";
-    license = licenses.zlib;
-    maintainers = with maintainers; [ marcweber twey ];
-    platforms = platforms.unix ++ platforms.windows;
-  };
-}
diff --git a/pkgs/development/libraries/glfw/wayland.patch b/pkgs/development/libraries/glfw/wayland.patch
deleted file mode 100644
index c0c338f845b39..0000000000000
--- a/pkgs/development/libraries/glfw/wayland.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 46fb81c69e8acdb70907409f98dd01e387408414 Mon Sep 17 00:00:00 2001
-From: Stone Tickle <lattis@mochiro.moe>
-Date: Fri, 5 Jun 2020 12:51:25 +0900
-Subject: [PATCH] set O_NONBLOCK on repeat timerfd
-
----
- src/wl_init.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/wl_init.c b/src/wl_init.c
-index 49e7cc52..43569bef 100644
---- a/src/wl_init.c
-+++ b/src/wl_init.c
-@@ -1166,7 +1166,7 @@ int _glfwPlatformInit(void)
- 
-     _glfw.wl.timerfd = -1;
-     if (_glfw.wl.seatVersion >= 4)
--        _glfw.wl.timerfd = timerfd_create(CLOCK_MONOTONIC, TFD_CLOEXEC);
-+        _glfw.wl.timerfd = timerfd_create(CLOCK_MONOTONIC, TFD_CLOEXEC | TFD_NONBLOCK);
- 
-     if (_glfw.wl.pointer && _glfw.wl.shm)
-     {
--- 
-2.31.1
-
diff --git a/pkgs/development/libraries/glfw/x11.patch b/pkgs/development/libraries/glfw/x11.patch
deleted file mode 100644
index 5cadf53bfe708..0000000000000
--- a/pkgs/development/libraries/glfw/x11.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index a0be580e..ba143851 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -219,6 +219,13 @@ if (GLFW_BUILD_X11)
-     if (NOT X11_Xshape_INCLUDE_PATH)
-         message(FATAL_ERROR "X Shape headers not found; install libxext development package")
-     endif()
-+
-+    target_link_libraries(glfw PRIVATE ${X11_Xrandr_LIB}
-+                                       ${X11_Xinerama_LIB}
-+                                       ${X11_Xkb_LIB}
-+                                       ${X11_Xcursor_LIB}
-+                                       ${X11_Xi_LIB}
-+                                       ${X11_Xshape_LIB})
- endif()
- 
- if (UNIX AND NOT APPLE)
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index a60ba9fae6bfd..f44b6385b8f1f 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -17,7 +17,7 @@
 , buildPackages
 
 # this is just for tests (not in the closure of any regular package)
-, coreutils, dbus, tzdata
+, dbus, tzdata
 , desktop-file-utils, shared-mime-info
 , darwin
 , makeHardcodeGsettingsPatch
@@ -30,7 +30,7 @@
   stdenv.hostPlatform.isLittleEndian == stdenv.buildPlatform.isLittleEndian
 }:
 
-assert stdenv.isLinux -> util-linuxMinimal != null;
+assert stdenv.hostPlatform.isLinux -> util-linuxMinimal != null;
 
 let
   # Some packages don't get "Cflags" from pkg-config correctly
@@ -61,28 +61,24 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "glib";
-  version = "2.80.2";
+  version = "2.80.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
-    hash = "sha256-uc+296W9WzEjj9XVbfImst2l6jdhFHW/ifag+UAP6L0=";
+    hash = "sha256-JOApxd/JtE5Fc2l63zMHipgnxIk4VVAEs7kJb6TqA08=";
   };
 
-  patches = lib.optionals stdenv.isDarwin [
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
     ./darwin-compilation.patch
+    # FIXME: remove when https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4088 is merged and is in the tagged release
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/glib/-/commit/9d0988ca62ee96e09aa76abbd65ff192cfce6858.patch";
+      hash = "sha256-JrR3Ba6L+3M0Nt8DgHmPG8uKtx7hOgUp7np08ATIzjA=";
+    })
   ] ++ lib.optionals stdenv.hostPlatform.isMusl [
     ./quark_init_on_demand.patch
     ./gobject_init_on_demand.patch
   ] ++ [
-    # Fix double-free & segfault issues on menu and dbus connection action group export failures
-    # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4073
-    # Remove when version > 2.80.2
-    (fetchpatch {
-      name = "GLib-Fix-memory-problems-on-gmenuexporter-and-gactiongroupexporter-error-paths.patch";
-      url = "https://gitlab.gnome.org/GNOME/glib/-/commit/b9490a499a004618c883f180b1081a166ff1a86b.patch";
-      hash = "sha256-c6uZ9NEhg26/2RdgjQ4s5ErCDm5HH6T/tfJXTwh/H6o=";
-    })
-
     # This patch lets GLib's GDesktopAppInfo API watch and notice changes
     # to the Nix user and system profiles.  That way, the list of available
     # applications shown by the desktop environment is immediately updated
@@ -124,6 +120,15 @@ stdenv.mkDerivation (finalAttrs: {
     # 3. Tools for desktop environment that cannot go to $bin due to $out depending on them ($out)
     #    * gio-launch-desktop
     ./split-dev-programs.patch
+
+    # Tell Meson to install gdb scripts next to the lib
+    # GDB only looks there and in ${gdb}/share/gdb/auto-load,
+    # and by default meson installs in to $out/share/gdb/auto-load
+    # which does not help
+    ./gdb_script.patch
+
+    # glib assumes that `RTLD_LOCAL` is defined to `0`, which is true on Linux and FreeBSD but not on Darwin.
+    ./gmodule-rtld_local.patch
   ];
 
   outputs = [ "bin" "out" "dev" "devdoc" ];
@@ -137,10 +142,10 @@ stdenv.mkDerivation (finalAttrs: {
     bash gnum4 # install glib-gettextize and m4 macros for other apps to use
   ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
     elfutils
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libselinux
     util-linuxMinimal # for libmount
-  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     AppKit Carbon Cocoa CoreFoundation CoreServices Foundation
   ]);
 
@@ -180,7 +185,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dtests=${lib.boolToString (!stdenv.hostPlatform.isStatic)}"
   ] ++ lib.optionals (!lib.meta.availableOn stdenv.hostPlatform elfutils) [
     "-Dlibelf=disabled"
-  ] ++ lib.optionals stdenv.isFreeBSD [
+  ] ++ lib.optionals stdenv.hostPlatform.isFreeBSD [
     "-Db_lundef=false"
     "-Dxattr=false"
   ];
@@ -221,6 +226,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   postInstall = ''
     moveToOutput "share/glib-2.0" "$dev"
+    moveToOutput "share/glib-2.0/gdb" "$out"
     substituteInPlace "$dev/bin/gdbus-codegen" --replace "$out" "$dev"
     sed -i "$dev/bin/glib-gettextize" -e "s|^gettext_dir=.*|gettext_dir=$dev/share/glib-2.0/gettext|"
 
@@ -285,7 +291,7 @@ stdenv.mkDerivation (finalAttrs: {
     rm $out/lib/libglib-${librarySuffix}
   '';
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   passthru = rec {
     gioModuleDir = "lib/gio/modules";
diff --git a/pkgs/development/libraries/glib/gdb_script.patch b/pkgs/development/libraries/glib/gdb_script.patch
new file mode 100644
index 0000000000000..c1e5d22e085b1
--- /dev/null
+++ b/pkgs/development/libraries/glib/gdb_script.patch
@@ -0,0 +1,23 @@
+diff --git a/glib/meson.build b/glib/meson.build
+index b2dd569e1..b013991a1 100644
+--- a/glib/meson.build
++++ b/glib/meson.build
+@@ -541,7 +540,7 @@ configure_file(
+   input: 'libglib-gdb.py.in',
+   output: 'libglib-2.0.so.@0@-gdb.py'.format(library_version),
+   configuration: gdb_conf,
+-  install_dir: gdb_install_dir,
++  install_dir: glib_libdir,
+   install_tag: 'devel',
+   install: gdb_install,
+ )
+diff --git a/gobject/meson.build b/gobject/meson.build
+@@ -185,7 +184,7 @@ configure_file(
+   input: 'libgobject-gdb.py.in',
+   output: 'libgobject-2.0.so.@0@-gdb.py'.format(library_version),
+   configuration: gdb_conf,
+-  install_dir: gdb_install_dir,
++  install_dir: glib_libdir,
+   install_tag: 'devel',
+   install: gdb_install,
+ )
diff --git a/pkgs/development/libraries/glib/gmodule-rtld_local.patch b/pkgs/development/libraries/glib/gmodule-rtld_local.patch
new file mode 100644
index 0000000000000..abbf19d70b207
--- /dev/null
+++ b/pkgs/development/libraries/glib/gmodule-rtld_local.patch
@@ -0,0 +1,13 @@
+diff --git a/gmodule/gmodule-dl.c b/gmodule/gmodule-dl.c
+index 6d1c5fab7..b21773bca 100644
+--- a/gmodule/gmodule-dl.c
++++ b/gmodule/gmodule-dl.c
+@@ -136,7 +136,7 @@ _g_module_open (const gchar *file_name,
+   
+   lock_dlerror ();
+   handle = dlopen (file_name,
+-		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
++		   (bind_local ? RTLD_LOCAL : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
+   if (!handle)
+     {
+       const gchar *message = fetch_dlerror (TRUE);
diff --git a/pkgs/development/libraries/glibc/2.39-revert-cet-default-disable.patch b/pkgs/development/libraries/glibc/2.39-revert-cet-default-disable.patch
new file mode 100644
index 0000000000000..8590581daf0bc
--- /dev/null
+++ b/pkgs/development/libraries/glibc/2.39-revert-cet-default-disable.patch
@@ -0,0 +1,49 @@
+Revert 55d63e731253de82e96ed4ddca2e294076cd0bc5
+
+--- b/sysdeps/x86/cpu-features.c
++++ a/sysdeps/x86/cpu-features.c
+@@ -110,7 +110,7 @@
+   if (!CPU_FEATURES_CPU_P (cpu_features, RTM_ALWAYS_ABORT))
+     CPU_FEATURE_SET_ACTIVE (cpu_features, RTM);
+ 
++#if CET_ENABLED
+-#if CET_ENABLED && 0
+   CPU_FEATURE_SET_ACTIVE (cpu_features, IBT);
+   CPU_FEATURE_SET_ACTIVE (cpu_features, SHSTK);
+ #endif
+reverted:
+--- b/sysdeps/x86/cpu-tunables.c
++++ a/sysdeps/x86/cpu-tunables.c
+@@ -35,17 +35,6 @@
+       break;								\
+     }
+ 
+-#define CHECK_GLIBC_IFUNC_CPU_BOTH(f, cpu_features, name, len)		\
+-  _Static_assert (sizeof (#name) - 1 == len, #name " != " #len);	\
+-  if (tunable_str_comma_strcmp_cte (&f, #name))				\
+-    {									\
+-      if (f.disable)							\
+-	CPU_FEATURE_UNSET (cpu_features, name)				\
+-      else								\
+-	CPU_FEATURE_SET_ACTIVE (cpu_features, name)			\
+-      break;								\
+-    }
+-
+ /* Disable a preferred feature NAME.  We don't enable a preferred feature
+    which isn't available.  */
+ #define CHECK_GLIBC_IFUNC_PREFERRED_OFF(f, cpu_features, name, len)	\
+@@ -142,13 +131,11 @@
+ 	    }
+ 	  break;
+ 	case 5:
+-	  {
+-	    CHECK_GLIBC_IFUNC_CPU_BOTH (n, cpu_features, SHSTK, 5);
+-	  }
+ 	  if (n.disable)
+ 	    {
+ 	      CHECK_GLIBC_IFUNC_CPU_OFF (n, cpu_features, LZCNT, 5);
+ 	      CHECK_GLIBC_IFUNC_CPU_OFF (n, cpu_features, MOVBE, 5);
++	      CHECK_GLIBC_IFUNC_CPU_OFF (n, cpu_features, SHSTK, 5);
+ 	      CHECK_GLIBC_IFUNC_CPU_OFF (n, cpu_features, SSSE3, 5);
+ 	      CHECK_GLIBC_IFUNC_CPU_OFF (n, cpu_features, XSAVE, 5);
+ 	    }
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 25a83b1dc6d21..6ab9d2bed5603 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -37,6 +37,7 @@
 , profilingLibraries ? false
 , withGd ? false
 , enableCET ? false
+, enableCETRuntimeDefault ? false
 , extraBuildInputs ? []
 , extraNativeBuildInputs ? []
 , ...
@@ -50,6 +51,7 @@ in
 
 assert withLinuxHeaders -> linuxHeaders != null;
 assert withGd -> gd != null && libpng != null;
+assert enableCET == false -> !enableCETRuntimeDefault;
 
 stdenv.mkDerivation ({
   version = version + patchSuffix;
@@ -114,7 +116,8 @@ stdenv.mkDerivation ({
       lib.optional (isAarch64 && isLinux) ./0001-aarch64-math-vector.h-add-NVCC-include-guard.patch
     )
     ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch
-    ++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch;
+    ++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch
+    ++ lib.optional enableCETRuntimeDefault ./2.39-revert-cet-default-disable.patch;
 
   postPatch =
     ''
@@ -202,7 +205,7 @@ stdenv.mkDerivation ({
 
   env = {
     linuxHeaders = lib.optionalString withLinuxHeaders linuxHeaders;
-    inherit (stdenv) is64bit;
+    inherit (stdenv.hostPlatform) is64bit;
     # Needed to install share/zoneinfo/zone.tab.  Set to impure /bin/sh to
     # prevent a retained dependency on the bootstrap tools in the stdenv-linux
     # bootstrap.
@@ -291,7 +294,7 @@ stdenv.mkDerivation ({
 
     license = licenses.lgpl2Plus;
 
-    maintainers = with maintainers; [ eelco ma27 connorbaker ];
+    maintainers = with maintainers; [ ma27 connorbaker ];
     platforms = platforms.linux;
   } // (args.meta or {});
 })
diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix
index 96a08178637df..532dfd58900f4 100644
--- a/pkgs/development/libraries/glibc/default.nix
+++ b/pkgs/development/libraries/glibc/default.nix
@@ -3,6 +3,7 @@
 , profilingLibraries ? false
 , withGd ? false
 , enableCET ? if stdenv.hostPlatform.isx86_64 then "permissive" else false
+, enableCETRuntimeDefault ? false
 , pkgsBuildBuild
 , libgcc
 }:
@@ -16,7 +17,7 @@ let
 in
 
 (callPackage ./common.nix { inherit stdenv; } {
-  inherit withLinuxHeaders withGd profilingLibraries enableCET;
+  inherit withLinuxHeaders withGd profilingLibraries enableCET enableCETRuntimeDefault;
   pname = "glibc" + lib.optionalString withGd "-gd" + lib.optionalString (stdenv.cc.isGNU && libgcc==null) "-nolibgcc";
 }).overrideAttrs(previousAttrs: {
 
@@ -41,9 +42,6 @@ in
 
       # Apparently --bindir is not respected.
       makeFlagsArray+=("bindir=$bin/bin" "sbindir=$bin/sbin" "rootsbindir=$bin/sbin")
-    '' + lib.optionalString stdenv.buildPlatform.isDarwin ''
-      # ld-wrapper will otherwise attempt to inject CoreFoundation into ld-linux's RUNPATH
-      export NIX_COREFOUNDATION_RPATH=
     '';
 
     # The pie, stackprotector and fortify hardening flags are autodetected by
diff --git a/pkgs/development/libraries/glibc/locales.nix b/pkgs/development/libraries/glibc/locales.nix
index eddeb5e3ec4bb..d47af97f191f3 100644
--- a/pkgs/development/libraries/glibc/locales.nix
+++ b/pkgs/development/libraries/glibc/locales.nix
@@ -1,86 +1,101 @@
-/* This function builds just the `lib/locale/locale-archive' file from
-   Glibc and nothing else.  If `allLocales' is true, all supported
-   locales are included; otherwise, just the locales listed in
-   `locales'.  See localedata/SUPPORTED in the Glibc source tree for
-   the list of all supported locales:
-   https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
+/*
+  This function builds just the `lib/locale/locale-archive' file from
+  Glibc and nothing else.  If `allLocales' is true, all supported
+  locales are included; otherwise, just the locales listed in
+  `locales'.  See localedata/SUPPORTED in the Glibc source tree for
+  the list of all supported locales:
+  https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
 */
 
-{ lib, stdenv, buildPackages, callPackage, writeText, glibc
-, allLocales ? true, locales ? [ "en_US.UTF-8/UTF-8" ]
+{
+  lib,
+  stdenv,
+  buildPackages,
+  callPackage,
+  writeText,
+  glibc,
+  allLocales ? true,
+  locales ? [ "en_US.UTF-8/UTF-8" ],
+  linuxHeaders,
+  withLinuxHeaders ? !stdenv.cc.isGNU,
 }:
 
-(callPackage ./common.nix { inherit stdenv; } {
-  pname = "glibc-locales";
-  extraNativeBuildInputs = [ glibc ];
-}).overrideAttrs(finalAttrs: previousAttrs: {
+(callPackage ./common.nix
+  ({ inherit stdenv; } // lib.optionalAttrs withLinuxHeaders { inherit linuxHeaders; })
+  {
+    pname = "glibc-locales";
+    extraNativeBuildInputs = [ glibc ];
+    inherit withLinuxHeaders;
+  }
+).overrideAttrs
+  (
+    finalAttrs: previousAttrs: {
 
-  builder = ./locales-builder.sh;
+      builder = ./locales-builder.sh;
 
-  outputs = [ "out" ];
+      outputs = [ "out" ];
 
-  LOCALEDEF_FLAGS = [
-    (if stdenv.hostPlatform.isLittleEndian
-    then "--little-endian"
-    else "--big-endian")
-  ];
+      LOCALEDEF_FLAGS = [
+        (if stdenv.hostPlatform.isLittleEndian then "--little-endian" else "--big-endian")
+      ];
 
-  preBuild = (previousAttrs.preBuild or "") + ''
-      # Awful hack: `localedef' doesn't allow the path to `locale-archive'
-      # to be overriden, but you *can* specify a prefix, i.e. it will use
-      # <prefix>/<path-to-glibc>/lib/locale/locale-archive.  So we use
-      # $TMPDIR as a prefix, meaning that the locale-archive is placed in
-      # $TMPDIR/nix/store/...-glibc-.../lib/locale/locale-archive.
-      LOCALEDEF_FLAGS+=" --prefix=$TMPDIR"
+      preBuild =
+        (previousAttrs.preBuild or "")
+        + ''
+          # Awful hack: `localedef' doesn't allow the path to `locale-archive'
+          # to be overriden, but you *can* specify a prefix, i.e. it will use
+          # <prefix>/<path-to-glibc>/lib/locale/locale-archive.  So we use
+          # $TMPDIR as a prefix, meaning that the locale-archive is placed in
+          # $TMPDIR/nix/store/...-glibc-.../lib/locale/locale-archive.
+          LOCALEDEF_FLAGS+=" --prefix=$TMPDIR"
 
-      mkdir -p $TMPDIR/"${buildPackages.glibc.out}/lib/locale"
+          mkdir -p $TMPDIR/"${buildPackages.glibc.out}/lib/locale"
 
-      echo 'C.UTF-8/UTF-8 \' >> ../glibc-2*/localedata/SUPPORTED
+          echo 'C.UTF-8/UTF-8 \' >> ../glibc-2*/localedata/SUPPORTED
 
-      # Hack to allow building of the locales (needed since glibc-2.12)
-      sed -i -e 's,^$(rtld-prefix) $(common-objpfx)locale/localedef,localedef $(LOCALEDEF_FLAGS),' ../glibc-2*/localedata/Makefile
-    ''
-      + lib.optionalString (!allLocales) ''
-      # Check that all locales to be built are supported
-      echo -n '${lib.concatMapStrings (s: s + " \\\n") locales}' \
-        | sort -u > locales-to-build.txt
-      cat ../glibc-2*/localedata/SUPPORTED | grep ' \\' \
-        | sort -u > locales-supported.txt
-      comm -13 locales-supported.txt locales-to-build.txt \
-        > locales-unsupported.txt
-      if [[ $(wc -c locales-unsupported.txt) != "0 locales-unsupported.txt" ]]; then
-        cat locales-supported.txt
-        echo "Error: unsupported locales detected:"
-        cat locales-unsupported.txt
-        echo "You should choose from the list above the error."
-        false
-      fi
+          # Hack to allow building of the locales (needed since glibc-2.12)
+          sed -i -e 's,^$(rtld-prefix) $(common-objpfx)locale/localedef,localedef $(LOCALEDEF_FLAGS),' ../glibc-2*/localedata/Makefile
+        ''
+        + lib.optionalString (!allLocales) ''
+          # Check that all locales to be built are supported
+          echo -n '${lib.concatMapStrings (s: s + " \\\n") locales}' \
+            | sort -u > locales-to-build.txt
+          cat ../glibc-2*/localedata/SUPPORTED | grep ' \\' \
+            | sort -u > locales-supported.txt
+          comm -13 locales-supported.txt locales-to-build.txt \
+            > locales-unsupported.txt
+          if [[ $(wc -c locales-unsupported.txt) != "0 locales-unsupported.txt" ]]; then
+            cat locales-supported.txt
+            echo "Error: unsupported locales detected:"
+            cat locales-unsupported.txt
+            echo "You should choose from the list above the error."
+            false
+          fi
 
-      echo SUPPORTED-LOCALES='${toString locales}' > ../glibc-2*/localedata/SUPPORTED
-    '';
+          echo SUPPORTED-LOCALES='${toString locales}' > ../glibc-2*/localedata/SUPPORTED
+        '';
 
-  # Current `nixpkgs` way of building locales is not compatible with
-  # parallel install. `locale-archive` is updated in parallel with
-  # multiple `localedef` processes and causes non-deterministic result:
-  #   https://github.com/NixOS/nixpkgs/issues/245360
-  enableParallelBuilding = false;
+      # Current `nixpkgs` way of building locales is not compatible with
+      # parallel install. `locale-archive` is updated in parallel with
+      # multiple `localedef` processes and causes non-deterministic result:
+      #   https://github.com/NixOS/nixpkgs/issues/245360
+      enableParallelBuilding = false;
 
-  makeFlags = (previousAttrs.makeFlags or []) ++ [
-    "localedata/install-locales"
-    "localedir=${builtins.placeholder "out"}/lib/locale"
-  ];
+      makeFlags = (previousAttrs.makeFlags or [ ]) ++ [
+        "localedata/install-locales"
+        "localedir=${builtins.placeholder "out"}/lib/locale"
+      ];
 
-  installPhase =
-    ''
-      mkdir -p "$out/lib/locale" "$out/share/i18n"
-      cp -v "$TMPDIR/$NIX_STORE/"*"/lib/locale/locale-archive" "$out/lib/locale"
-      cp -v ../glibc-2*/localedata/SUPPORTED "$out/share/i18n/SUPPORTED"
-    '';
+      installPhase = ''
+        mkdir -p "$out/lib/locale" "$out/share/i18n"
+        cp -v "$TMPDIR/$NIX_STORE/"*"/lib/locale/locale-archive" "$out/lib/locale"
+        cp -v ../glibc-2*/localedata/SUPPORTED "$out/share/i18n/SUPPORTED"
+      '';
 
-  setupHook = writeText "locales-setup-hook.sh"
-    ''
-      export LOCALE_ARCHIVE=@out@/lib/locale/locale-archive
-    '';
+      setupHook = writeText "locales-setup-hook.sh" ''
+        export LOCALE_ARCHIVE=@out@/lib/locale/locale-archive
+      '';
 
-  meta.description = "Locale information for the GNU C Library";
-})
+      meta.description = "Locale information for the GNU C Library";
+    }
+  )
diff --git a/pkgs/development/libraries/glibmm/2.68.nix b/pkgs/development/libraries/glibmm/2.68.nix
index acace1c6a5bfe..7662e5f7f1906 100644
--- a/pkgs/development/libraries/glibmm/2.68.nix
+++ b/pkgs/development/libraries/glibmm/2.68.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     glib # for glib-compile-schemas
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     Cocoa
   ];
 
diff --git a/pkgs/development/libraries/glibmm/default.nix b/pkgs/development/libraries/glibmm/default.nix
index f9f8a4568a579..668f60ec10ec3 100644
--- a/pkgs/development/libraries/glibmm/default.nix
+++ b/pkgs/development/libraries/glibmm/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     glib # for glib-compile-schemas
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     Cocoa
   ]);
   propagatedBuildInputs = [ glib libsigcxx ];
diff --git a/pkgs/development/libraries/glm/default.nix b/pkgs/development/libraries/glm/default.nix
index 417d70d621b69..3894db5ab9c81 100644
--- a/pkgs/development/libraries/glm/default.nix
+++ b/pkgs/development/libraries/glm/default.nix
@@ -1,61 +1,40 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.9.8";
+  version = "1.0.1";
   pname = "glm";
 
   src = fetchFromGitHub {
     owner = "g-truc";
     repo = pname;
     rev = version;
-    sha256 = "sha256-F//+3L5Ozrw6s7t4LrcUmO7sN30ZSESdrPAYX57zgr8=";
+    sha256 = "sha256-GnGyzNRpzuguc3yYbEFtYLvG+KiCtRAktiN+NvbOICE=";
   };
 
-  # (https://github.com/g-truc/glm/pull/986 wasn't enough, and -Werror is used)
-  # (https://github.com/g-truc/glm/pull/1055 neither)
-  patches = [
-    (fetchpatch {
-      name = "glm-0.9.9.8-clang.patch";
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/glm/files/glm-0.9.9.8-clang.patch?id=79476d4b145a4a6b0cbc0e73a6cefb5d584bf8fa";
-      hash = "sha256-D8O+qofnGUEaH5nQGdNddwHyr5FhPQa/lOup4z4SFgY=";
-    })
-  ];
-
   outputs = [ "out" "doc" ];
 
   nativeBuildInputs = [ cmake ];
 
-  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102823
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "11") "-fno-ipa-modref";
+  env.NIX_CFLAGS_COMPILE =
+    # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102823
+    if (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "11") then "-fno-ipa-modref"
+    # Fix compilation errors on darwin
+    else if (stdenv.cc.isClang) then "-Wno-error"
+    else "";
 
   cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=OFF"
-    "-DBUILD_STATIC_LIBS=OFF"
-    "-DGLM_TEST_ENABLE=${if doCheck then "ON" else "OFF"}"
+    (lib.cmakeBool "BUILD_SHARED_LIBS" false)
+    (lib.cmakeBool "BUILD_STATIC_LIBS" false)
+    (lib.cmakeBool "GLM_TEST_ENABLE" doCheck)
   ];
 
   doCheck = true;
 
-  installPhase = ''
-    runHook preInstall
-
-    # Install header-only library
-    mkdir -p $out/include
-    cp -rv ../glm $out/include
-    rm $out/include/glm/CMakeLists.txt
-    rm $out/include/glm/detail/*.cpp
-
-    # Install CMake files
-    mkdir -p $out/lib
-    cp -rv ../cmake $out/lib
-    substituteInPlace $out/lib/cmake/glm/glmConfig.cmake \
-        --replace 'GLM_INCLUDE_DIRS ''${_IMPORT_PREFIX}' "GLM_INCLUDE_DIRS $out/include"
-
+  postInstall = ''
     # Install pkg-config file
     mkdir -p $out/lib/pkgconfig
     substituteAll ${./glm.pc.in} $out/lib/pkgconfig/glm.pc
@@ -64,8 +43,6 @@ stdenv.mkDerivation rec {
     mkdir -p $doc/share/doc/glm
     cp -rv ../doc/api $doc/share/doc/glm/html
     cp -v ../doc/manual.pdf $doc/share/doc/glm
-
-    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/glog/default.nix b/pkgs/development/libraries/glog/default.nix
index 53377022ad690..ac425092128c6 100644
--- a/pkgs/development/libraries/glog/default.nix
+++ b/pkgs/development/libraries/glog/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
         # Clang optimizes an expected allocation away.
         # See https://github.com/google/glog/issues/937
         "DeathNoAllocNewHook.logging"
-      ] ++ lib.optionals stdenv.isDarwin [
+      ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
         "LogBacktraceAt.DoesBacktraceAtRightLineWhenEnabled"
       ];
     in
@@ -51,9 +51,9 @@ stdenv.mkDerivation rec {
 
   checkPhase =
     let
-      excludedTests = lib.optionals stdenv.isDarwin [
+      excludedTests = lib.optionals stdenv.hostPlatform.isDarwin [
         "mock-log"
-      ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+      ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
         "logging"   # works around segfaults on aarch64-darwin for now
       ];
       excludedTestsRegex = lib.optionalString (excludedTests != [ ]) "(${lib.concatStringsSep "|" excludedTests})";
diff --git a/pkgs/development/libraries/gloox/default.nix b/pkgs/development/libraries/gloox/default.nix
index 4ecae5fe48e07..ed5e4ec9b06fc 100644
--- a/pkgs/development/libraries/gloox/default.nix
+++ b/pkgs/development/libraries/gloox/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec{
     mainProgram = "gloox-config";
     homepage = "http://camaya.net/gloox";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/glpng/default.nix b/pkgs/development/libraries/glpng/default.nix
deleted file mode 100644
index 34c58774fb241..0000000000000
--- a/pkgs/development/libraries/glpng/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib
-, stdenv
-, fetchFromRepoOrCz
-, cmake
-, libGL
-, libpng
-, pkg-config
-, zlib
-}:
-
-stdenv.mkDerivation rec {
-  pname = "glpng";
-  version = "1.46";
-
-  src = fetchFromRepoOrCz {
-    repo = "glpng";
-    rev = "v${version}";
-    hash = "sha256-C7EHaBN0PE/HJB6zcIaYU63+o7/MEz4WU1xr/kIOanM=";
-  };
-
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-  ];
-
-  buildInputs = [
-    libGL
-    libpng
-    zlib
-  ];
-
-  meta = with lib; {
-    homepage = "https://repo.or.cz/glpng.git/blob_plain/HEAD:/glpng.htm";
-    description = "PNG loader library for OpenGL";
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/glui/default.nix b/pkgs/development/libraries/glui/default.nix
index 716c998b9c990..f3999bfb439b7 100644
--- a/pkgs/development/libraries/glui/default.nix
+++ b/pkgs/development/libraries/glui/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , fetchFromGitHub
-, freeglut
+, libglut
 , libGL
 , libGLU
 , libX11
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     sha256 = "0qg2y8w95s03zay1qsqs8pqxxlg6l9kwm7rrs1qmx0h22sxb360i";
   };
 
-  buildInputs = [ freeglut libGLU libGL libXmu libXext libX11 libXi ];
+  buildInputs = [ libglut libGLU libGL libXmu libXext libX11 libXi ];
 
   installPhase = ''
     mkdir -p "$out"/{bin,lib,share/glui/doc,include}
diff --git a/pkgs/development/libraries/gmime/2.nix b/pkgs/development/libraries/gmime/2.nix
index 6f48f6ed3af44..e004437a77644 100644
--- a/pkgs/development/libraries/gmime/2.nix
+++ b/pkgs/development/libraries/gmime/2.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/jstedfast/gmime/";
     description = "C/C++ library for creating, editing and parsing MIME messages and structures";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/gmime/3.nix b/pkgs/development/libraries/gmime/3.nix
index 25d6c85aa328d..f21dd724c95eb 100644
--- a/pkgs/development/libraries/gmime/3.nix
+++ b/pkgs/development/libraries/gmime/3.nix
@@ -14,13 +14,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.14";
+  version = "3.2.15";
   pname = "gmime";
 
   src = fetchurl {
     # https://github.com/jstedfast/gmime/releases
     url = "https://github.com/jstedfast/gmime/releases/download/${version}/gmime-${version}.tar.xz";
-    sha256 = "sha256-pes91nX3LlRci8HNEhB+Sq0ursGQXre0ATzbH75eIxc=";
+    sha256 = "sha256-hM0qSBonlw7Dm1yV9y2wJnIpBKLM8/29V7KAzy0CtcQ=";
   };
 
   outputs = [
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
       substituteInPlace tests/testsuite.c \
         --replace /bin/rm rm
     ''
-    + lib.optionalString stdenv.isDarwin ''
+    + lib.optionalString stdenv.hostPlatform.isDarwin ''
       # This specific test fails on darwin for some unknown reason
       substituteInPlace tests/test-filters.c \
         --replace-fail 'test_charset_conversion (datadir, "japanese", "utf-8", "iso-2022-jp");' ""
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/jstedfast/gmime/";
     description = "C/C++ library for creating, editing and parsing MIME messages and structures";
     license = lib.licenses.lgpl21Plus;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/gmp/4.3.2.nix b/pkgs/development/libraries/gmp/4.3.2.nix
index e809ed926edae..9d014c2667537 100644
--- a/pkgs/development/libraries/gmp/4.3.2.nix
+++ b/pkgs/development/libraries/gmp/4.3.2.nix
@@ -24,13 +24,13 @@ let self = stdenv.mkDerivation rec {
   # addition, `configfsf.guess' would return `i386-apple-darwin10.2.0' on
   # `x86_64-darwin', leading to a 32-bit ABI build, which is undesirable.
   preConfigure =
-    if !stdenv.isDarwin
+    if !stdenv.hostPlatform.isDarwin
     then "ln -sf configfsf.guess config.guess"
     else ''echo "Darwin host is `./config.guess`."'';
 
   configureFlags = [
     (lib.enableFeature cxx "cxx")
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "ac_cv_build=x86_64-apple-darwin13.4.0"
     "ac_cv_host=x86_64-apple-darwin13.4.0"
   ];
@@ -72,7 +72,7 @@ let self = stdenv.mkDerivation rec {
     platforms = lib.platforms.all;
     badPlatforms = [ "x86_64-darwin" ];
     # never built on aarch64-darwin, aarch64-linux since first introduction in nixpkgs
-    broken = (stdenv.isDarwin && stdenv.isAarch64) || (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) || (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
   };
 };
   in self
diff --git a/pkgs/development/libraries/gmp/5.1.x.nix b/pkgs/development/libraries/gmp/5.1.x.nix
index e4fb89d054dae..43e3ca9759eb0 100644
--- a/pkgs/development/libraries/gmp/5.1.x.nix
+++ b/pkgs/development/libraries/gmp/5.1.x.nix
@@ -24,7 +24,7 @@ let self = stdenv.mkDerivation rec {
 
   patches = [
     ./5.1.3-CVE-2021-43618.patch
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ./need-size-t.patch
   ];
 
@@ -36,13 +36,13 @@ let self = stdenv.mkDerivation rec {
     # See <https://hydra.nixos.org/build/2760931>, for instance.
     #
     # no darwin because gmp uses ASM that clang doesn't like
-    (lib.enableFeature (!stdenv.isSunOS && stdenv.hostPlatform.isx86) "fat")
+    (lib.enableFeature (!stdenv.hostPlatform.isSunOS && stdenv.hostPlatform.isx86) "fat")
     # The config.guess in GMP tries to runtime-detect various
     # ARM optimization flags via /proc/cpuinfo (and is also
     # broken on multicore CPUs). Avoid this impurity.
     "--build=${stdenv.buildPlatform.config}"
-  ] ++ optional (cxx && stdenv.isDarwin) "CPPFLAGS=-fexceptions"
-    ++ optional (stdenv.isDarwin && stdenv.is64bit) "ABI=64"
+  ] ++ optional (cxx && stdenv.hostPlatform.isDarwin) "CPPFLAGS=-fexceptions"
+    ++ optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.is64bit) "ABI=64"
     ;
 
   doCheck = true;
@@ -81,7 +81,7 @@ let self = stdenv.mkDerivation rec {
     platforms = platforms.all;
     badPlatforms = [ "x86_64-darwin" ];
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
   };
 };
   in self
diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix
index 44874246b6ea4..e1a8ff0ecdc11 100644
--- a/pkgs/development/libraries/gmp/6.x.nix
+++ b/pkgs/development/libraries/gmp/6.x.nix
@@ -38,13 +38,13 @@ let self = stdenv.mkDerivation rec {
     # See <https://hydra.nixos.org/build/2760931>, for instance.
     #
     # no darwin because gmp uses ASM that clang doesn't like
-    (lib.enableFeature (!stdenv.isSunOS && stdenv.hostPlatform.isx86) "fat")
+    (lib.enableFeature (!stdenv.hostPlatform.isSunOS && stdenv.hostPlatform.isx86) "fat")
     # The config.guess in GMP tries to runtime-detect various
     # ARM optimization flags via /proc/cpuinfo (and is also
     # broken on multicore CPUs). Avoid this impurity.
     "--build=${stdenv.buildPlatform.config}"
-  ] ++ optional (cxx && stdenv.isDarwin) "CPPFLAGS=-fexceptions"
-    ++ optional (stdenv.isDarwin && stdenv.is64bit) "ABI=64"
+  ] ++ optional (cxx && stdenv.hostPlatform.isDarwin) "CPPFLAGS=-fexceptions"
+    ++ optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.is64bit) "ABI=64"
     # to build a .dll on windows, we need --disable-static + --enable-shared
     # see https://gmplib.org/manual/Notes-for-Particular-Systems.html
     ++ optional (!withStatic && stdenv.hostPlatform.isWindows) "--disable-static --enable-shared"
@@ -87,7 +87,7 @@ let self = stdenv.mkDerivation rec {
       '';
 
     platforms = platforms.all;
-    maintainers = [ maintainers.vrthra ];
+    maintainers = [ ];
   };
 };
   in self
diff --git a/pkgs/development/libraries/gmtk/default.nix b/pkgs/development/libraries/gmtk/default.nix
deleted file mode 100644
index 6f2906a8234e5..0000000000000
--- a/pkgs/development/libraries/gmtk/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{lib, stdenv, substituteAll, fetchFromGitHub, libtool, pkg-config, intltool, glib, gtk3
-, libpulseaudio, mplayer, gnome_mplayer }:
-
-stdenv.mkDerivation rec {
-  pname = "gmtk";
-  version = "1.0.9";
-
-  src = fetchFromGitHub {
-    owner = "kdekorte";
-    repo = "gmtk";
-    rev = "v${version}";
-    sha256 = "1zb5m1y1gckal3140gvx31572a6xpccwfmdwa1w5lx2wdq1pwk1i";
-  };
-
-  nativeBuildInputs = [ libtool pkg-config intltool ];
-  buildInputs = [ glib gtk3 libpulseaudio ];
-
-  patches = [
-    (substituteAll {
-      src = ./fix-paths.patch;
-      mplayer = "${mplayer}/bin/mplayer";
-    })
-  ];
-
-  meta = with lib; {
-    description = "Common functions for gnome-mplayer and gecko-mediaplayer";
-    homepage = "https://sites.google.com/site/kdekorte2/gnomemplayer";
-    license = licenses.gpl2;
-    maintainers = gnome_mplayer.meta.maintainers;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/gmtk/fix-paths.patch b/pkgs/development/libraries/gmtk/fix-paths.patch
deleted file mode 100644
index 64738300aba42..0000000000000
--- a/pkgs/development/libraries/gmtk/fix-paths.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/gmtk_media_player.c
-+++ b/src/gmtk_media_player.c
-@@ -2449,7 +2449,7 @@
-         player->minimum_mplayer = detect_mplayer_features(player);
- 
-         if (player->mplayer_binary == NULL || !g_file_test(player->mplayer_binary, G_FILE_TEST_EXISTS)) {
--            argv[argn++] = g_strdup_printf("mplayer");
-+            argv[argn++] = g_strdup_printf("@mplayer@");
-         } else {
-             argv[argn++] = g_strdup_printf("%s", player->mplayer_binary);
-         }
-@@ -4135,7 +4135,7 @@
-         return ret;
- 
-     if (player->mplayer_binary == NULL || !g_file_test(player->mplayer_binary, G_FILE_TEST_EXISTS)) {
--        av[ac++] = g_strdup_printf("mplayer");
-+        av[ac++] = g_strdup_printf("@mplayer@");
-     } else {
-         av[ac++] = g_strdup_printf("%s", player->mplayer_binary);
-     }
diff --git a/pkgs/development/libraries/gnome-desktop/default.nix b/pkgs/development/libraries/gnome-desktop/default.nix
index db95029c804e6..381da5b8f9fdf 100644
--- a/pkgs/development/libraries/gnome-desktop/default.nix
+++ b/pkgs/development/libraries/gnome-desktop/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-QsdzdF2EuhS8HPHExvRgYUiAOlzTN5QcY5ZHlfPFnUI=";
   };
 
-  patches = lib.optionals stdenv.isLinux [
+  patches = lib.optionals stdenv.hostPlatform.isLinux [
     (substituteAll {
       src = ./bubblewrap-paths.patch;
       bubblewrap_bin = "${bubblewrap}/bin/bwrap";
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     gtk3
     gtk4
     glib
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     bubblewrap
     wayland
     libseccomp
@@ -78,12 +78,12 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dgtk_doc=true"
     "-Ddesktop_docs=false"
-  ] ++ lib.optionals (!stdenv.isLinux) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Dsystemd=disabled"
     "-Dudev=disabled"
   ];
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   passthru = {
     updateScript = gnome.updateScript {
diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix
index 43ce34ec2ed4f..8a1773612f2d8 100644
--- a/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -8,7 +8,7 @@
 , ninja
 , libxslt
 , gtk4
-, enableBackend ? stdenv.isLinux
+, enableBackend ? stdenv.hostPlatform.isLinux
 , json-glib
 , libadwaita
 , librest_1_0
@@ -31,13 +31,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-online-accounts";
-  version = "3.50.2";
+  version = "3.50.4";
 
   outputs = [ "out" "dev" ] ++ lib.optionals enableBackend [ "man" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-online-accounts/${lib.versions.majorMinor finalAttrs.version}/gnome-online-accounts-${finalAttrs.version}.tar.xz";
-    hash = "sha256-3xatl10TnGv8TrsuyLuDJyl6eR7yvwuXfHgHavX6qY4=";
+    hash = "sha256-MMoTA4zXpp1bay1TZD+6ZUjRcSuSXwwhbzEzw2y/d3M=";
   };
 
   mesonFlags = [
diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix
index 31b6f7c7d2286..7eb508f27ae9e 100644
--- a/pkgs/development/libraries/gnu-efi/default.nix
+++ b/pkgs/development/libraries/gnu-efi/default.nix
@@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
     homepage = "https://sourceforge.net/projects/gnu-efi/";
     license = licenses.bsd3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index 48e027f5246bb..3e9395668c853 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -52,7 +52,7 @@ let
 
   # XXX: Gnulib's `test-select' fails on FreeBSD:
   # https://hydra.nixos.org/build/2962084/nixlog/1/raw .
-  doCheck = !stdenv.isFreeBSD && !stdenv.isDarwin
+  doCheck = !stdenv.hostPlatform.isFreeBSD && !stdenv.hostPlatform.isDarwin
     && stdenv.buildPlatform == stdenv.hostPlatform;
 
   inherit (stdenv.hostPlatform) isDarwin;
@@ -60,11 +60,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnutls";
-  version = "3.8.5";
+  version = "3.8.6";
 
   src = fetchurl {
     url = "mirror://gnupg/gnutls/v${lib.versions.majorMinor version}/gnutls-${version}.tar.xz";
-    hash = "sha256-ZiaaLP4OHC2r7Ie9u9irZW85bt2aQN0AaXjgA8+lK/w=";
+    hash = "sha256-LhWIquU8sy1Dk38fTsoo/r2cDHqhc0/F3WGn6B4OvN0=";
   };
 
   outputs = [ "bin" "dev" "out" ]
@@ -85,16 +85,6 @@ stdenv.mkDerivation rec {
       revert = true;
       hash = "sha256-r/+Gmwqy0Yc1LHL/PdPLXlErUBC5JxquLzCBAN3LuRM=";
     })
-    # Makes the system-wide configuration for RSAES-PKCS1-v1_5 actually apply
-    # and makes it enabled by default when the config file is missing
-    # Without this an error 113 is thrown when using some RSA certificates
-    # see https://gitlab.com/gnutls/gnutls/-/issues/1540
-    # "This is pretty sever[e], since it breaks on letsencrypt-issued RSA keys." (comment from above issue)
-    (fetchpatch2 {
-      name = "fix-rsaes-pkcs1-v1_5-system-wide-configuration.patch";
-      url = "https://gitlab.com/gnutls/gnutls/-/commit/2d73d945c4b1dfcf8d2328c4d23187d62ffaab2d.diff";
-      hash = "sha256-2aWcLff9jzJnY+XSqCIaK/zdwSLwkNlfDeMlWyRShN8=";
-    })
   ];
 
   # Skip some tests:
@@ -102,6 +92,7 @@ stdenv.mkDerivation rec {
   #  - fastopen: no idea; it broke between 3.6.2 and 3.6.3 (3437fdde6 in particular)
   #  - trust-store: default trust store path (/etc/ssl/...) is missing in sandbox (3.5.11)
   #  - psk-file: no idea; it broke between 3.6.3 and 3.6.4
+  #  - ktls: requires tls module loaded into kernel
   # Change p11-kit test to use pkg-config to find p11-kit
   postPatch = ''
     sed '2iexit 77' -i tests/{pkgconfig,fastopen}.sh
@@ -109,6 +100,8 @@ stdenv.mkDerivation rec {
     sed 's:/usr/lib64/pkcs11/ /usr/lib/pkcs11/ /usr/lib/x86_64-linux-gnu/pkcs11/:`pkg-config --variable=p11_module_path p11-kit-1`:' -i tests/p11-kit-trust.sh
   '' + lib.optionalString stdenv.hostPlatform.isMusl '' # See https://gitlab.com/gnutls/gnutls/-/issues/945
     sed '2iecho "certtool tests skipped in musl build"\nexit 0' -i tests/cert-tests/certtool.sh
+  '' + lib.optionalString stdenv.hostPlatform.isLinux ''
+    sed '2iexit 77' -i tests/{ktls,ktls_keyupdate}.sh
   '';
 
   preConfigure = "patchShebangs .";
@@ -122,6 +115,8 @@ stdenv.mkDerivation rec {
       "--with-unbound-root-key-file=${dns-root-data}/root.key"
       (lib.withFeature withP11-kit "p11-kit")
       (lib.enableFeature cxxBindings "cxx")
+    ] ++ lib.optionals stdenv.hostPlatform.isLinux [
+      "--enable-ktls"
     ] ++ lib.optionals (stdenv.hostPlatform.isMinGW) [
       "--disable-doc"
     ];
@@ -132,7 +127,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ lzo lzip libtasn1 libidn2 zlib gmp libunistring unbound gettext libiconv ]
     ++ lib.optional (withP11-kit) p11-kit
-    ++ lib.optional (tpmSupport && stdenv.isLinux) trousers;
+    ++ lib.optional (tpmSupport && stdenv.hostPlatform.isLinux) trousers;
 
   nativeBuildInputs = [ perl pkg-config texinfo ] ++ [ autoconf automake ]
     ++ lib.optionals doCheck [ which nettools util-linux ];
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index 9aba5156bef28..a76764a49a914 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -8,7 +8,6 @@
 , ninja
 , gtk-doc
 , docbook-xsl-nons
-, docbook_xml_dtd_43
 , docbook_xml_dtd_45
 , pkg-config
 , libffi
@@ -33,6 +32,7 @@ let
   pythonModules = pp: [
     pp.mako
     pp.markdown
+    pp.setuptools
   ];
 
   # https://discourse.gnome.org/t/dealing-with-glib-and-gobject-introspection-circular-dependency/18701
@@ -90,7 +90,7 @@ stdenv.mkDerivation (finalAttrs: {
     (python3.withPackages pythonModules)
   ];
 
-  nativeCheckInputs = lib.optionals stdenv.isDarwin [
+  nativeCheckInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     cctools # for otool
   ];
 
@@ -117,7 +117,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dgi_cross_use_prebuilt_gi=true"
   ];
 
-  doCheck = !stdenv.isAarch64;
+  doCheck = !stdenv.hostPlatform.isAarch64;
 
   # During configurePhase, two python scripts are generated and need this. See
   # https://github.com/NixOS/nixpkgs/pull/98316#issuecomment-695785692
diff --git a/pkgs/development/libraries/gom/default.nix b/pkgs/development/libraries/gom/default.nix
index 96b1f3ae13ce9..0df28ac88dfde 100644
--- a/pkgs/development/libraries/gom/default.nix
+++ b/pkgs/development/libraries/gom/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   ];
 
   # Success is more likely on x86_64
-  doCheck = stdenv.isx86_64;
+  doCheck = stdenv.hostPlatform.isx86_64;
 
   passthru = {
     updateScript = gnome.updateScript {
diff --git a/pkgs/development/libraries/goocanvas/2.x.nix b/pkgs/development/libraries/goocanvas/2.x.nix
index 46c7b188c9079..2066b1b72ec56 100644
--- a/pkgs/development/libraries/goocanvas/2.x.nix
+++ b/pkgs/development/libraries/goocanvas/2.x.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     description = "Canvas widget for GTK based on the the Cairo 2D library";
     homepage = "https://gitlab.gnome.org/Archive/goocanvas";
     license = licenses.lgpl2;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/goocanvasmm/default.nix b/pkgs/development/libraries/goocanvasmm/default.nix
index ccee4831dc7f4..ca6951c30e4d7 100644
--- a/pkgs/development/libraries/goocanvasmm/default.nix
+++ b/pkgs/development/libraries/goocanvasmm/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     description = "C++ bindings for GooCanvas";
     homepage = "https://gitlab.gnome.org/Archive/goocanvasmm";
     license = licenses.lgpl2;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/google-cloud-cpp/default.nix b/pkgs/development/libraries/google-cloud-cpp/default.nix
index 4d8ef6821240e..e8caeadcd32d8 100644
--- a/pkgs/development/libraries/google-cloud-cpp/default.nix
+++ b/pkgs/development/libraries/google-cloud-cpp/default.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
   ];
 
   # https://hydra.nixos.org/build/222679737/nixlog/3/tail
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isAarch64 "-Wno-error=maybe-uninitialized";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isAarch64 "-Wno-error=maybe-uninitialized";
 
   doInstallCheck = true;
 
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
         "$PWD/google/cloud/storage/benchmarks"
         "$PWD/google/cloud/testing_util"
       ];
-      ldLibraryPathName = "${lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH";
+      ldLibraryPathName = "${lib.optionalString stdenv.hostPlatform.isDarwin "DY"}LD_LIBRARY_PATH";
     in
     lib.optionalString doInstallCheck (
       lib.optionalString (!staticOnly) ''
diff --git a/pkgs/development/libraries/gperftools/default.nix b/pkgs/development/libraries/gperftools/default.nix
index e76c033c705d7..62e7ecbb0e955 100644
--- a/pkgs/development/libraries/gperftools/default.nix
+++ b/pkgs/development/libraries/gperftools/default.nix
@@ -31,18 +31,18 @@ stdenv.mkDerivation rec {
 
   # tcmalloc uses libunwind in a way that works correctly only on non-ARM dynamically linked linux
   buildInputs = [ perl ]
-             ++ lib.optional (stdenv.isLinux && !(stdenv.hostPlatform.isAarch || stdenv.hostPlatform.isStatic )) libunwind;
+             ++ lib.optional (stdenv.hostPlatform.isLinux && !(stdenv.hostPlatform.isAarch || stdenv.hostPlatform.isStatic )) libunwind;
 
   # Disable general dynamic TLS on AArch to support dlopen()'ing the library:
   # https://bugzilla.redhat.com/show_bug.cgi?id=1483558
   configureFlags = lib.optional stdenv.hostPlatform.isAarch
     "--disable-general-dynamic-tls";
 
-  prePatch = lib.optionalString stdenv.isDarwin ''
+  prePatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile.am --replace stdc++ c++
   '';
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin
     "-D_XOPEN_SOURCE";
 
   # some packages want to link to the static tcmalloc_minimal
diff --git a/pkgs/development/libraries/gpgme/LFS64.patch b/pkgs/development/libraries/gpgme/LFS64.patch
new file mode 100644
index 0000000000000..8aaed815d386a
--- /dev/null
+++ b/pkgs/development/libraries/gpgme/LFS64.patch
@@ -0,0 +1,34 @@
+From 1726e0a0a3b9765a4ddf99c506178d3939a46ccd Mon Sep 17 00:00:00 2001
+From: Alyssa Ross <hi@alyssa.is>
+Date: Fri, 3 May 2024 13:39:26 +0200
+Subject: [PATCH] posix: don't use LFS64 types in struct linux_dirent64
+
+The *64_t types are transitional APIs for applications that do not yet
+fully support large files on 32-bit platforms.  They have been removed
+in musl 1.2.5, which caused gpgme to fail to build.  Since this is for
+a raw syscall anyway, it doesn't make sense to use libc-specific types
+here anyway, so I've changed this to match the definition of the
+struct used in the kernel (except there the kernel-specific u64 and
+s64 typedefs are used instead).
+---
+ src/posix-io.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/posix-io.c b/src/posix-io.c
+index a422d8f6..c943f75c 100644
+--- a/src/posix-io.c
++++ b/src/posix-io.c
+@@ -74,8 +74,8 @@
+  * define it ourselves.  */
+ struct linux_dirent64
+ {
+-  ino64_t d_ino;
+-  off64_t d_off;
++  uint64_t d_ino;
++  int64_t d_off;
+   unsigned short d_reclen;
+   unsigned char d_type;
+   char d_name[];
+-- 
+2.44.0
+
diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix
index c712b5195dc52..45df332bc0caf 100644
--- a/pkgs/development/libraries/gpgme/default.nix
+++ b/pkgs/development/libraries/gpgme/default.nix
@@ -1,24 +1,25 @@
-{ lib
-, stdenv
-, fetchurl
-, autoreconfHook
-, libgpg-error
-, gnupg
-, pkg-config
-, glib
-, pth
-, libassuan
-, which
-, ncurses
-, texinfo
-, buildPackages
-, qtbase ? null
-, pythonSupport ? false
-, swig2 ? null
-# only for passthru.tests
-, libsForQt5
-, qt6Packages
-, python3
+{
+  lib,
+  stdenv,
+  fetchurl,
+  autoreconfHook,
+  libgpg-error,
+  gnupg,
+  pkg-config,
+  glib,
+  pth,
+  libassuan,
+  which,
+  ncurses,
+  texinfo,
+  buildPackages,
+  qtbase ? null,
+  pythonSupport ? false,
+  swig ? null,
+  # only for passthru.tests
+  libsForQt5,
+  qt6Packages,
+  python3,
 }:
 
 stdenv.mkDerivation rec {
@@ -26,7 +27,11 @@ stdenv.mkDerivation rec {
   version = "1.23.2";
   pyproject = true;
 
-  outputs = [ "out" "dev" "info" ];
+  outputs = [
+    "out"
+    "dev"
+    "info"
+  ];
 
   outputBin = "dev"; # gpgme-config; not so sure about gpgme-tool
 
@@ -40,6 +45,9 @@ stdenv.mkDerivation rec {
     ./python-310-312-remove-distutils.patch
     # Fix a test after disallowing compressed signatures in gpg (PR #180336)
     ./test_t-verify_double-plaintext.patch
+    # Don't use deprecated LFS64 APIs (removed in musl 1.2.4)
+    # https://dev.gnupg.org/D600
+    ./LFS64.patch
   ];
 
   postPatch = ''
@@ -49,54 +57,50 @@ stdenv.mkDerivation rec {
       --replace-fail 'tmp="-unknown"' 'tmp=""'
   '';
 
-  nativeBuildInputs = [
-    autoreconfHook
-    gnupg
-    pkg-config
-    texinfo
-  ] ++ lib.optionals pythonSupport [
-    python3.pythonOnBuildForHost
-    python3.pkgs.pip
-    python3.pkgs.setuptools
-    python3.pkgs.wheel
-    ncurses
-    swig2
-    which
-  ];
-
-  buildInputs = lib.optionals pythonSupport [
-    python3
-  ];
+  nativeBuildInputs =
+    [
+      autoreconfHook
+      gnupg
+      pkg-config
+      texinfo
+    ]
+    ++ lib.optionals pythonSupport [
+      python3.pythonOnBuildForHost
+      python3.pkgs.pip
+      python3.pkgs.setuptools
+      python3.pkgs.wheel
+      ncurses
+      swig
+      which
+    ];
+
+  buildInputs = lib.optionals pythonSupport [ python3 ];
 
   propagatedBuildInputs = [
     glib
     libassuan
     libgpg-error
     pth
-  ] ++ lib.optionals (qtbase != null) [
-    qtbase
-  ];
+  ] ++ lib.optionals (qtbase != null) [ qtbase ];
 
-  nativeCheckInputs = [
-    which
-  ];
+  nativeCheckInputs = [ which ];
 
-  depsBuildBuild = [
-    buildPackages.stdenv.cc
-  ];
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   dontWrapQtApps = true;
 
-  configureFlags = [
-    "--enable-fixed-path=${gnupg}/bin"
-    "--with-libgpg-error-prefix=${libgpg-error.dev}"
-    "--with-libassuan-prefix=${libassuan.dev}"
-  ] ++ lib.optional pythonSupport "--enable-languages=python"
-  # Tests will try to communicate with gpg-agent instance via a UNIX socket
-  # which has a path length limit. Nix on darwin is using a build directory
-  # that already has quite a long path and the resulting socket path doesn't
-  # fit in the limit. https://github.com/NixOS/nix/pull/1085
-  ++ lib.optionals stdenv.isDarwin [ "--disable-gpg-test" ];
+  configureFlags =
+    [
+      "--enable-fixed-path=${gnupg}/bin"
+      "--with-libgpg-error-prefix=${libgpg-error.dev}"
+      "--with-libassuan-prefix=${libassuan.dev}"
+    ]
+    ++ lib.optional pythonSupport "--enable-languages=python"
+    # Tests will try to communicate with gpg-agent instance via a UNIX socket
+    # which has a path length limit. Nix on darwin is using a build directory
+    # that already has quite a long path and the resulting socket path doesn't
+    # fit in the limit. https://github.com/NixOS/nix/pull/1085
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ "--disable-gpg-test" ];
 
   env.NIX_CFLAGS_COMPILE = toString (
     # qgpgme uses Q_ASSERT which retains build inputs at runtime unless
@@ -113,7 +117,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  checkFlags = [ "-C" "tests" ];
+  checkFlags = [
+    "-C"
+    "tests"
+  ];
 
   passthru.tests = {
     python = python3.pkgs.gpgme;
@@ -131,7 +138,10 @@ stdenv.mkDerivation rec {
       encryption, decryption, signing, signature verification and key
       management.
     '';
-    license = with licenses; [ lgpl21Plus gpl3Plus ];
+    license = with licenses; [
+      lgpl21Plus
+      gpl3Plus
+    ];
     platforms = platforms.unix;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/libraries/graphene/default.nix b/pkgs/development/libraries/graphene/default.nix
index 3e81f031a851c..803f31efa47a0 100644
--- a/pkgs/development/libraries/graphene/default.nix
+++ b/pkgs/development/libraries/graphene/default.nix
@@ -11,7 +11,7 @@
 , mutest
 , nixosTests
 , glib
-, withDocumentation ? !stdenv.hostPlatform.isStatic
+, withDocumentation ? stdenv.buildPlatform.canExecute stdenv.hostPlatform || stdenv.hostPlatform.emulatorAvailable buildPackages
 , gtk-doc
 , docbook_xsl
 , docbook_xml_dtd_43
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "ebassi";
-    repo = finalAttrs.pname;
+    repo = "graphene";
     rev = finalAttrs.version;
     sha256 = "P6JQhSktzvyMHatP/iojNGXPmcsxsFxdYerXzS23ojI=";
   };
@@ -65,10 +65,10 @@ stdenv.mkDerivation (finalAttrs: {
     docbook_xml_dtd_43
     docbook_xsl
     gtk-doc
+  ] ++ lib.optionals (withDocumentation && !stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
+    mesonEmulatorHook
   ] ++ lib.optionals withIntrospection [
     gobject-introspection
-  ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
-    mesonEmulatorHook
   ];
 
   buildInputs = [
@@ -84,7 +84,7 @@ stdenv.mkDerivation (finalAttrs: {
     (lib.mesonEnable "introspection" withIntrospection)
     "-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
     "-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
-  ] ++ lib.optionals stdenv.isAarch32 [
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch32 [
     # the box test is failing with SIGBUS on armv7l-linux
     # https://github.com/ebassi/graphene/issues/215
     "-Darm_neon=false"
@@ -103,7 +103,7 @@ stdenv.mkDerivation (finalAttrs: {
   in lib.optionalString withIntrospection ''
     if [ -x '${introspectionPy}' ] ; then
       wrapProgram '${introspectionPy}' \
-        --prefix GI_TYPELIB_PATH : "$out/lib/girepository-1.0"
+        --prefix GI_TYPELIB_PATH : "${lib.makeSearchPath "lib/girepository-1.0" [ glib.out (placeholder "out") ]}"
     fi
   '';
 
diff --git a/pkgs/development/libraries/grilo-plugins/default.nix b/pkgs/development/libraries/grilo-plugins/default.nix
index 5193cedf868bd..128ed788f43fb 100644
--- a/pkgs/development/libraries/grilo-plugins/default.nix
+++ b/pkgs/development/libraries/grilo-plugins/default.nix
@@ -14,7 +14,6 @@
 , libxml2
 , lua5_4
 , liboauth
-, libgdata
 , libmediaart
 , grilo
 , gst_all_1
diff --git a/pkgs/development/libraries/grpc/default.nix b/pkgs/development/libraries/grpc/default.nix
index 2110755a17197..35ae5284af5ae 100644
--- a/pkgs/development/libraries/grpc/default.nix
+++ b/pkgs/development/libraries/grpc/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) grpc;
   propagatedBuildInputs = [ c-ares re2 zlib abseil-cpp ];
   buildInputs = [ openssl protobuf ]
-    ++ lib.optionals stdenv.isLinux [ libnsl ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libnsl ];
 
   cmakeFlags = [
     "-DgRPC_ZLIB_PROVIDER=package"
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
 
   env.NIX_CFLAGS_COMPILE = toString ([
     "-Wno-error"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # Workaround for https://github.com/llvm/llvm-project/issues/48757
     "-Wno-elaborated-enum-base"
   ]);
diff --git a/pkgs/development/libraries/gsasl/default.nix b/pkgs/development/libraries/gsasl/default.nix
index 787c096fea4f8..b9b57de4274ab 100644
--- a/pkgs/development/libraries/gsasl/default.nix
+++ b/pkgs/development/libraries/gsasl/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "2.2.1";
 
   src = fetchurl {
-    url = "mirror://gnu/gsasl/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "mirror://gnu/gsasl/gsasl-${finalAttrs.version}.tar.gz";
     sha256 = "sha256-1FtWLhO9E7n8ILNy9LUyaXQM9iefg28JzhG50yvO4HU=";
   };
 
diff --git a/pkgs/development/libraries/gsignond/default.nix b/pkgs/development/libraries/gsignond/default.nix
index 863ac7ba4bb24..6c1ee550f797d 100644
--- a/pkgs/development/libraries/gsignond/default.nix
+++ b/pkgs/development/libraries/gsignond/default.nix
@@ -55,7 +55,7 @@ unwrapped = stdenv.mkDerivation rec {
     mainProgram = "gsignond";
     homepage = "https://gitlab.com/accounts-sso/gsignond";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 };
diff --git a/pkgs/development/libraries/gsignond/plugins/lastfm.nix b/pkgs/development/libraries/gsignond/plugins/lastfm.nix
index 6141528a9fe6b..7f58b4d11ce32 100644
--- a/pkgs/development/libraries/gsignond/plugins/lastfm.nix
+++ b/pkgs/development/libraries/gsignond/plugins/lastfm.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles Last.FM credentials";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-lastfm";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gsignond/plugins/mail.nix b/pkgs/development/libraries/gsignond/plugins/mail.nix
index 977bc1489420c..d9012a3aa7981 100644
--- a/pkgs/development/libraries/gsignond/plugins/mail.nix
+++ b/pkgs/development/libraries/gsignond/plugins/mail.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles E-Mail credentials";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-mail";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gsignond/plugins/oauth.nix b/pkgs/development/libraries/gsignond/plugins/oauth.nix
index bc496e8ac2ccd..06999b225de14 100644
--- a/pkgs/development/libraries/gsignond/plugins/oauth.nix
+++ b/pkgs/development/libraries/gsignond/plugins/oauth.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles the OAuth 1.0 and 2.0 authentication protocols";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-oa";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gsignond/plugins/sasl.nix b/pkgs/development/libraries/gsignond/plugins/sasl.nix
index bd87d4f72bb5d..3154f92b596f6 100644
--- a/pkgs/development/libraries/gsignond/plugins/sasl.nix
+++ b/pkgs/development/libraries/gsignond/plugins/sasl.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
     description = "Plugin for the Accounts-SSO gSignOn daemon that handles the SASL authentication protocol";
     homepage = "https://gitlab.com/accounts-sso/gsignond-plugin-sasl";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gsl-lite/default.nix b/pkgs/development/libraries/gsl-lite/default.nix
index fcab020952644..03fc5587f80a9 100644
--- a/pkgs/development/libraries/gsl-lite/default.nix
+++ b/pkgs/development/libraries/gsl-lite/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     };
 
   # Building tests is broken on Darwin.
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = ''
diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix
index 7e3d11528a4f0..aeb95476b2b65 100644
--- a/pkgs/development/libraries/gsl/default.nix
+++ b/pkgs/development/libraries/gsl/default.nix
@@ -1,17 +1,25 @@
-{ fetchurl, lib, stdenv }:
+{ fetchurl, fetchpatch, lib, stdenv }:
 
 stdenv.mkDerivation rec {
   pname = "gsl";
-  version = "2.7.1";
+  version = "2.8";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnu/gsl/${pname}-${version}.tar.gz";
-    sha256 = "sha256-3LD71DBIgyt1f/mUJpGo3XACbV2g/4VgHlJof23us0s=";
+    hash = "sha256-apnu7RVjLGNUiVsd1ULtWoVcDxXZrRMmxv4rLJ5CMZA=";
   };
 
-  preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) then ''
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/macports/macports-ports/raw/90be777d2ce451d3c23783cb2be0efab9732e4d0/math/gsl/files/patch-fix-linking.diff";
+      extraPrefix = "";
+      hash = "sha256-lweYndIxcM5+4ckIUubkD9XbJbqkfdK+y9c3aRzmq0M=";
+    })
+  ];
+
+  preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.hostPlatform.isDarwin) then ''
     MACOSX_DEPLOYMENT_TARGET=10.16
   '' else null;
 
@@ -20,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isx86_64 "-mno-fma";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isx86_64 "-mno-fma";
 
   # https://lists.gnu.org/archive/html/bug-gsl/2015-11/msg00012.html
   doCheck = stdenv.hostPlatform.system != "i686-linux";
diff --git a/pkgs/development/libraries/gsm/default.nix b/pkgs/development/libraries/gsm/default.nix
index ae2c489fe832d..5905fdff7e487 100644
--- a/pkgs/development/libraries/gsm/default.nix
+++ b/pkgs/development/libraries/gsm/default.nix
@@ -4,7 +4,7 @@
 }:
 
 let
-  inherit (stdenv) isDarwin;
+  inherit (stdenv.hostPlatform) isDarwin;
   inherit (lib) optional optionalString;
 in
 
diff --git a/pkgs/development/libraries/gsoap/default.nix b/pkgs/development/libraries/gsoap/default.nix
index 08b8146ac0a80..1a40b87c01aaf 100644
--- a/pkgs/development/libraries/gsoap/default.nix
+++ b/pkgs/development/libraries/gsoap/default.nix
@@ -1,7 +1,8 @@
-{ lib, stdenv, fetchurl, autoreconfHook, unzip, m4, bison, flex, openssl, zlib }:
+{ lib, stdenv, fetchurl, autoreconfHook, unzip, m4, bison, flex, openssl, zlib, buildPackages }:
 
 let
   majorVersion = "2.8";
+  isCross = stdenv.hostPlatform != stdenv.buildPlatform;
 
 in stdenv.mkDerivation rec {
   pname = "gsoap";
@@ -22,6 +23,10 @@ in stdenv.mkDerivation rec {
   prePatch = ''
     substituteInPlace configure.ac \
       --replace 'AM_INIT_AUTOMAKE([foreign])' 'AM_INIT_AUTOMAKE([foreign subdir-objects])'
+    ${lib.optionalString isCross ''
+      substituteInPlace gsoap/wsdl/Makefile.am \
+        --replace-fail 'SOAP=$(top_builddir)/gsoap/src/soapcpp2$(EXEEXT)' 'SOAP=${lib.getExe' buildPackages.gsoap "soapcpp2"}'
+    ''}
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/gss/default.nix b/pkgs/development/libraries/gss/default.nix
index 883d68d42c6a6..1271c52a4a8cb 100644
--- a/pkgs/development/libraries/gss/default.nix
+++ b/pkgs/development/libraries/gss/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchurl
-, withShishi ? !stdenv.isDarwin
+, withShishi ? !stdenv.hostPlatform.isDarwin
 , shishi
 }:
 
@@ -14,10 +14,16 @@ stdenv.mkDerivation rec {
     hash = "sha256-7M6r3vTK4/znIYsuy4PrQifbpEtTthuMKy6IrgJBnHM=";
   };
 
+  # krb5context test uses certificates that expired on 2024-07-11.
+  # Reported to bug-gss@gnu.org with Message-ID: <87cyngavtt.fsf@alyssa.is>.
+  postPatch = ''
+    rm tests/krb5context.c
+  '';
+
   buildInputs = lib.optional withShishi shishi;
 
   # ./stdint.h:89:5: error: expected value in expression
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     export GNULIBHEADERS_OVERRIDE_WINT_T=0
   '';
 
@@ -25,8 +31,6 @@ stdenv.mkDerivation rec {
     "--${if withShishi then "enable" else "disable"}-kerberos5"
   ];
 
-  doCheck = true;
-
   # Fixup .la files
   postInstall = lib.optionalString withShishi ''
     sed -i 's,\(-lshishi\),-L${shishi}/lib \1,' $out/lib/libgss.la
@@ -37,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "Generic Security Service";
     mainProgram = "gss";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/gssdp/1.6.nix b/pkgs/development/libraries/gssdp/1.6.nix
index 468c2a84ca280..d52c90b41b916 100644
--- a/pkgs/development/libraries/gssdp/1.6.nix
+++ b/pkgs/development/libraries/gssdp/1.6.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "GObject-based API for handling resource discovery and announcement over SSDP";
     homepage = "http://www.gupnp.org/";
     license = licenses.lgpl2Plus;
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index 939fb0e7b4266..c42b6f958092e 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   ];
 
   # Bail out! GLib-GIO-FATAL-CRITICAL: g_inet_address_to_string: assertion 'G_IS_INET_ADDRESS (address)' failed
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   postFixup = lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform) ''
     # Move developer documentation to devdoc output.
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index 91639c441b481..3ab9c896b8bf8 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -11,6 +11,7 @@
 , orc
 , gstreamer
 , gobject-introspection
+, wayland-scanner
 , enableZbar ? false
 , faacSupport ? false
 , faac
@@ -59,6 +60,7 @@
 , neon
 , openal
 , openexr_3
+, openh264Support ? lib.meta.availableOn stdenv.hostPlatform openh264
 , openh264
 , libopenmpt
 , pango
@@ -81,7 +83,7 @@
 , mjpegtools
 , libGLU
 , libGL
-, addOpenGLRunpath
+, addDriverRunpath
 , gtk3
 , libintl
 , game-music-emu
@@ -102,7 +104,7 @@
 , Foundation
 , MediaToolbox
 , enableGplPlugins ? true
-, bluezSupport ? stdenv.isLinux
+, bluezSupport ? stdenv.hostPlatform.isLinux
 # Causes every application using GstDeviceMonitor to send mDNS queries every 2 seconds
 , microdnsSupport ? false
 # Checks meson.is_cross_build(), so even canExecute isn't enough.
@@ -125,7 +127,7 @@ stdenv.mkDerivation rec {
     # Add fallback paths for nvidia userspace libraries
     (substituteAll {
       src = ./fix-paths.patch;
-      inherit (addOpenGLRunpath) driverLink;
+      inherit (addDriverRunpath) driverLink;
     })
   ];
 
@@ -140,8 +142,8 @@ stdenv.mkDerivation rec {
     gobject-introspection
   ] ++ lib.optionals enableDocumentation [
     hotdoc
-  ] ++ lib.optionals (gst-plugins-base.waylandEnabled && stdenv.isLinux) [
-    wayland # for wayland-scanner
+  ] ++ lib.optionals (gst-plugins-base.waylandEnabled && stdenv.hostPlatform.isLinux) [
+    wayland-scanner
   ];
 
   buildInputs = [
@@ -175,7 +177,6 @@ stdenv.mkDerivation rec {
     neon
     openal
     openexr_3
-    openh264
     rtmpdump
     pango
     soundtouch
@@ -211,11 +212,13 @@ stdenv.mkDerivation rec {
     bluez
   ] ++ lib.optionals microdnsSupport [
     libmicrodns
-  ] ++ lib.optionals (gst-plugins-base.waylandEnabled && stdenv.isLinux) [
+  ] ++ lib.optionals openh264Support [
+    openh264
+  ] ++ lib.optionals (gst-plugins-base.waylandEnabled && stdenv.hostPlatform.isLinux) [
     libva # vaapi requires libva -> libdrm -> libpciaccess, which is Linux-only in nixpkgs
     wayland
     wayland-protocols
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     # TODO: mjpegtools uint64_t is not compatible with guint64 on Darwin
     mjpegtools
 
@@ -242,9 +245,9 @@ stdenv.mkDerivation rec {
     libGLU
   ] ++ lib.optionals guiSupport [
     gtk3
-  ] ++ lib.optionals (stdenv.isLinux && guiSupport) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isLinux && guiSupport) [
     directfb
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # For unknown reasons the order is important, e.g. if
     # VideoToolbox is last, we get:
     #     fatal error: 'VideoToolbox/VideoToolbox.h' file not found
@@ -300,16 +303,17 @@ stdenv.mkDerivation rec {
     "-Daja=disabled" # should pass libajantv2 via aja-sdk-dir instead
     "-Dmicrodns=${if microdnsSupport then "enabled" else "disabled"}"
     "-Dbluez=${if bluezSupport then "enabled" else "disabled"}"
+    (lib.mesonEnable "openh264" openh264Support)
     (lib.mesonEnable "doc" enableDocumentation)
   ]
-  ++ lib.optionals (!stdenv.isLinux) [
+  ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Ddoc=disabled" # needs gstcuda to be enabled which is Linux-only
     "-Dnvcodec=disabled" # Linux-only
-  ] ++ lib.optionals (!stdenv.isLinux || !gst-plugins-base.waylandEnabled) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux || !gst-plugins-base.waylandEnabled) [
     "-Dva=disabled" # see comment on `libva` in `buildInputs`
-  ] ++ lib.optionals (!stdenv.isLinux || !guiSupport) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux || !guiSupport) [
     "-Ddirectfb=disabled"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-Daja=disabled"
     "-Dchromaprint=disabled"
     "-Dflite=disabled"
@@ -323,7 +327,7 @@ stdenv.mkDerivation rec {
     "-Duvch264=disabled" # requires gudev
     "-Dv4l2codecs=disabled" # requires gudev
     "-Dladspa=disabled" # requires lrdf
-  ] ++ lib.optionals (!stdenv.isLinux || !stdenv.isx86_64 || !gst-plugins-base.waylandEnabled) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux || !stdenv.hostPlatform.isx86_64 || !gst-plugins-base.waylandEnabled) [
     "-Dqsv=disabled" # Linux (and Windows) x86 only, makes va required
   ] ++ lib.optionals (!gst-plugins-base.glEnabled) [
     "-Dgl=disabled"
@@ -372,6 +376,6 @@ stdenv.mkDerivation rec {
     '';
     license = if enableGplPlugins then licenses.gpl2Plus else licenses.lgpl2Plus;
     platforms = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ matthewbauer lilyinstarlight ];
+    maintainers = with maintainers; [ matthewbauer ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index f48fe22f50001..9932c37a72f25 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -20,22 +20,23 @@
 , tremor # provides 'virbisidec'
 , libGL
 , gobject-introspection
-, enableX11 ? stdenv.isLinux
+, enableX11 ? stdenv.hostPlatform.isLinux
 , libXext
 , libXi
 , libXv
 , libdrm
-, enableWayland ? stdenv.isLinux
+, enableWayland ? stdenv.hostPlatform.isLinux
+, wayland-scanner
 , wayland
 , wayland-protocols
-, enableAlsa ? stdenv.isLinux
+, enableAlsa ? stdenv.hostPlatform.isLinux
 , alsa-lib
 # TODO: fix once x86_64-darwin sdk updated
-, enableCocoa ? (stdenv.isDarwin && stdenv.isAarch64)
+, enableCocoa ? (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
 , Cocoa
 , OpenGL
 , enableGl ? (enableX11 || enableWayland || enableCocoa)
-, enableCdparanoia ? (!stdenv.isDarwin)
+, enableCdparanoia ? (!stdenv.hostPlatform.isDarwin)
 , cdparanoia
 , glib
 , testers
@@ -50,6 +51,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   outputs = [ "out" "dev" ];
 
+  separateDebugInfo = true;
+
   src = let
     inherit (finalAttrs) pname version;
   in fetchurl {
@@ -74,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ lib.optionals enableDocumentation [
     hotdoc
   ] ++ lib.optionals enableWayland [
-    wayland
+    wayland-scanner
   ];
 
   buildInputs = [
@@ -88,11 +91,11 @@ stdenv.mkDerivation (finalAttrs: {
     libjpeg
     tremor
     pango
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libdrm
     libGL
     libvisual
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     OpenGL
   ] ++ lib.optionals enableAlsa [
     alsa-lib
@@ -108,7 +111,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   propagatedBuildInputs = [
     gstreamer
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libdrm
   ];
 
@@ -125,7 +128,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ lib.optional (!enableGl) "-Dgl=disabled"
   ++ lib.optional (!enableAlsa) "-Dalsa=disabled"
   ++ lib.optional (!enableCdparanoia) "-Dcdparanoia=disabled"
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-Ddrm=disabled"
     "-Dlibvisual=disabled"
   ];
@@ -172,6 +175,6 @@ stdenv.mkDerivation (finalAttrs: {
       "gstreamer-video-1.0"
     ];
     platforms = platforms.unix;
-    maintainers = with maintainers; [ matthewbauer lilyinstarlight ];
+    maintainers = with maintainers; [ matthewbauer ];
   };
 })
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index 3136b6f886755..7eba093ab94bc 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -10,15 +10,20 @@
 , glib
 , makeWrapper
 , libcap
-, libunwind
 , elfutils # for libdw
 , bash-completion
 , lib
 , Cocoa
 , CoreServices
-, gobject-introspection
 , rustc
 , testers
+, gobject-introspection
+, buildPackages
+, withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
+, libunwind
+, withLibunwind ?
+  lib.meta.availableOn stdenv.hostPlatform libunwind &&
+    lib.elem "libunwind" libunwind.meta.pkgConfigModules or []
 # Checks meson.is_cross_build(), so even canExecute isn't enough.
 , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc
 }:
@@ -33,6 +38,8 @@ stdenv.mkDerivation (finalAttrs: {
     "dev"
   ];
 
+  separateDebugInfo = true;
+
   src = let
     inherit (finalAttrs) pname version;
   in fetchurl {
@@ -56,22 +63,24 @@ stdenv.mkDerivation (finalAttrs: {
     makeWrapper
     glib
     bash-completion
-    gobject-introspection
     rustc
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libcap # for setcap binary
+  ] ++ lib.optionals withIntrospection [
+    gobject-introspection
   ] ++ lib.optionals enableDocumentation [
     hotdoc
   ];
 
   buildInputs = [
     bash-completion
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libcap
-    libunwind
   ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
     elfutils
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals withLibunwind [
+    libunwind
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Cocoa
     CoreServices
   ];
@@ -83,11 +92,10 @@ stdenv.mkDerivation (finalAttrs: {
   mesonFlags = [
     "-Ddbghelp=disabled" # not needed as we already provide libunwind and libdw, and dbghelp is a fallback to those
     "-Dexamples=disabled" # requires many dependencies and probably not useful for our users
+    (lib.mesonEnable "introspection" withIntrospection)
     (lib.mesonEnable "doc" enableDocumentation)
-  ] ++ lib.optionals stdenv.isDarwin [
-    # darwin.libunwind doesn't have pkg-config definitions so meson doesn't detect it.
-    "-Dlibunwind=disabled"
-    "-Dlibdw=disabled"
+    (lib.mesonEnable "libunwind" withLibunwind)
+    (lib.mesonEnable "libdw" withLibunwind)
   ];
 
   postPatch = ''
@@ -123,6 +131,6 @@ stdenv.mkDerivation (finalAttrs: {
       "gstreamer-controller-1.0"
     ];
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ttuegel matthewbauer lilyinstarlight ];
+    maintainers = with maintainers; [ ttuegel matthewbauer ];
   };
 })
diff --git a/pkgs/development/libraries/gstreamer/devtools/default.nix b/pkgs/development/libraries/gstreamer/devtools/default.nix
index 44a79bb2c998d..1232224faa131 100644
--- a/pkgs/development/libraries/gstreamer/devtools/default.nix
+++ b/pkgs/development/libraries/gstreamer/devtools/default.nix
@@ -64,6 +64,6 @@ stdenv.mkDerivation rec {
     homepage = "https://gstreamer.freedesktop.org";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix
index 79ece373b57d0..89830f3aed312 100644
--- a/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -69,6 +69,6 @@ stdenv.mkDerivation rec {
     homepage = "https://gstreamer.freedesktop.org";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index bd301e7b45c22..ec474972ef529 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -39,9 +39,9 @@
 , qt6Support ? false, qt6
 , raspiCameraSupport ? false, libraspberrypi
 , enableJack ? true, libjack2
-, enableX11 ? stdenv.isLinux, xorg
+, enableX11 ? stdenv.hostPlatform.isLinux, xorg
 , ncurses
-, enableWayland ? stdenv.isLinux
+, enableWayland ? stdenv.hostPlatform.isLinux
 , wayland
 , wayland-protocols
 , libgudev
@@ -54,7 +54,7 @@
 
 # MMAL is not supported on aarch64, see:
 # https://github.com/raspberrypi/userland/issues/688
-assert raspiCameraSupport -> (stdenv.isLinux && stdenv.isAarch32);
+assert raspiCameraSupport -> (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch32);
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-good";
@@ -68,6 +68,8 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
+    # Reenable dynamic loading of libsoup on Darwin and use a different approach to do it.
+    ./souploader-darwin.diff
     # dlopen libsoup_3 with an absolute path
     (substituteAll {
       src = ./souploader.diff;
@@ -145,9 +147,9 @@ stdenv.mkDerivation rec {
     qtbase
     qtdeclarative
     qtwayland
-  ]) ++ lib.optionals stdenv.isDarwin [
+  ]) ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Cocoa
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libdrm
     libGL
     libv4l
@@ -175,7 +177,7 @@ stdenv.mkDerivation rec {
     "-Dximagesrc=disabled" # Linux-only
   ] ++ lib.optionals (!enableJack) [
     "-Djack=disabled"
-  ] ++ lib.optionals (!stdenv.isLinux) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Ddv1394=disabled" # Linux only
     "-Doss4=disabled" # Linux only
     "-Doss=disabled" # Linux only
@@ -215,6 +217,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.lgpl2Plus;
     platforms = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ matthewbauer lilyinstarlight ];
+    maintainers = with maintainers; [ matthewbauer ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/good/souploader-darwin.diff b/pkgs/development/libraries/gstreamer/good/souploader-darwin.diff
new file mode 100644
index 0000000000000..40dea3a764ac7
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/good/souploader-darwin.diff
@@ -0,0 +1,128 @@
+diff --git a/ext/adaptivedemux2/meson.build b/ext/adaptivedemux2/meson.build
+index 711b38a2a9..67a789f664 100644
+--- a/ext/adaptivedemux2/meson.build
++++ b/ext/adaptivedemux2/meson.build
+@@ -82,7 +82,7 @@ soup_link_args = []
+ soup_link_deps = []
+ 
+ default_library = get_option('default_library')
+-if host_system != 'linux' or default_library in ['static', 'both']
++if default_library in ['static', 'both']
+   if soup_ver_opt in ['auto', '3']
+     libsoup3_dep = dependency('libsoup-3.0', allow_fallback: true,
+                               required: soup_ver_opt == '3' and soup_opt.enabled())
+@@ -120,7 +120,7 @@ adaptive_deps = [gmodule_dep, gst_dep, gsttag_dep, gstnet_dep, gstbase_dep, gstp
+ adaptive_args = [gst_plugins_good_args, soup_loader_args, hls_cargs,
+     '-DGST_ISOFF_API=G_GNUC_INTERNAL']
+ 
+-if host_system != 'linux'
++if false
+     adaptivedemux2 = library('gstadaptivedemux2',
+       c_args: [adaptive_args, soup_link_args],
+       dependencies: [adaptive_deps, soup_link_deps],
+diff --git a/ext/soup/gstsouploader.c b/ext/soup/gstsouploader.c
+index 9192e4dac5..8082b2614d 100644
+--- a/ext/soup/gstsouploader.c
++++ b/ext/soup/gstsouploader.c
+@@ -34,12 +34,18 @@ GST_DEBUG_CATEGORY (gst_soup_debug);
+ 
+ #ifndef LINK_SOUP
+ 
+-#if defined(__APPLE__) || defined(G_OS_WIN32)
+-#error "dlopen of libsoup is only supported on Linux"
++#if defined(G_OS_WIN32)
++#error "dlopen of libsoup is only supported on Darwin and Linux"
+ #endif
+ 
++#if defined(__APPLE__)
++#define LIBSOUP_3_SONAME "libsoup-3.0.0.dylib"
++#define LIBSOUP_2_SONAME "libsoup-2.4.1.dylib"
++#define LIBSOUP_COMMON_SYMBOL "soup_get_major_version"
++#else
+ #define LIBSOUP_3_SONAME "libsoup-3.0.so.0"
+ #define LIBSOUP_2_SONAME "libsoup-2.4.so.1"
++#endif
+ 
+ #define LOAD_SYMBOL(name) G_STMT_START {                                \
+     if (!g_module_symbol (module, G_STRINGIFY (name), (gpointer *) &G_PASTE (vtable->_, name))) { \
+@@ -156,7 +162,46 @@ gst_soup_load_library (void)
+   GST_DEBUG_CATEGORY_INIT (gst_soup_debug, "soup", 0, "soup");
+ #endif
+ 
+-#ifdef HAVE_RTLD_NOLOAD
++#if defined(__APPLE__)
++  g_autofree gchar* libsoup_path = NULL;
++  {
++    /* In order to avoid causing conflicts we detect if libsoup 2 or 3 is loaded already.
++     * Darwin has to probe by checking for symbols because `dlopen` called with a dylib
++     * basename will try to locate it via the process’s rpath stack (and not find it). */
++
++    gpointer func = NULL;
++    Dl_info info = { 0 };
++
++    GModule* module = g_module_open (NULL, 0);
++    if (g_module_symbol (module, LIBSOUP_COMMON_SYMBOL, &func)
++        && dladdr (func, &info) && info.dli_sname) {
++      libsoup_path = g_strndup(info.dli_fname, PATH_MAX - 1);
++      g_autofree gchar* image_name = g_path_get_basename (libsoup_path);
++
++      /* Make sure `libsoup_path` points to a dylib that actually exists and
++       * contains the libsoup symbol that was queried. */
++      gpointer handle = dlopen (libsoup_path, RTLD_NOW | RTLD_NOLOAD);
++      gboolean has_symbol = dlsym (handle, LIBSOUP_COMMON_SYMBOL) != NULL;
++      if (handle && has_symbol && g_str_equal (image_name, LIBSOUP_3_SONAME)) {
++        libsoup_sonames[0] = libsoup_path;
++        GST_DEBUG ("LibSoup 3 found");
++      } else if (handle && has_symbol && g_str_equal (image_name, LIBSOUP_2_SONAME)) {
++        libsoup_sonames[0] = libsoup_path;
++        GST_DEBUG ("LibSoup 2 found");
++      } else {
++        g_clear_pointer (&libsoup_path, g_free);
++      }
++      g_clear_pointer (&handle, dlclose);
++    }
++    g_module_close (module);
++
++    if (!libsoup_sonames[0]) {
++      GST_DEBUG ("Trying all libsoups");
++      libsoup_sonames[0] = LIBSOUP_3_SONAME;
++      libsoup_sonames[1] = LIBSOUP_2_SONAME;
++    }
++  }
++#elif defined(HAVE_RTLD_NOLOAD)
+   {
+     gpointer handle = NULL;
+ 
+diff --git a/ext/soup/meson.build b/ext/soup/meson.build
+index aaa01dbcf6..83b7cf3fbf 100644
+--- a/ext/soup/meson.build
++++ b/ext/soup/meson.build
+@@ -20,8 +20,8 @@ soup_link_deps = []
+ libsoup2_dep = disabler()
+ libsoup3_dep = disabler()
+ default_library = get_option('default_library')
+-soup_lookup_dep = get_option('soup-lookup-dep') and host_system == 'linux'
+-if host_system != 'linux' or default_library in ['static', 'both'] or soup_lookup_dep
++soup_lookup_dep = get_option('soup-lookup-dep')
++if default_library in ['static', 'both'] or soup_lookup_dep
+   if soup_ver_opt in ['auto', '3']
+     libsoup3_dep = dependency('libsoup-3.0', allow_fallback: true,
+                               required: soup_ver_opt == '3' and soup_opt.enabled())
+@@ -33,7 +33,7 @@ if host_system != 'linux' or default_library in ['static', 'both'] or soup_looku
+   endif
+ endif
+ 
+-if host_system != 'linux' or default_library in ['static', 'both']
++if default_library in ['static', 'both']
+   if libsoup3_dep.found()
+     soup_link_deps += libsoup3_dep
+     soup_link_args += '-DLINK_SOUP=3'
+@@ -60,7 +60,7 @@ soup_library_kwargs = {
+ soup_library_deps = [gst_dep, gstbase_dep, gsttag_dep, gmodule_dep, gio_dep, libdl_dep]
+ soup_library_c_args = gst_plugins_good_args
+ 
+-if host_system != 'linux'
++if false
+   gstsouphttpsrc = library('gstsoup',
+     c_args : soup_library_c_args + soup_link_args,
+     dependencies : soup_library_deps + soup_link_deps,
diff --git a/pkgs/development/libraries/gstreamer/good/souploader.diff b/pkgs/development/libraries/gstreamer/good/souploader.diff
index 8662207de8f2f..49917cad91dec 100644
--- a/pkgs/development/libraries/gstreamer/good/souploader.diff
+++ b/pkgs/development/libraries/gstreamer/good/souploader.diff
@@ -1,8 +1,17 @@
 diff --git a/ext/soup/gstsouploader.c b/ext/soup/gstsouploader.c
-index 85048ce303..d7d818cf95 100644
+index 85a033668e..8082b2614d 100644
 --- a/ext/soup/gstsouploader.c
 +++ b/ext/soup/gstsouploader.c
-@@ -181,7 +181,7 @@ gst_soup_load_library (void)
+@@ -197,7 +197,7 @@ gst_soup_load_library (void)
+ 
+     if (!libsoup_sonames[0]) {
+       GST_DEBUG ("Trying all libsoups");
+-      libsoup_sonames[0] = LIBSOUP_3_SONAME;
++      libsoup_sonames[0] = "@nixLibSoup3Path@/" LIBSOUP_3_SONAME;
+       libsoup_sonames[1] = LIBSOUP_2_SONAME;
+     }
+   }
+@@ -216,7 +216,7 @@ gst_soup_load_library (void)
        GST_DEBUG ("LibSoup 2 found");
      } else {
        GST_DEBUG ("Trying all libsoups");
diff --git a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
index da74ec243cefa..68485f7e7454a 100644
--- a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
+++ b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation {
     description = "GStreamer Plugin for MIPI camera support through the IPU6/IPU6EP/IPU6SE on Intel Tigerlake/Alderlake/Jasperlake platforms";
     homepage = "https://github.com/intel/icamerasrc/tree/icamerasrc_slim_api";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix
index 872627009e215..38a553ec8669a 100644
--- a/pkgs/development/libraries/gstreamer/libav/default.nix
+++ b/pkgs/development/libraries/gstreamer/libav/default.nix
@@ -8,14 +8,11 @@
 , gstreamer
 , gst-plugins-base
 , gettext
-, libav
+, ffmpeg-headless
 # Checks meson.is_cross_build(), so even canExecute isn't enough.
 , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc
 }:
 
-# Note that since gst-libav-1.6, libav is actually ffmpeg. See
-# https://gstreamer.freedesktop.org/releases/1.6/ for more info.
-
 stdenv.mkDerivation rec {
   pname = "gst-libav";
   version = "1.24.3";
@@ -40,7 +37,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gstreamer
     gst-plugins-base
-    libav
+    ffmpeg-headless
   ];
 
   mesonFlags = [
@@ -53,10 +50,10 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "FFmpeg/libav plugin for GStreamer";
+    description = "FFmpeg plugin for GStreamer";
     homepage = "https://gstreamer.freedesktop.org";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/rs/Cargo.lock b/pkgs/development/libraries/gstreamer/rs/Cargo.lock
index 52c6518bd51f9..7c91f3ef8aeec 100644
--- a/pkgs/development/libraries/gstreamer/rs/Cargo.lock
+++ b/pkgs/development/libraries/gstreamer/rs/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "addr2line"
-version = "0.21.0"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678"
 dependencies = [
  "gimli",
 ]
@@ -70,7 +70,7 @@ dependencies = [
  "getrandom",
  "once_cell",
  "version_check",
- "zerocopy 0.7.32",
+ "zerocopy 0.7.34",
 ]
 
 [[package]]
@@ -90,9 +90,9 @@ checksum = "4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1"
 
 [[package]]
 name = "allocator-api2"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
 
 [[package]]
 name = "android-tzdata"
@@ -111,47 +111,48 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.6.13"
+version = "0.6.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
+checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
+ "is_terminal_polyfill",
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.2"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391"
 dependencies = [
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.2"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19"
 dependencies = [
  "anstyle",
  "windows-sys 0.52.0",
@@ -159,9 +160,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.81"
+version = "1.0.86"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
+checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
 
 [[package]]
 name = "arbitrary"
@@ -177,7 +178,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -188,12 +189,11 @@ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
 name = "async-channel"
-version = "2.2.0"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
+checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
 dependencies = [
  "concurrent-queue",
- "event-listener",
  "event-listener-strategy",
  "futures-core",
  "pin-project-lite",
@@ -201,9 +201,9 @@ dependencies = [
 
 [[package]]
 name = "async-compression"
-version = "0.4.8"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60"
+checksum = "cd066d0b4ef8ecb03a55319dc13aa6910616d0f44008a045bb1835af830abff5"
 dependencies = [
  "flate2",
  "futures-core",
@@ -214,13 +214,13 @@ dependencies = [
 
 [[package]]
 name = "async-recursion"
-version = "1.1.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
+checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -242,31 +242,31 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.7.0"
+version = "4.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
+checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
 
 [[package]]
 name = "async-trait"
-version = "0.1.79"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "async-tungstenite"
-version = "0.25.1"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cca750b12e02c389c1694d35c16539f88b8bbaa5945934fdc1b41a776688589"
+checksum = "bb786dab48e539c5f17b23bac20d812ac027c01732ed7c7b58850c69a684e46c"
 dependencies = [
  "futures-io",
  "futures-util",
@@ -275,10 +275,16 @@ dependencies = [
  "pin-project-lite",
  "tokio",
  "tokio-native-tls",
- "tungstenite 0.21.0",
+ "tungstenite 0.23.0",
 ]
 
 [[package]]
+name = "atomic-waker"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
+
+[[package]]
 name = "atomic_refcell"
 version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -297,9 +303,9 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "av1-grain"
@@ -337,7 +343,7 @@ dependencies = [
  "fastrand",
  "hex",
  "http 0.2.12",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "ring",
  "time",
  "tokio",
@@ -547,7 +553,7 @@ dependencies = [
  "aws-types",
  "bytes",
  "http 0.2.12",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "once_cell",
  "regex-lite",
  "tracing",
@@ -704,12 +710,12 @@ dependencies = [
  "http 0.2.12",
  "http-body 0.4.6",
  "http-body 1.0.0",
- "hyper 0.14.28",
- "hyper-rustls",
+ "hyper 0.14.29",
+ "hyper-rustls 0.24.2",
  "once_cell",
  "pin-project-lite",
  "pin-utils",
- "rustls",
+ "rustls 0.21.12",
  "tokio",
  "tracing",
 ]
@@ -783,9 +789,9 @@ dependencies = [
 
 [[package]]
 name = "backtrace"
-version = "0.3.71"
+version = "0.3.73"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
+checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a"
 dependencies = [
  "addr2line",
  "cc",
@@ -804,9 +810,9 @@ checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
 
 [[package]]
 name = "base32"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa"
+checksum = "d1ce0365f4d5fb6646220bb52fe547afd51796d90f914d4063cb0b032ebee088"
 
 [[package]]
 name = "base64"
@@ -822,9 +828,9 @@ checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "base64"
-version = "0.22.0"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
 
 [[package]]
 name = "base64-serde"
@@ -875,9 +881,9 @@ checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "bitstream-io"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da"
+checksum = "7c12d1856e42f0d817a835fe55853957c85c8c8a470114029143d3f12671446e"
 
 [[package]]
 name = "block-buffer"
@@ -914,15 +920,15 @@ checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7"
 
 [[package]]
 name = "built"
-version = "0.7.1"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53"
+checksum = "c6a6c0b39c38fd754ac338b00a88066436389c0f029da5d37d1e01091d9b7c17"
 
 [[package]]
 name = "bumpalo"
-version = "3.15.4"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "byte-slice-cast"
@@ -932,9 +938,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c"
 
 [[package]]
 name = "bytemuck"
-version = "1.15.0"
+version = "1.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
+checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e"
 
 [[package]]
 name = "byteorder"
@@ -960,8 +966,8 @@ dependencies = [
 
 [[package]]
 name = "cairo-rs"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "bitflags 2.5.0",
  "cairo-sys-rs",
@@ -972,8 +978,8 @@ dependencies = [
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib-sys",
  "libc",
@@ -982,12 +988,13 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.91"
+version = "1.0.99"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd97381a8cc6493395a5afc4c691c1084b3768db713b73aa215217aa245d153"
+checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -1008,9 +1015,9 @@ dependencies = [
 
 [[package]]
 name = "cea708-types"
-version = "0.3.1"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd7f33493cb6f19aa19c6e688708f66bf792bc2c75137da2a03c7ebbdf7a44f9"
+checksum = "82b825228dce83e7156c7cd189bcfe5ef8014320deca7dd619787fe594946426"
 dependencies = [
  "env_logger 0.10.2",
  "log",
@@ -1021,9 +1028,9 @@ dependencies = [
 
 [[package]]
 name = "cfg-expr"
-version = "0.15.7"
+version = "0.15.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d"
+checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -1037,9 +1044,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.37"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -1047,7 +1054,7 @@ dependencies = [
  "num-traits",
  "serde",
  "wasm-bindgen",
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -1078,7 +1085,7 @@ dependencies = [
  "anstream",
  "anstyle",
  "clap_lex",
- "strsim",
+ "strsim 0.10.0",
 ]
 
 [[package]]
@@ -1090,7 +1097,7 @@ dependencies = [
  "heck 0.4.1",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -1127,15 +1134,15 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "colorchoice"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422"
 
 [[package]]
 name = "concurrent-queue"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -1148,9 +1155,9 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
 
 [[package]]
 name = "cookie"
-version = "0.17.0"
+version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24"
+checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747"
 dependencies = [
  "percent-encoding",
  "time",
@@ -1168,12 +1175,12 @@ dependencies = [
 
 [[package]]
 name = "cookie_store"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6"
+checksum = "4934e6b7e8419148b6ef56950d277af8561060b56afd59e2aadf98b59fce6baa"
 dependencies = [
  "cookie",
- "idna 0.3.0",
+ "idna 0.5.0",
  "log",
  "publicsuffix",
  "serde",
@@ -1219,27 +1226,27 @@ dependencies = [
 
 [[package]]
 name = "crc32c"
-version = "0.6.5"
+version = "0.6.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89254598aa9b9fa608de44b3ae54c810f0f06d755e24c50177f1f8f31ff50ce2"
+checksum = "3a47af21622d091a8f0fb295b88bc886ac74efcc613efc19f5d0b21de5c89e47"
 dependencies = [
  "rustc_version",
 ]
 
 [[package]]
 name = "crc32fast"
-version = "1.4.0"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
+checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.12"
+version = "0.5.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
+checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -1265,9 +1272,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.19"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
 
 [[package]]
 name = "crypto-bigint"
@@ -1344,9 +1351,9 @@ dependencies = [
 
 [[package]]
 name = "darling"
-version = "0.20.8"
+version = "0.20.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
+checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -1354,37 +1361,38 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.20.8"
+version = "0.20.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
+checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
- "strsim",
- "syn 2.0.58",
+ "strsim 0.11.1",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.20.8"
+version = "0.20.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
+checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178"
 dependencies = [
  "darling_core",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "dash-mpd"
-version = "0.16.0"
+version = "0.16.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6cafa2c33eff2857e1a14c38aa9a432aa565a01e77804a541fce7aec3affb8f8"
+checksum = "0f8a6df34a2957e8a164afa9265bcb1ea9a07a0df69c5dcda4909e4f650c0850"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "base64-serde",
+ "bytes",
  "chrono",
  "fs-err",
  "iso8601",
@@ -1402,19 +1410,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "dashmap"
-version = "5.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
-dependencies = [
- "cfg-if",
- "hashbrown 0.14.3",
- "lock_api",
- "once_cell",
- "parking_lot_core",
-]
-
-[[package]]
 name = "dasp_frame"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1431,9 +1426,9 @@ checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
 
 [[package]]
 name = "data-encoding"
-version = "2.5.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
 
 [[package]]
 name = "dav1d"
@@ -1503,9 +1498,9 @@ dependencies = [
 
 [[package]]
 name = "dssim-core"
-version = "3.2.8"
+version = "3.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fafad37c1f4f168243f3ac1b4cae0d358c528ac695670100337314e38d54b486"
+checksum = "0c074fca6cdf5e3faaaf03f71e29cd5d92ea533b1432cf78910dafffc2ce872b"
 dependencies = [
  "imgref",
  "itertools 0.12.1",
@@ -1548,9 +1543,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.10.0"
+version = "1.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
+checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b"
 
 [[package]]
 name = "elliptic-curve"
@@ -1574,9 +1569,9 @@ dependencies = [
 
 [[package]]
 name = "encoding_rs"
-version = "0.8.33"
+version = "0.8.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
+checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
 dependencies = [
  "cfg-if",
 ]
@@ -1614,9 +1609,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.8"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -1624,9 +1619,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "5.3.0"
+version = "5.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
+checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -1635,9 +1630,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
 dependencies = [
  "event-listener",
  "pin-project-lite",
@@ -1651,9 +1646,9 @@ checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
 
 [[package]]
 name = "fastrand"
-version = "2.0.2"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fdeflate"
@@ -1702,9 +1697,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -1831,7 +1826,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -1866,8 +1861,8 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "gdk-pixbuf-sys",
  "gio",
@@ -1877,8 +1872,8 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -1889,8 +1884,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -1903,8 +1898,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1919,8 +1914,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "gdk4",
  "gdk4-wayland-sys",
@@ -1931,8 +1926,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1941,8 +1936,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "gdk4",
  "gdk4-win32-sys",
@@ -1954,8 +1949,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -1965,8 +1960,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "gdk4",
  "gdk4-x11-sys",
@@ -1977,8 +1972,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -2007,9 +2002,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.14"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -2030,14 +2025,14 @@ dependencies = [
 
 [[package]]
 name = "gimli"
-version = "0.28.1"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
+checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd"
 
 [[package]]
 name = "gio"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -2053,8 +2048,8 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2065,8 +2060,8 @@ dependencies = [
 
 [[package]]
 name = "glib"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "bitflags 2.5.0",
  "futures-channel",
@@ -2086,20 +2081,20 @@ dependencies = [
 
 [[package]]
 name = "glib-macros"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "heck 0.5.0",
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "libc",
  "system-deps",
@@ -2113,8 +2108,8 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "gobject-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib-sys",
  "libc",
@@ -2123,8 +2118,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -2133,8 +2128,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib-sys",
  "libc",
@@ -2155,8 +2150,8 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -2169,8 +2164,8 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -2184,7 +2179,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-audiofx"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2206,7 +2201,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-aws"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "async-stream",
  "aws-config",
@@ -2239,7 +2234,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-cdg"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "cdg",
  "cdg_renderer",
@@ -2254,7 +2249,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-claxon"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2268,7 +2263,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-closedcaption"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2296,7 +2291,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-csound"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "byte-slice-cast",
  "csound",
@@ -2310,7 +2305,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-dav1d"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "dav1d",
  "gst-plugin-version-helper",
@@ -2323,7 +2318,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-fallbackswitch"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2341,7 +2336,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-ffv1"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "byte-slice-cast",
  "ffv1",
@@ -2354,7 +2349,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-file"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2365,7 +2360,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-flavors"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "byteorder",
  "flavors",
@@ -2381,9 +2376,10 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-fmp4"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
+ "bitstream-io",
  "chrono",
  "dash-mpd",
  "gst-plugin-version-helper",
@@ -2402,7 +2398,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-gif"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "atomic_refcell",
  "gif",
@@ -2415,7 +2411,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-gtk4"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "async-channel",
  "gdk4-wayland",
@@ -2423,6 +2419,7 @@ dependencies = [
  "gdk4-x11",
  "gst-plugin-version-helper",
  "gstreamer",
+ "gstreamer-allocators",
  "gstreamer-base",
  "gstreamer-gl",
  "gstreamer-gl-egl",
@@ -2436,7 +2433,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-hlssink3"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "chrono",
@@ -2455,7 +2452,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-hsv"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2470,7 +2467,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-inter"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "futures",
@@ -2488,7 +2485,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-json"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2500,7 +2497,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-lewton"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2514,7 +2511,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-livesync"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2530,9 +2527,10 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-mp4"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
+ "bitstream-io",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-audio",
@@ -2546,7 +2544,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-ndi"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2568,7 +2566,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-onvif"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "cairo-rs",
  "chrono",
@@ -2586,7 +2584,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-png"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2599,7 +2597,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-raptorq"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2613,7 +2611,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-rav1e"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "atomic_refcell",
  "gst-plugin-version-helper",
@@ -2626,7 +2624,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-regex"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2637,7 +2635,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-reqwest"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "bytes",
  "futures",
@@ -2646,18 +2644,18 @@ dependencies = [
  "gstreamer-base",
  "headers 0.4.0",
  "http-body-util",
- "hyper 1.2.0",
+ "hyper 1.3.1",
  "mime",
  "once_cell",
  "pin-project-lite",
- "reqwest 0.12.3",
+ "reqwest 0.12.5",
  "tokio",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-rtp"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "bitstream-io",
  "gst-plugin-version-helper",
@@ -2671,7 +2669,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-rtsp"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2686,7 +2684,7 @@ dependencies = [
  "once_cell",
  "rtsp-types",
  "sdp-types",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "thiserror",
  "tokio",
  "tokio-stream",
@@ -2695,7 +2693,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-sodium"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "clap",
  "gst-plugin-version-helper",
@@ -2715,7 +2713,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-spotify"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "futures",
@@ -2730,7 +2728,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-textahead"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2739,7 +2737,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-textwrap"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2751,7 +2749,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-threadshare"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "async-task",
  "cc",
@@ -2775,14 +2773,14 @@ dependencies = [
  "rand",
  "rustix",
  "slab",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "waker-fn",
  "winapi",
 ]
 
 [[package]]
 name = "gst-plugin-togglerecord"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "either",
  "gio",
@@ -2799,7 +2797,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-tracers"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "gst-plugin-version-helper",
@@ -2811,7 +2809,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-tutorial"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2825,7 +2823,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-uriplaylistbin"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "clap",
@@ -2843,12 +2841,12 @@ name = "gst-plugin-version-helper"
 version = "0.8.2"
 dependencies = [
  "chrono",
- "toml_edit 0.22.9",
+ "toml_edit 0.22.14",
 ]
 
 [[package]]
 name = "gst-plugin-videofx"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "atomic_refcell",
  "cairo-rs",
@@ -2868,7 +2866,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webp"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2881,7 +2879,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtc"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "async-recursion",
@@ -2937,7 +2935,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtc-signalling"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "anyhow",
  "async-tungstenite",
@@ -2959,7 +2957,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtc-signalling-protocol"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "serde",
  "serde_json",
@@ -2967,7 +2965,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtchttp"
-version = "0.12.4"
+version = "0.12.8"
 dependencies = [
  "async-recursion",
  "bytes",
@@ -2978,14 +2976,14 @@ dependencies = [
  "gstreamer-webrtc",
  "once_cell",
  "parse_link_header",
- "reqwest 0.12.3",
+ "reqwest 0.12.5",
  "tokio",
 ]
 
 [[package]]
 name = "gstreamer"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -2993,7 +2991,7 @@ dependencies = [
  "futures-util",
  "glib",
  "gstreamer-sys",
- "itertools 0.12.1",
+ "itertools 0.13.0",
  "libc",
  "muldiv",
  "num-integer",
@@ -3009,9 +3007,33 @@ dependencies = [
 ]
 
 [[package]]
+name = "gstreamer-allocators"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
+dependencies = [
+ "glib",
+ "gstreamer",
+ "gstreamer-allocators-sys",
+ "libc",
+ "once_cell",
+]
+
+[[package]]
+name = "gstreamer-allocators-sys"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "gstreamer-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
 name = "gstreamer-app"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -3024,8 +3046,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-app-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -3036,8 +3058,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-audio"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "cfg-if",
  "glib",
@@ -3052,8 +3074,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-audio-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3065,8 +3087,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "atomic_refcell",
  "cfg-if",
@@ -3078,8 +3100,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3090,8 +3112,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3100,8 +3122,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3112,8 +3134,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3126,8 +3148,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-egl"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3138,8 +3160,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-egl-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -3149,8 +3171,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3163,8 +3185,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3175,8 +3197,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -3186,8 +3208,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3198,8 +3220,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -3209,8 +3231,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "gio",
  "glib",
@@ -3220,8 +3242,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -3232,8 +3254,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3246,8 +3268,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3260,8 +3282,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-rtp"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3271,8 +3293,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-rtp-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -3283,8 +3305,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3293,8 +3315,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-sys",
@@ -3304,8 +3326,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3315,8 +3337,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-utils"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "gstreamer",
  "gstreamer-app",
@@ -3327,8 +3349,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-video"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -3344,8 +3366,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-video-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3357,8 +3379,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3369,8 +3391,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc-sys"
-version = "0.22.4"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
+version = "0.22.7"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#da8c41c6fba41095c94e8d0e8967f051e44bc1ff"
 dependencies = [
  "glib-sys",
  "gstreamer-sdp-sys",
@@ -3381,8 +3403,8 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -3401,21 +3423,19 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
- "anyhow",
  "proc-macro-crate",
- "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "gtk4-sys"
-version = "0.8.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
+version = "0.8.2"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#cf84b5cd36fc1aa31175bc24ff45e8ceb0710dec"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -3451,15 +3471,15 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab"
 dependencies = [
+ "atomic-waker",
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
- "futures-util",
  "http 1.1.0",
  "indexmap 2.2.6",
  "slab",
@@ -3476,9 +3496,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 dependencies = [
  "ahash",
  "allocator-api2",
@@ -3560,6 +3580,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
+name = "hermit-abi"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
+
+[[package]]
 name = "hex"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3651,12 +3677,12 @@ dependencies = [
 
 [[package]]
 name = "http-body-util"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
 dependencies = [
  "bytes",
- "futures-core",
+ "futures-util",
  "http 1.1.0",
  "http-body 1.0.0",
  "pin-project-lite",
@@ -3664,9 +3690,9 @@ dependencies = [
 
 [[package]]
 name = "httparse"
-version = "1.8.0"
+version = "1.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
+checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9"
 
 [[package]]
 name = "httpdate"
@@ -3688,9 +3714,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.28"
+version = "0.14.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
+checksum = "f361cde2f109281a220d4307746cdfd5ee3f410da58a70377762396775634b33"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -3703,7 +3729,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio",
  "tower-service",
  "tracing",
@@ -3712,14 +3738,14 @@ dependencies = [
 
 [[package]]
 name = "hyper"
-version = "1.2.0"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
+checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
 dependencies = [
  "bytes",
  "futures-channel",
  "futures-util",
- "h2 0.4.4",
+ "h2 0.4.5",
  "http 1.1.0",
  "http-body 1.0.0",
  "httparse",
@@ -3741,7 +3767,7 @@ dependencies = [
  "futures",
  "headers 0.3.9",
  "http 0.2.12",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "tokio",
  "tower-service",
 ]
@@ -3754,12 +3780,29 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
 dependencies = [
  "futures-util",
  "http 0.2.12",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "log",
- "rustls",
+ "rustls 0.21.12",
  "rustls-native-certs",
  "tokio",
- "tokio-rustls",
+ "tokio-rustls 0.24.1",
+]
+
+[[package]]
+name = "hyper-rustls"
+version = "0.27.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155"
+dependencies = [
+ "futures-util",
+ "http 1.1.0",
+ "hyper 1.3.1",
+ "hyper-util",
+ "rustls 0.23.10",
+ "rustls-pki-types",
+ "tokio",
+ "tokio-rustls 0.26.0",
+ "tower-service",
 ]
 
 [[package]]
@@ -3769,7 +3812,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
 dependencies = [
  "bytes",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "native-tls",
  "tokio",
  "tokio-native-tls",
@@ -3783,7 +3826,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
 dependencies = [
  "bytes",
  "http-body-util",
- "hyper 1.2.0",
+ "hyper 1.3.1",
  "hyper-util",
  "native-tls",
  "tokio",
@@ -3793,18 +3836,18 @@ dependencies = [
 
 [[package]]
 name = "hyper-util"
-version = "0.1.3"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+checksum = "7b875924a60b96e5d7b9ae7b066540b1dd1cbd90d1828f54c92e02a283351c56"
 dependencies = [
  "bytes",
  "futures-channel",
  "futures-util",
  "http 1.1.0",
  "http-body 1.0.0",
- "hyper 1.2.0",
+ "hyper 1.3.1",
  "pin-project-lite",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio",
  "tower",
  "tower-service",
@@ -3942,7 +3985,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "serde",
 ]
 
@@ -3954,7 +3997,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -3975,6 +4018,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "is_terminal_polyfill"
+version = "1.70.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800"
+
+[[package]]
 name = "iso8601"
 version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4002,6 +4051,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "itertools"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
+dependencies = [
+ "either",
+]
+
+[[package]]
 name = "itoa"
 version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4009,9 +4067,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jobserver"
-version = "0.1.28"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
@@ -4066,9 +4124,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.155"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
 
 [[package]]
 name = "libfuzzer-sys"
@@ -4088,7 +4146,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -4128,7 +4186,7 @@ dependencies = [
  "futures-util",
  "getopts",
  "hex",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "librespot-audio",
  "librespot-connect",
  "librespot-core",
@@ -4197,7 +4255,7 @@ dependencies = [
  "hmac 0.11.0",
  "http 0.2.12",
  "httparse",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "hyper-proxy",
  "librespot-protocol",
  "log",
@@ -4233,7 +4291,7 @@ dependencies = [
  "form_urlencoded",
  "futures-core",
  "hmac 0.11.0",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "libmdns",
  "librespot-core",
  "log",
@@ -4320,9 +4378,9 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.13"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
 
 [[package]]
 name = "livekit-api"
@@ -4365,9 +4423,9 @@ dependencies = [
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -4385,7 +4443,7 @@ version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
 dependencies = [
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
 ]
 
 [[package]]
@@ -4435,9 +4493,9 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.7.2"
+version = "2.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
+checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
 
 [[package]]
 name = "memoffset"
@@ -4481,9 +4539,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.2"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
+checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08"
 dependencies = [
  "adler",
  "simd-adler32",
@@ -4565,11 +4623,10 @@ dependencies = [
 
 [[package]]
 name = "native-tls"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
+checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466"
 dependencies = [
- "lazy_static",
  "libc",
  "log",
  "openssl",
@@ -4638,11 +4695,10 @@ dependencies = [
 
 [[package]]
 name = "num-bigint"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
+checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7"
 dependencies = [
- "autocfg",
  "num-integer",
  "num-traits",
  "rand",
@@ -4650,9 +4706,9 @@ dependencies = [
 
 [[package]]
 name = "num-complex"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6"
+checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
 dependencies = [
  "num-traits",
 ]
@@ -4671,7 +4727,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -4685,11 +4741,10 @@ dependencies = [
 
 [[package]]
 name = "num-rational"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
+checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
 dependencies = [
- "autocfg",
  "num-bigint",
  "num-integer",
  "num-traits",
@@ -4698,9 +4753,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.18"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
  "libm",
@@ -4718,9 +4773,9 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.32.2"
+version = "0.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
+checksum = "576dfe1fc8f9df304abb159d767a29d0476f7750fbf8aa7ad07816004a207434"
 dependencies = [
  "memchr",
 ]
@@ -4769,7 +4824,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -4824,8 +4879,8 @@ dependencies = [
 
 [[package]]
 name = "pango"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "gio",
  "glib",
@@ -4835,8 +4890,8 @@ dependencies = [
 
 [[package]]
 name = "pango-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -4846,8 +4901,8 @@ dependencies = [
 
 [[package]]
 name = "pangocairo"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "cairo-rs",
  "glib",
@@ -4858,8 +4913,8 @@ dependencies = [
 
 [[package]]
 name = "pangocairo-sys"
-version = "0.19.3"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
+version = "0.19.8"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#4dc6fee85588f0dd6d8defdaa100f1cb22b7b8ae"
 dependencies = [
  "cairo-sys-rs",
  "glib-sys",
@@ -4876,9 +4931,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -4886,9 +4941,9 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "backtrace",
  "cfg-if",
@@ -4897,7 +4952,7 @@ dependencies = [
  "redox_syscall",
  "smallvec",
  "thread-id",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -4914,9 +4969,9 @@ dependencies = [
 
 [[package]]
 name = "paste"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
 
 [[package]]
 name = "pbjson"
@@ -4973,9 +5028,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "petgraph"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
+checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
 dependencies = [
  "fixedbitset",
  "indexmap 2.2.6",
@@ -4998,7 +5053,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -5050,13 +5105,13 @@ checksum = "c135f38778ad324d9e9ee68690bac2c1a51f340fdf96ca13e2ab3914eb2e51d8"
 
 [[package]]
 name = "polling"
-version = "3.6.0"
+version = "3.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
+checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
- "hermit-abi 0.3.9",
+ "hermit-abi 0.4.0",
  "pin-project-lite",
  "rustix",
  "tracing",
@@ -5087,19 +5142,19 @@ dependencies = [
 
 [[package]]
 name = "prettyplease"
-version = "0.2.17"
+version = "0.2.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7"
+checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e"
 dependencies = [
  "proc-macro2",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "primal-check"
-version = "0.3.3"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9df7f93fd637f083201473dab4fee2db4c429d32e55e3299980ab3957ab916a0"
+checksum = "dc0d895b311e3af9902528fbb8f928688abbd95872819320517cc24ca6b2bd08"
 dependencies = [
  "num-integer",
 ]
@@ -5149,9 +5204,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.79"
+version = "1.0.85"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23"
 dependencies = [
  "unicode-ident",
 ]
@@ -5172,14 +5227,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd"
 dependencies = [
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "prost"
-version = "0.12.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922"
+checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29"
 dependencies = [
  "bytes",
  "prost-derive",
@@ -5187,12 +5242,12 @@ dependencies = [
 
 [[package]]
 name = "prost-build"
-version = "0.12.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80b776a1b2dc779f5ee0641f8ade0125bc1298dd41a9a0c16d8bd57b42d222b1"
+checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4"
 dependencies = [
  "bytes",
- "heck 0.4.1",
+ "heck 0.5.0",
  "itertools 0.12.1",
  "log",
  "multimap 0.10.0",
@@ -5202,28 +5257,28 @@ dependencies = [
  "prost",
  "prost-types",
  "regex",
- "syn 2.0.58",
+ "syn 2.0.66",
  "tempfile",
 ]
 
 [[package]]
 name = "prost-derive"
-version = "0.12.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48"
+checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
 dependencies = [
  "anyhow",
  "itertools 0.12.1",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "prost-types"
-version = "0.12.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3235c33eb02c1f1e212abdbe34c78b264b038fb58ca612664343271e36e55ffe"
+checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0"
 dependencies = [
  "prost",
 ]
@@ -5281,9 +5336,9 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -5401,23 +5456,23 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.4.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
 ]
 
 [[package]]
 name = "regex"
-version = "1.10.4"
+version = "1.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
+checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.6",
- "regex-syntax 0.8.3",
+ "regex-automata 0.4.7",
+ "regex-syntax 0.8.4",
 ]
 
 [[package]]
@@ -5431,20 +5486,20 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.8.3",
+ "regex-syntax 0.8.4",
 ]
 
 [[package]]
 name = "regex-lite"
-version = "0.1.5"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e"
+checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a"
 
 [[package]]
 name = "regex-syntax"
@@ -5454,9 +5509,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
 
 [[package]]
 name = "reqwest"
@@ -5472,7 +5527,7 @@ dependencies = [
  "h2 0.3.26",
  "http 0.2.12",
  "http-body 0.4.6",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "hyper-tls 0.5.0",
  "ipnet",
  "js-sys",
@@ -5486,7 +5541,7 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_urlencoded",
- "sync_wrapper",
+ "sync_wrapper 0.1.2",
  "system-configuration",
  "tokio",
  "tokio-native-tls",
@@ -5500,23 +5555,24 @@ dependencies = [
 
 [[package]]
 name = "reqwest"
-version = "0.12.3"
+version = "0.12.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19"
+checksum = "c7d6d2a27d57148378eb5e111173f4276ad26340ecc5c49a4a2152167a2d6a37"
 dependencies = [
  "async-compression",
- "base64 0.22.0",
+ "base64 0.22.1",
  "bytes",
  "cookie",
  "cookie_store",
  "encoding_rs",
  "futures-core",
  "futures-util",
- "h2 0.4.4",
+ "h2 0.4.5",
  "http 1.1.0",
  "http-body 1.0.0",
  "http-body-util",
- "hyper 1.2.0",
+ "hyper 1.3.1",
+ "hyper-rustls 0.27.2",
  "hyper-tls 0.6.0",
  "hyper-util",
  "ipnet",
@@ -5531,7 +5587,7 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_urlencoded",
- "sync_wrapper",
+ "sync_wrapper 1.0.1",
  "system-configuration",
  "tokio",
  "tokio-native-tls",
@@ -5593,9 +5649,9 @@ dependencies = [
 
 [[package]]
 name = "rtsp-types"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c5c11e0af63f1ac6057f9029f7ddf1c677bade51e449f75be25c8b29f59474c"
+checksum = "d9eda23daacde59c9e182db0a25e03f51f0108707169c09b4e5d931885470c5c"
 dependencies = [
  "cookie-factory",
  "nom",
@@ -5617,9 +5673,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-demangle"
-version = "0.1.23"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
 
 [[package]]
 name = "rustc_version"
@@ -5656,9 +5712,9 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.32"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
  "bitflags 2.5.0",
  "errno",
@@ -5669,17 +5725,30 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.21.10"
+version = "0.21.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e"
 dependencies = [
  "log",
  "ring",
- "rustls-webpki",
+ "rustls-webpki 0.101.7",
  "sct",
 ]
 
 [[package]]
+name = "rustls"
+version = "0.23.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05cff451f60db80f490f3c182b77c35260baace73209e9cdbbe526bfe3a4d402"
+dependencies = [
+ "once_cell",
+ "rustls-pki-types",
+ "rustls-webpki 0.102.4",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
 name = "rustls-native-certs"
 version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5706,15 +5775,15 @@ version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "rustls-pki-types",
 ]
 
 [[package]]
 name = "rustls-pki-types"
-version = "1.4.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
+checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d"
 
 [[package]]
 name = "rustls-webpki"
@@ -5727,10 +5796,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls-webpki"
+version = "0.102.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e"
+dependencies = [
+ "ring",
+ "rustls-pki-types",
+ "untrusted",
+]
+
+[[package]]
 name = "ryu"
-version = "1.0.17"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "same-file"
@@ -5742,6 +5822,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "scc"
+version = "2.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76ad2bbb0ae5100a07b7a6f2ed7ab5fd0045551a4c507989b7a620046ea3efdc"
+dependencies = [
+ "sdd",
+]
+
+[[package]]
 name = "schannel"
 version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5773,6 +5862,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "sdd"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b84345e4c9bd703274a082fb80caaa99b7612be48dfaa1dd9266577ec412309d"
+
+[[package]]
 name = "sdp-types"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5798,11 +5893,11 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "core-foundation",
  "core-foundation-sys",
  "libc",
@@ -5811,9 +5906,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
+checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -5821,15 +5916,15 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.22"
+version = "1.0.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.203"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094"
 dependencies = [
  "serde_derive",
 ]
@@ -5845,20 +5940,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.203"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.115"
+version = "1.0.117"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
+checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3"
 dependencies = [
  "itoa",
  "ryu",
@@ -5877,9 +5972,9 @@ dependencies = [
 
 [[package]]
 name = "serde_spanned"
-version = "0.6.5"
+version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
+checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0"
 dependencies = [
  "serde",
 ]
@@ -5898,11 +5993,11 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "3.7.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
+checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
  "chrono",
  "hex",
  "indexmap 1.9.3",
@@ -5916,39 +6011,39 @@ dependencies = [
 
 [[package]]
 name = "serde_with_macros"
-version = "3.7.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
+checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
 dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "serial_test"
-version = "3.0.0"
+version = "3.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "953ad9342b3aaca7cb43c45c097dd008d4907070394bd0751a0aa8817e5a018d"
+checksum = "4b4b487fe2acf240a021cf57c6b2b4903b1e78ca0ecd862a71b71d2a51fed77d"
 dependencies = [
- "dashmap",
  "futures",
- "lazy_static",
  "log",
+ "once_cell",
  "parking_lot",
+ "scc",
  "serial_test_derive",
 ]
 
 [[package]]
 name = "serial_test_derive"
-version = "3.0.0"
+version = "3.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212"
+checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6022,9 +6117,9 @@ dependencies = [
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -6087,9 +6182,9 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -6145,6 +6240,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
+name = "strsim"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
+
+[[package]]
 name = "subtle"
 version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6157,15 +6258,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
 dependencies = [
  "proc-macro2",
- "quote",
  "unicode-ident",
 ]
 
 [[package]]
 name = "syn"
-version = "2.0.58"
+version = "2.0.66"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
+checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -6179,6 +6279,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
+name = "sync_wrapper"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394"
+
+[[package]]
 name = "system-configuration"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6257,7 +6363,7 @@ checksum = "7ba277e77219e9eea169e8508942db1bf5d8a41ff2db9b20aab5a5aadc9fa25d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6270,7 +6376,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6287,22 +6393,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6327,9 +6433,9 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.3.34"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
  "itoa",
@@ -6348,9 +6454,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.17"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
 dependencies = [
  "num-conv",
  "time-core",
@@ -6373,9 +6479,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.37.0"
+version = "1.38.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
+checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a"
 dependencies = [
  "backtrace",
  "bytes",
@@ -6385,20 +6491,20 @@ dependencies = [
  "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio-macros",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
+checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6417,7 +6523,18 @@ version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
- "rustls",
+ "rustls 0.21.12",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-rustls"
+version = "0.26.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4"
+dependencies = [
+ "rustls 0.23.10",
+ "rustls-pki-types",
  "tokio",
 ]
 
@@ -6460,35 +6577,34 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.10"
+version = "0.7.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
+checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1"
 dependencies = [
  "bytes",
  "futures-core",
  "futures-sink",
  "pin-project-lite",
  "tokio",
- "tracing",
 ]
 
 [[package]]
 name = "toml"
-version = "0.8.12"
+version = "0.8.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
+checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.22.9",
+ "toml_edit 0.22.14",
 ]
 
 [[package]]
 name = "toml_datetime"
-version = "0.6.5"
+version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf"
 dependencies = [
  "serde",
 ]
@@ -6506,15 +6622,15 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.9"
+version = "0.22.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38"
 dependencies = [
  "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow 0.6.5",
+ "winnow 0.6.13",
 ]
 
 [[package]]
@@ -6530,7 +6646,6 @@ dependencies = [
  "tokio",
  "tower-layer",
  "tower-service",
- "tracing",
 ]
 
 [[package]]
@@ -6565,7 +6680,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
@@ -6655,6 +6770,25 @@ dependencies = [
  "http 1.1.0",
  "httparse",
  "log",
+ "rand",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "tungstenite"
+version = "0.23.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6e2e2ce1e47ed2994fd43b04c8f618008d4cabdd5ee34027cf14f9d918edd9c8"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http 1.1.0",
+ "httparse",
+ "log",
  "native-tls",
  "rand",
  "sha1",
@@ -6707,9 +6841,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-width"
-version = "0.1.11"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d"
 
 [[package]]
 name = "untrusted"
@@ -6719,9 +6853,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "url"
-version = "2.5.0"
+version = "2.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
+checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
 dependencies = [
  "form_urlencoded",
  "idna 0.5.0",
@@ -6751,9 +6885,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
 
 [[package]]
 name = "utf8parse"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
 
 [[package]]
 name = "uuid"
@@ -6824,9 +6958,9 @@ checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
 
 [[package]]
 name = "waker-fn"
-version = "1.1.1"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
+checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
 
 [[package]]
 name = "walkdir"
@@ -6858,7 +6992,7 @@ dependencies = [
  "futures-util",
  "headers 0.3.9",
  "http 0.2.12",
- "hyper 0.14.28",
+ "hyper 0.14.29",
  "log",
  "mime",
  "mime_guess",
@@ -6903,7 +7037,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
  "wasm-bindgen-shared",
 ]
 
@@ -6937,7 +7071,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -6982,11 +7116,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -7001,7 +7135,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -7019,7 +7153,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -7039,17 +7173,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.4",
- "windows_aarch64_msvc 0.52.4",
- "windows_i686_gnu 0.52.4",
- "windows_i686_msvc 0.52.4",
- "windows_x86_64_gnu 0.52.4",
- "windows_x86_64_gnullvm 0.52.4",
- "windows_x86_64_msvc 0.52.4",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -7060,9 +7195,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -7072,9 +7207,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -7084,9 +7219,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.4"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -7096,9 +7237,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -7108,9 +7249,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -7120,9 +7261,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -7132,9 +7273,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winnow"
@@ -7147,9 +7288,9 @@ dependencies = [
 
 [[package]]
 name = "winnow"
-version = "0.6.5"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1"
 dependencies = [
  "memchr",
 ]
@@ -7224,11 +7365,11 @@ dependencies = [
 
 [[package]]
 name = "zerocopy"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087"
 dependencies = [
- "zerocopy-derive 0.7.32",
+ "zerocopy-derive 0.7.34",
 ]
 
 [[package]]
@@ -7239,22 +7380,22 @@ checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.66",
 ]
 
 [[package]]
 name = "zeroize"
-version = "1.7.0"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
diff --git a/pkgs/development/libraries/gstreamer/rs/default.nix b/pkgs/development/libraries/gstreamer/rs/default.nix
index d4afb8ce7618a..187d1a0486979 100644
--- a/pkgs/development/libraries/gstreamer/rs/default.nix
+++ b/pkgs/development/libraries/gstreamer/rs/default.nix
@@ -11,6 +11,7 @@
 , rustc
 , cargo
 , cargo-c
+, lld
 , nasm
 , gstreamer
 , gst-plugins-base
@@ -56,15 +57,15 @@ let
     mp4 = [ ];
 
     # net
-    aws = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+    aws = [ openssl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
     hlssink3 = [ ];
     ndi = [ ];
     onvif = [ pango ];
     raptorq = [ ];
-    reqwest = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+    reqwest = [ openssl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
     rtp = [ ];
-    webrtc = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
-    webrtchttp = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
+    webrtc = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security SystemConfiguration ];
+    webrtchttp = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security SystemConfiguration ];
 
     # text
     textahead = [ ];
@@ -109,9 +110,9 @@ let
     [
       "csound" # tests have weird failure on x86, does not currently work on arm or darwin
       "livesync" # tests have suspicious intermittent failure, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/357
-    ] ++ lib.optionals stdenv.isAarch64 [
+    ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
       "raptorq" # pointer alignment failure in tests on aarch64
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       "reqwest" # tests hang on darwin
       "threadshare" # tests cannot bind to localhost on darwin
       "webp" # not supported on darwin (upstream crate issue)
@@ -143,7 +144,7 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gst-plugins-rs";
-  version = "0.12.4";
+  version = "0.12.8";
 
   outputs = [ "out" "dev" ];
 
@@ -152,7 +153,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "gstreamer";
     repo = "gst-plugins-rs";
     rev = finalAttrs.version;
-    hash = "sha256-Qnp+e1Vww2kWjDG0x2tcigwDdG67I4xnm8+QrBI+o08=";
+    hash = "sha256-AGXKI/0Y2BdaSnpQAt3T/rkYlM8UpQpKm4kMAGd6Dyk=";
     # TODO: temporary workaround for case-insensitivity problems with color-name crate - https://github.com/annymosse/color-name/pull/2
     postFetch = ''
       sedSearch="$(cat <<\EOF | sed -ze 's/\n/\\n/g'
@@ -177,12 +178,12 @@ stdenv.mkDerivation (finalAttrs: {
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "cairo-rs-0.19.3" = "sha256-TjVXdnlYEfPLbUx1pC84rCC2MlNecECMK2Yo9XKwz9M=";
+      "cairo-rs-0.19.8" = "sha256-AdIUcxxuZVAWQ+KOBTrtsvTu4KtFiXkQPYWT9Avt7Z0=";
       "color-name-1.1.0" = "sha256-RfMStbe2wX5qjPARHIFHlSDKjzx8DwJ+RjzyltM5K7A=";
       "ffv1-0.0.0" = "sha256-af2VD00tMf/hkfvrtGrHTjVJqbl+VVpLaR0Ry+2niJE=";
       "flavors-0.2.0" = "sha256-zBa0X75lXnASDBam9Kk6w7K7xuH9fP6rmjWZBUB5hxk=";
-      "gdk4-0.8.1" = "sha256-VPmegFZ/bC8x1vkl3YU208jQ8FCEKLwe6ZDatz4mIvM=";
-      "gstreamer-0.22.4" = "sha256-r5+wOEhTVztDMEu6t47yJ9HIlbXyjdvswUND4l7kPl8=";
+      "gdk4-0.8.2" = "sha256-DZjHlhzrELZ8M5YUM5kSeOphjF7863DmywFgGbZL4Jo=";
+      "gstreamer-0.22.7" = "sha256-vTEDqmyqhj9e7r7N0QfG4uTNBizrU0gTUfLOJ8kU1JE=";
     };
   };
 
@@ -199,10 +200,14 @@ stdenv.mkDerivation (finalAttrs: {
     cargo
     cargo-c'
     nasm
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    lld
   ] ++ lib.optionals enableDocumentation [
     hotdoc
   ];
 
+  env = lib.optionalAttrs stdenv.hostPlatform.isDarwin { NIX_CFLAGS_LINK = "-fuse-ld=lld"; };
+
   buildInputs = [
     gstreamer
     gst-plugins-base
@@ -258,6 +263,6 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs";
     license = with licenses; [ mpl20 asl20 mit lgpl21Plus ];
     platforms = platforms.unix;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
   };
 })
diff --git a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
index db56d895f7876..b6d2b6464e41e 100644
--- a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
+++ b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
@@ -61,6 +61,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ bkchr lilyinstarlight ];
+    maintainers = with maintainers; [ bkchr ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix
index 0b39bad01020b..f6a0ee93d89e0 100644
--- a/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     libmad
     libmpeg2
     x264
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     IOKit
     CoreFoundation
     DiskArbitration
@@ -91,6 +91,6 @@ stdenv.mkDerivation rec {
     '';
     license = if enableGplPlugins then licenses.gpl2Plus else licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ matthewbauer lilyinstarlight ];
+    maintainers = with maintainers; [ matthewbauer ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/vaapi/default.nix b/pkgs/development/libraries/gstreamer/vaapi/default.nix
index cdad2eaf232d9..d7d788787a50f 100644
--- a/pkgs/development/libraries/gstreamer/vaapi/default.nix
+++ b/pkgs/development/libraries/gstreamer/vaapi/default.nix
@@ -8,6 +8,7 @@
 , libva
 , wayland
 , wayland-protocols
+, wayland-scanner
 , libdrm
 , udev
 , xorg
@@ -42,7 +43,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     bzip2
-    wayland
+    wayland-scanner
   ] ++ lib.optionals enableDocumentation [
     hotdoc
   ];
@@ -64,7 +65,7 @@ stdenv.mkDerivation rec {
     xorg.libICE
     nasm
     libvpx
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libGL
     libGLU
   ];
@@ -86,6 +87,6 @@ stdenv.mkDerivation rec {
     homepage = "https://gstreamer.freedesktop.org";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gthree/default.nix b/pkgs/development/libraries/gthree/default.nix
index f8e50f384590e..c94a3ae15d158 100644
--- a/pkgs/development/libraries/gthree/default.nix
+++ b/pkgs/development/libraries/gthree/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
   ];
 
   mesonFlags = [
-    "-Dgtk_doc=${if stdenv.isDarwin then "false" else "true"}"
+    "-Dgtk_doc=${if stdenv.hostPlatform.isDarwin then "false" else "true"}"
     # Data for examples is useless when the example programs are not installed.
     "-Dexamples=false"
   ];
@@ -67,8 +67,8 @@ stdenv.mkDerivation rec {
     description = "GObject/GTK port of three.js";
     homepage = "https://github.com/alexlarsson/gthree";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/gthree.x86_64-darwin
+    broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/gthree.x86_64-darwin
   };
 }
diff --git a/pkgs/development/libraries/gtk-frdp/default.nix b/pkgs/development/libraries/gtk-frdp/default.nix
index b3edf0ba48537..69af8b31872e5 100644
--- a/pkgs/development/libraries/gtk-frdp/default.nix
+++ b/pkgs/development/libraries/gtk-frdp/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     };
   };
 
-  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.hostPlatform.isDarwin [
     "-DTARGET_OS_IPHONE=0"
     "-DTARGET_OS_WATCH=0"
   ]);
diff --git a/pkgs/development/libraries/gtk-layer-shell/default.nix b/pkgs/development/libraries/gtk-layer-shell/default.nix
index f2ce10e589181..c977de1942789 100644
--- a/pkgs/development/libraries/gtk-layer-shell/default.nix
+++ b/pkgs/development/libraries/gtk-layer-shell/default.nix
@@ -16,7 +16,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtk-layer-shell";
-  version = "0.8.2";
+  version = "0.9.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # for demo
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "wmww";
     repo = "gtk-layer-shell";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-8wpfoZcgusJdEbKGZ02UtOOcSogMTNP9Lm+ujo/eKdA=";
+    hash = "sha256-9hQE1NY5QCuj+5R5aSjJ0DaMUQuO7HPpZooj+1+96RY=";
   };
 
   strictDeps = true;
@@ -42,6 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
     gtk-doc
     docbook-xsl-nons
     docbook_xml_dtd_43
+    wayland-scanner
     vala
     wayland-scanner
   ];
diff --git a/pkgs/development/libraries/gtk/2.x.nix b/pkgs/development/libraries/gtk/2.x.nix
index 9d9b855c9da89..cb4b6955dea4b 100644
--- a/pkgs/development/libraries/gtk/2.x.nix
+++ b/pkgs/development/libraries/gtk/2.x.nix
@@ -2,6 +2,7 @@
 , lib
 , stdenv
 , fetchurl
+, fetchpatch
 , atk
 , buildPackages
 , cairo
@@ -24,9 +25,9 @@
 , testers
 , AppKit
 , Cocoa
-, gdktarget ? if stdenv.isDarwin then "quartz" else "x11"
-, cupsSupport ? config.gtk2.cups or stdenv.isLinux
-, xineramaSupport ? stdenv.isLinux
+, gdktarget ? if stdenv.hostPlatform.isDarwin then "quartz" else "x11"
+, cupsSupport ? config.gtk2.cups or stdenv.hostPlatform.isLinux
+, xineramaSupport ? stdenv.hostPlatform.isLinux
 }:
 
 let
@@ -63,7 +64,13 @@ stdenv.mkDerivation (finalAttrs: {
   patches = [
     ./patches/2.0-immodules.cache.patch
     ./patches/gtk2-theme-paths.patch
-  ] ++ lib.optionals stdenv.isDarwin [
+    (fetchpatch {
+      # https://gitlab.gnome.org/GNOME/gtk/-/issues/6786
+      name = "CVE-2024-6655.patch";
+      url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/3bbf0b6176d42836d23c36a6ac410e807ec0a7a7.patch";
+      hash = "sha256-mstOPk9NNpUwScrdEbvGhmAv8jlds3SBdj53T0q33vM=";
+    })
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ./patches/2.0-gnome_bugzilla_557780_306776_freeciv_darwin.patch
     ./patches/2.0-darwin-x11.patch
     # Fixes an incompatible function pointer conversion and implicit int errors with clang 16.
@@ -76,7 +83,7 @@ stdenv.mkDerivation (finalAttrs: {
     gdk-pixbuf
     glib
     pango
-  ] ++ lib.optionals (stdenv.isLinux || stdenv.isDarwin) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isDarwin) [
     libXcomposite
     libXcursor
     libXi
@@ -84,14 +91,14 @@ stdenv.mkDerivation (finalAttrs: {
     libXrender
   ] ++ lib.optional xineramaSupport libXinerama
   ++ lib.optional cupsSupport cups
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libXdamage
     AppKit
     Cocoa
   ];
 
   preConfigure =
-    lib.optionalString (stdenv.isDarwin
+    lib.optionalString (stdenv.hostPlatform.isDarwin
                         && lib.versionAtLeast
                           stdenv.hostPlatform.darwinMinVersion "11")
       "MACOSX_DEPLOYMENT_TARGET=10.16";
@@ -100,7 +107,7 @@ stdenv.mkDerivation (finalAttrs: {
     "--sysconfdir=/etc"
     "--with-gdktarget=${gdktarget}"
     "--with-xinput=yes"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--disable-glibtest"
     "--disable-introspection"
     "--disable-visibility"
diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix
index f194dee9c9ec8..7f3717c8a5254 100644
--- a/pkgs/development/libraries/gtk/3.x.nix
+++ b/pkgs/development/libraries/gtk/3.x.nix
@@ -30,19 +30,18 @@
 , libepoxy
 , libxkbcommon
 , libxml2
-, gmp
 , gnome
 , gsettings-desktop-schemas
 , sassc
-, trackerSupport ? stdenv.isLinux && (stdenv.buildPlatform == stdenv.hostPlatform)
+, trackerSupport ? stdenv.hostPlatform.isLinux && (stdenv.buildPlatform == stdenv.hostPlatform)
 , tracker
-, x11Support ? stdenv.isLinux
-, waylandSupport ? stdenv.isLinux
+, x11Support ? stdenv.hostPlatform.isLinux
+, waylandSupport ? stdenv.hostPlatform.isLinux
 , libGL
 , wayland
 , wayland-protocols
-, xineramaSupport ? stdenv.isLinux
-, cupsSupport ? stdenv.isLinux
+, xineramaSupport ? stdenv.hostPlatform.isLinux
+, cupsSupport ? stdenv.hostPlatform.isLinux
 , cups
 , AppKit
 , Cocoa
@@ -64,7 +63,7 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtk+3";
-  version = "3.24.42";
+  version = "3.24.43";
 
   outputs = [ "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
   outputBin = "dev";
@@ -78,13 +77,13 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) version;
   in fetchurl {
     url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz";
-    sha256 = "sha256-UPifYVCS1N0Bu9dZcZ+L04Dl8Un2/XipRyXi3hEjd+I=";
+    hash = "sha256-fgTwZIUVA0uAa3SuXXdNh8/7GiqWxGjLW+R21Rvy88c=";
   };
 
   patches = [
     ./patches/3.0-immodules.cache.patch
     ./patches/3.0-Xft-setting-fallback-compute-DPI-properly.patch
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # X11 module requires <gio/gdesktopappinfo.h> which is not installed on Darwin
     # let’s drop that dependency in similar way to how other parts of the library do it
     # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33
@@ -121,7 +120,7 @@ stdenv.mkDerivation (finalAttrs: {
     libxkbcommon
     (libepoxy.override { inherit x11Support; })
     isocodes
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     AppKit
   ] ++ lib.optionals trackerSupport [
     tracker
@@ -147,7 +146,7 @@ stdenv.mkDerivation (finalAttrs: {
     libXrandr
     libXrender
     pango
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # explicitly propagated, always needed
     Cocoa
     QuartzCore
@@ -167,13 +166,13 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dtracker3=${lib.boolToString trackerSupport}"
     "-Dbroadway_backend=${lib.boolToString broadwaySupport}"
     "-Dx11_backend=${lib.boolToString x11Support}"
-    "-Dquartz_backend=${lib.boolToString (stdenv.isDarwin && !x11Support)}"
+    "-Dquartz_backend=${lib.boolToString (stdenv.hostPlatform.isDarwin && !x11Support)}"
     "-Dintrospection=${lib.boolToString withIntrospection}"
   ];
 
   doCheck = false; # needs X11
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   # These are the defines that'd you'd get with --enable-debug=minimum (default).
   # See: https://developer.gnome.org/gtk3/stable/gtk-building.html#extra-configuration-options
@@ -203,7 +202,7 @@ stdenv.mkDerivation (finalAttrs: {
     patchShebangs ''${files[@]}
   '';
 
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     # The updater is needed for nixos env and it's tiny.
     moveToOutput bin/gtk-update-icon-cache "$out"
     # Launcher
@@ -220,14 +219,14 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   # Wrap demos
-  postFixup =  lib.optionalString (!stdenv.isDarwin) ''
+  postFixup =  lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     demos=(gtk3-demo gtk3-demo-application gtk3-icon-browser gtk3-widget-factory)
 
     for program in ''${demos[@]}; do
       wrapProgram $dev/bin/$program \
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/${finalAttrs.pname}-${finalAttrs.version}"
     done
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     # a comment created a cycle between outputs
     sed '/^# ModulesPath =/d' -i "$out"/lib/gtk-*/*/immodules.cache
   '';
diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix
index dfd09e5dc6c45..8b3ef020bd280 100644
--- a/pkgs/development/libraries/gtk/4.x.nix
+++ b/pkgs/development/libraries/gtk/4.x.nix
@@ -17,7 +17,6 @@
 , glib
 , cairo
 , pango
-, pandoc
 , gdk-pixbuf
 , gobject-introspection
 , fribidi
@@ -33,13 +32,13 @@
 , gsettings-desktop-schemas
 , gst_all_1
 , sassc
-, trackerSupport ? stdenv.isLinux
+, trackerSupport ? stdenv.hostPlatform.isLinux
 , tracker
-, x11Support ? stdenv.isLinux
-, waylandSupport ? stdenv.isLinux
+, x11Support ? stdenv.hostPlatform.isLinux
+, waylandSupport ? stdenv.hostPlatform.isLinux
 , libGL
 # experimental and can cause crashes in inspector
-, vulkanSupport ? stdenv.isLinux
+, vulkanSupport ? stdenv.hostPlatform.isLinux
 , shaderc
 , vulkan-loader
 , vulkan-headers
@@ -47,8 +46,8 @@
 , wayland
 , wayland-protocols
 , wayland-scanner
-, xineramaSupport ? stdenv.isLinux
-, cupsSupport ? stdenv.isLinux
+, xineramaSupport ? stdenv.hostPlatform.isLinux
+, cupsSupport ? stdenv.hostPlatform.isLinux
 , compileSchemas ? stdenv.hostPlatform.emulatorAvailable buildPackages
 , cups
 , AppKit
@@ -70,7 +69,7 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtk4";
-  version = "4.14.4";
+  version = "4.14.5";
 
   outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
   outputBin = "dev";
@@ -82,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = with finalAttrs; "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
-    hash = "sha256-RDUYuX6DSPn2QwrENbEBD5psUgf03Gp81dJOOCDO5jM=";
+    hash = "sha256-VUfyufAGsTOZPgcLh8F4BOBR79o5E/6soRCPor5B4k0=";
   };
 
   depsBuildBuild = [
@@ -131,7 +130,7 @@ stdenv.mkDerivation (finalAttrs: {
     libXi
     libXrandr
     libXrender
-  ]) ++ lib.optionals stdenv.isDarwin [
+  ]) ++ lib.optionals stdenv.hostPlatform.isDarwin [
     AppKit
   ] ++ lib.optionals trackerSupport [
     tracker
@@ -143,7 +142,7 @@ stdenv.mkDerivation (finalAttrs: {
     xorg.libXinerama
   ] ++ lib.optionals cupsSupport [
     cups
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Cocoa
   ] ++ lib.optionals stdenv.hostPlatform.isMusl [
     libexecinfo
@@ -176,13 +175,13 @@ stdenv.mkDerivation (finalAttrs: {
     (lib.mesonEnable "vulkan" vulkanSupport)
     (lib.mesonEnable "print-cups" cupsSupport)
     (lib.mesonBool "x11-backend" x11Support)
-  ] ++ lib.optionals (stdenv.isDarwin && !stdenv.isAarch64) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && !stdenv.hostPlatform.isAarch64) [
     "-Dmedia-gstreamer=disabled" # requires gstreamer-gl
   ];
 
   doCheck = false; # needs X11
 
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   # These are the defines that'd you'd get with --enable-debug=minimum (default).
   # See: https://developer.gnome.org/gtk3/stable/gtk-building.html#extra-configuration-options
@@ -219,7 +218,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   postInstall = ''
     PATH="$OLD_PATH"
-  '' + lib.optionalString (!stdenv.isDarwin) ''
+  '' + lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     # The updater is needed for nixos env and it's tiny.
     moveToOutput bin/gtk4-update-icon-cache "$out"
     # Launcher
@@ -235,7 +234,7 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   # Wrap demos
-  postFixup =  lib.optionalString (!stdenv.isDarwin) ''
+  postFixup =  lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     demos=(gtk4-demo gtk4-demo-application gtk4-icon-browser gtk4-widget-factory)
 
     for program in ''${demos[@]}; do
diff --git a/pkgs/development/libraries/gtk4-layer-shell/default.nix b/pkgs/development/libraries/gtk4-layer-shell/default.nix
index 067bbad8dd247..14df22925dc0f 100644
--- a/pkgs/development/libraries/gtk4-layer-shell/default.nix
+++ b/pkgs/development/libraries/gtk4-layer-shell/default.nix
@@ -7,6 +7,7 @@
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_43
+, wayland-protocols
 , wayland-scanner
 , wayland
 , gtk4
@@ -16,7 +17,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtk4-layer-shell";
-  version = "1.0.2";
+  version = "1.0.3";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc";
@@ -25,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "wmww";
     repo = "gtk4-layer-shell";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-decjPkFkYy7kIjyozsB7BEmw33wzq1EQyIBrxO36984=";
+    hash = "sha256-oGtU1H1waA8ZAjaLMdb+x0KIIwgjhdn38ra/eFVWfFI=";
   };
 
   strictDeps = true;
@@ -44,6 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
     docbook_xml_dtd_43
     vala
     wayland-scanner
+    wayland-protocols
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/gtkd/default.nix b/pkgs/development/libraries/gtkd/default.nix
index d773434b8323f..faba68ede1482 100644
--- a/pkgs/development/libraries/gtkd/default.nix
+++ b/pkgs/development/libraries/gtkd/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, atk, cairo, dcompiler, gdk-pixbuf, gnome, gst_all_1, librsvg
+{ lib, stdenv, fetchzip, atk, cairo, dcompiler, gdk-pixbuf, gst_all_1, librsvg
 , glib, gtk3, gtksourceview4, libgda, libpeas, pango, pkg-config, which, vte }:
 
 let
diff --git a/pkgs/development/libraries/gtkmm/4.x.nix b/pkgs/development/libraries/gtkmm/4.x.nix
index 36ff98d9f1654..64ec9e9ac2c9f 100644
--- a/pkgs/development/libraries/gtkmm/4.x.nix
+++ b/pkgs/development/libraries/gtkmm/4.x.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     pangomm_2_48
   ];
 
-  nativeCheckInputs = lib.optionals (!stdenv.isDarwin)[
+  nativeCheckInputs = lib.optionals (!stdenv.hostPlatform.isDarwin)[
     xvfb-run
   ];
 
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
   checkPhase = ''
     runHook preCheck
 
-    ${lib.optionalString (!stdenv.isDarwin) "xvfb-run -s '-screen 0 800x600x24'"} \
+    ${lib.optionalString (!stdenv.hostPlatform.isDarwin) "xvfb-run -s '-screen 0 800x600x24'"} \
       meson test --print-errorlogs
 
     runHook postCheck
diff --git a/pkgs/development/libraries/gtksourceview/3.x.nix b/pkgs/development/libraries/gtksourceview/3.x.nix
index fb5c72e8b34da..41999f5538268 100644
--- a/pkgs/development/libraries/gtksourceview/3.x.nix
+++ b/pkgs/development/libraries/gtksourceview/3.x.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   enableParallelBuilding = true;
 
-  doCheck = stdenv.isLinux;
+  doCheck = stdenv.hostPlatform.isLinux;
   checkPhase = ''
     NO_AT_BRIDGE=1 \
     XDG_DATA_DIRS="$XDG_DATA_DIRS:${shared-mime-info}/share" \
diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix
index d4ac1e9bb09f1..a57881ff55328 100644
--- a/pkgs/development/libraries/gtksourceview/5.x.nix
+++ b/pkgs/development/libraries/gtksourceview/5.x.nix
@@ -40,6 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
     ./4.x-nix_share_path.patch
   ];
 
+  # The 10.12 SDK used by x86_64-darwin requires defining `_POSIX_C_SOURCE` to use `strnlen`.
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) "-D_POSIX_C_SOURCE=200809L";
+
   nativeBuildInputs = [
     meson
     ninja
@@ -76,7 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Ddocumentation=true"
   ];
 
-  doCheck = stdenv.isLinux;
+  doCheck = stdenv.hostPlatform.isLinux;
 
   checkPhase = ''
     runHook preCheck
@@ -113,7 +116,5 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = platforms.unix;
     license = licenses.lgpl21Plus;
     maintainers = teams.gnome.members;
-    # https://hydra.nixos.org/build/258191535/nixlog/1
-    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 })
diff --git a/pkgs/development/libraries/gtkspell/3.nix b/pkgs/development/libraries/gtkspell/3.nix
index 3c7a6a3b3b23b..7e75108b1a3ec 100644
--- a/pkgs/development/libraries/gtkspell/3.nix
+++ b/pkgs/development/libraries/gtkspell/3.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "Word-processor-style highlighting GtkTextView widget";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/gts/default.nix b/pkgs/development/libraries/gts/default.nix
index 5aa8aca6ffb3d..9586c3be7b784 100644
--- a/pkgs/development/libraries/gts/default.nix
+++ b/pkgs/development/libraries/gts/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       3D surfaces meshed with interconnected triangles.
     '';
 
-    maintainers = [ lib.maintainers.viric ];
+    maintainers = [ ];
     platforms = lib.platforms.linux ++ lib.platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/gupnp/default.nix b/pkgs/development/libraries/gupnp/default.nix
index 08b2925b0ea3b..5fa0df314274a 100644
--- a/pkgs/development/libraries/gupnp/default.nix
+++ b/pkgs/development/libraries/gupnp/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
   ];
 
   # Bail out! ERROR:../tests/test-bugs.c:168:test_on_timeout: code should not be reached
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   passthru = {
     updateScript = gnome.updateScript {
diff --git a/pkgs/development/libraries/gusb/default.nix b/pkgs/development/libraries/gusb/default.nix
index 27f9174c444d9..3e75bdecaecd2 100644
--- a/pkgs/development/libraries/gusb/default.nix
+++ b/pkgs/development/libraries/gusb/default.nix
@@ -76,7 +76,6 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
-    ls -la "$out/share/doc"
     moveToOutput "share/doc" "$devdoc"
   '';
 
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index d60f95c548391..4b4da283dd897 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -8,7 +8,7 @@
 , gettext
 , dbus
 , glib
-, udevSupport ? stdenv.isLinux
+, udevSupport ? stdenv.hostPlatform.isLinux
 , libgudev
 , udisks2
 , libgcrypt
@@ -41,17 +41,16 @@
 , libgdata
 , libmsgraph
 , python3
-, python3Packages
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gvfs";
-  version = "1.54.1";
+  version = "1.54.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gvfs/${lib.versions.majorMinor finalAttrs.version}/gvfs-${finalAttrs.version}.tar.xz";
-    hash = "sha256-rEo7zLf+FQIVjvD95cl5q0RxJVfQKKjk8wop8PvZ0Z8=";
+    hash = "sha256-VJCPThC18cIx6QMwyMFbfyHyu2EPGUwDSzOON5xQjjw=";
   };
 
   patches = [
@@ -137,7 +136,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   doCheck = false; # fails with "ModuleNotFoundError: No module named 'gi'"
-  doInstallCheck = finalAttrs.doCheck;
+  doInstallCheck = finalAttrs.finalPackage.doCheck;
 
   separateDebugInfo = true;
 
diff --git a/pkgs/development/libraries/gvm-libs/default.nix b/pkgs/development/libraries/gvm-libs/default.nix
index e8cae3fa727bf..c3e5e278b5905 100644
--- a/pkgs/development/libraries/gvm-libs/default.nix
+++ b/pkgs/development/libraries/gvm-libs/default.nix
@@ -25,15 +25,19 @@
 
 stdenv.mkDerivation rec {
   pname = "gvm-libs";
-  version = "22.8.0";
+  version = "22.11.0";
 
   src = fetchFromGitHub {
     owner = "greenbone";
     repo = "gvm-libs";
     rev = "refs/tags/v${version}";
-    hash = "sha256-nFqYpt9OWEPgSbaNsHLhs9mg7ChQcmfcgHh7nFfQh18=";
+    hash = "sha256-VYFAy6VVASNOBLs39qukePYr5pV0IR1qjztv+veNCVc=";
   };
 
+  postPatch = ''
+    substituteInPlace CMakeLists.txt --replace-fail "-Werror" ""
+  '';
+
   nativeBuildInputs = [
     cmake
     doxygen
diff --git a/pkgs/development/libraries/hamlib/4.nix b/pkgs/development/libraries/hamlib/4.nix
index 8fde56729e837..168a0477b2f84 100644
--- a/pkgs/development/libraries/hamlib/4.nix
+++ b/pkgs/development/libraries/hamlib/4.nix
@@ -5,7 +5,7 @@
 , swig
 , gd
 , ncurses
-, python3
+, python311
 , libxml2
 , tcl
 , libusb-compat-0_1
@@ -17,7 +17,9 @@
 , tclBindings ? true
 , perlBindings ? true
 }:
-
+let
+  python3 = python311; # needs distutils and imp
+in
 stdenv.mkDerivation rec {
   pname = "hamlib";
   version = "4.5.5";
diff --git a/pkgs/development/libraries/hamlib/default.nix b/pkgs/development/libraries/hamlib/default.nix
index 9250a66c219e2..2089050552e7e 100644
--- a/pkgs/development/libraries/hamlib/default.nix
+++ b/pkgs/development/libraries/hamlib/default.nix
@@ -5,20 +5,21 @@
 , swig
 , gd
 , ncurses
-, python3
+, python311
 , libxml2
 , tcl
 , libusb-compat-0_1
 , pkg-config
 , boost
 , libtool
-, perlPackages
 , pythonBindings ? true
 , tclBindings ? true
 , perlBindings ? stdenv.buildPlatform == stdenv.hostPlatform
 , buildPackages
 }:
-
+let
+  python3 = python311; # needs distutils and imp
+in
 stdenv.mkDerivation rec {
   pname = "hamlib";
   version = "3.3";
diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
index 657ea82f0b85b..15208becc301a 100644
--- a/pkgs/development/libraries/harfbuzz/default.nix
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -33,16 +33,16 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "harfbuzz${lib.optionalString withIcu "-icu"}";
-  version = "8.4.0";
+  version = "9.0.0";
 
   src = fetchurl {
     url = "https://github.com/harfbuzz/harfbuzz/releases/download/${finalAttrs.version}/harfbuzz-${finalAttrs.version}.tar.xz";
-    hash = "sha256-r06nPiWrdIyMBjt4wviOSIM9ubKsNp4pvRFXAueJdV4=";
+    hash = "sha256-pBsnLO65IMVyY+yFFgRULZ7IXuMDBQbZRmIGfHtquJ4=";
   };
 
   postPatch = ''
     patchShebangs src/*.py test
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     # ApplicationServices.framework headers have cast-align warnings.
     substituteInPlace src/hb.hh \
       --replace '#pragma GCC diagnostic error   "-Wcast-align"' ""
@@ -94,7 +94,7 @@ stdenv.mkDerivation (finalAttrs: {
   postFixup = lib.optionalString withIcu ''
     rm "$out"/lib/libharfbuzz.* "$dev/lib/pkgconfig/harfbuzz.pc"
     ln -s {'${harfbuzz.dev}',"$dev"}/lib/pkgconfig/harfbuzz.pc
-    ${lib.optionalString stdenv.isDarwin ''
+    ${lib.optionalString stdenv.hostPlatform.isDarwin ''
       ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.dylib
       ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.0.dylib
     ''}
@@ -112,7 +112,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "OpenType text shaping engine";
     homepage = "https://harfbuzz.github.io/";
     changelog = "https://github.com/harfbuzz/harfbuzz/raw/${finalAttrs.version}/NEWS";
-    maintainers = [ maintainers.eelco ];
+    maintainers = [ ];
     license = licenses.mit;
     platforms = platforms.unix ++ platforms.windows;
     pkgConfigModules = [
diff --git a/pkgs/development/libraries/hax11/default.nix b/pkgs/development/libraries/hax11/default.nix
deleted file mode 100644
index fba0a560e9931..0000000000000
--- a/pkgs/development/libraries/hax11/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib
-, multiStdenv
-, fetchFromGitHub
-, libX11
-, libXxf86vm
-, xorgproto
-, unstableGitUpdater
-}:
-
-multiStdenv.mkDerivation (finalAttrs: {
-  pname = "hax11";
-  version = "0-unstable-2023-09-25";
-
-  src = fetchFromGitHub {
-    owner = "CyberShadow";
-    repo = "hax11";
-    rev = "2ea9d469785bbe0338729c4deeb902a259fd7b10";
-    hash = "sha256-bYuIngZ76m5IgbbTFTZ8LJmpHl4nHS272Ci1B9eJIws=";
-  };
-
-  outputs = [ "out" "doc" ];
-
-  buildInputs = [
-    libX11
-    libXxf86vm
-    xorgproto
-  ];
-
-  installPhase = ''
-    runHook preInstall
-
-    install -Dm644 lib32/hax11.so -t $out/lib32/
-    install -Dm644 lib64/hax11.so -t $out/lib64/
-    install -Dm644 README.md -t $doc/share/doc/hax11/
-
-    runHook postInstall
-  '';
-
-  passthru = {
-    updateScript = unstableGitUpdater { };
-  };
-
-  meta = {
-    homepage = "https://github.com/CyberShadow/hax11";
-    description = "Hackbrary to Hook and Augment X11 protocol calls";
-    license = with lib.licenses; [ mit ];
-    maintainers = with lib.maintainers; [ AndersonTorres cybershadow ];
-    platforms = lib.platforms.linux;
-  };
-})
diff --git a/pkgs/development/libraries/hfst-ospell/default.nix b/pkgs/development/libraries/hfst-ospell/default.nix
index f0a0bc6bef48a..823bcbbe8c08e 100644
--- a/pkgs/development/libraries/hfst-ospell/default.nix
+++ b/pkgs/development/libraries/hfst-ospell/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = with lib; {
     homepage = "https://github.com/hfst/hfst-ospell/";
-    description = "HFST spell checker library and command line tool ";
+    description = "HFST spell checker library and command line tool";
     license = licenses.asl20;
     maintainers = with maintainers; [ lurkki ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/hidapi/default.nix b/pkgs/development/libraries/hidapi/default.nix
index dfba7f4e11710..6e537e8b74fbd 100644
--- a/pkgs/development/libraries/hidapi/default.nix
+++ b/pkgs/development/libraries/hidapi/default.nix
@@ -17,17 +17,17 @@ stdenv.mkDerivation (finalAttrs: {
   src = fetchFromGitHub {
     owner = "libusb";
     repo = "hidapi";
-    rev = "${finalAttrs.pname}-${finalAttrs.version}";
+    rev = "hidapi-${finalAttrs.version}";
     sha256 = "sha256-p3uzBq5VxxQbVuy1lEHEEQdxXwnhQgJDIyAAWjVWNIg=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = lib.optionals stdenv.isLinux [ libusb1 udev ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libusb1 udev ];
 
   enableParallelBuilding = true;
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ Cocoa IOKit ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa IOKit ];
 
   passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
 
@@ -37,12 +37,12 @@ stdenv.mkDerivation (finalAttrs: {
     maintainers = with maintainers; [ prusnak ];
     # You can choose between GPLv3, BSD or HIDAPI license (even more liberal)
     license = with licenses; [ bsd3 /* or */ gpl3Only ] ;
-    pkgConfigModules = lib.optionals stdenv.isDarwin [
+    pkgConfigModules = lib.optionals stdenv.hostPlatform.isDarwin [
       "hidapi"
-    ] ++ lib.optionals stdenv.isLinux [
+    ] ++ lib.optionals stdenv.hostPlatform.isLinux [
       "hidapi-hidraw"
       "hidapi-libusb"
     ];
-    platforms = platforms.unix;
+    platforms = platforms.unix ++ platforms.windows;
   };
 })
diff --git a/pkgs/development/libraries/highfive/default.nix b/pkgs/development/libraries/highfive/default.nix
index 364c99fa29234..5ee46c698fe90 100644
--- a/pkgs/development/libraries/highfive/default.nix
+++ b/pkgs/development/libraries/highfive/default.nix
@@ -12,13 +12,13 @@ assert mpiSupport -> mpi != null;
 
 stdenv.mkDerivation rec {
   pname = "highfive${lib.optionalString mpiSupport "-mpi"}";
-  version = "2.9.0";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     owner = "BlueBrain";
     repo = "HighFive";
     rev = "v${version}";
-    sha256 = "sha256-4n7J0qf4josYVsbVF4u+NLdecpA9gqHXCfibr0QfyJ4=";
+    sha256 = "sha256-0ACT899G+CCc08UFsSC8SnUEZR2mrpQbqXW9FklRAjU=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/hiredis/default.nix b/pkgs/development/libraries/hiredis/default.nix
index fe9442b7d80d0..68c2dc209514e 100644
--- a/pkgs/development/libraries/hiredis/default.nix
+++ b/pkgs/development/libraries/hiredis/default.nix
@@ -3,7 +3,6 @@
 stdenv.mkDerivation rec {
   pname = "hiredis";
   version = "1.2.0";
-  nativeBuildInputs = [openssl];
 
   src = fetchFromGitHub {
     owner = "redis";
@@ -12,6 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ZxUITm3OcbERcvaNqGQU46bEfV+jN6safPalG0TVfBg=";
   };
 
+  buildInputs = [
+    openssl
+  ];
+
   PREFIX = "\${out}";
   USE_SSL = 1;
 
diff --git a/pkgs/development/libraries/hivex/default.nix b/pkgs/development/libraries/hivex/default.nix
index d8e320a44c190..c85790408bddd 100644
--- a/pkgs/development/libraries/hivex/default.nix
+++ b/pkgs/development/libraries/hivex/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     libxml2
   ]
   ++ (with perlPackages; [ perl IOStringy ])
-  ++ lib.optionals stdenv.isDarwin [ libintl ];
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ libintl ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/hmat-oss/default.nix b/pkgs/development/libraries/hmat-oss/default.nix
index 7aca6227e81bc..0981ff2f82140 100644
--- a/pkgs/development/libraries/hmat-oss/default.nix
+++ b/pkgs/development/libraries/hmat-oss/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hmat-oss";
-  version = "1.9.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "jeromerobert";
     repo = "hmat-oss";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-JW6zghoYnF7NcAuAACgTQoxANEnmwjUAB8jCpof7Ums=";
+    sha256 = "sha256-GnFlvZCEzSCcBVLjFWLe+AKXVA6UMs/gycrOJ2TBqrE=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/hnswlib/default.nix b/pkgs/development/libraries/hnswlib/default.nix
index 4c5e462377604..59cd69f9629e4 100644
--- a/pkgs/development/libraries/hnswlib/default.nix
+++ b/pkgs/development/libraries/hnswlib/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     description = "Header-only C++/python library for fast approximate nearest neighbors";
     homepage = "https://github.com/nmslib/hnswlib";
-    changelog = "https://github.com/nmslib/hnswlib/releases/tag/${finalAttrs.src.rev}";
+    changelog = "https://github.com/nmslib/hnswlib/releases/tag/${lib.removePrefix "refs/tags/" finalAttrs.src.rev}";
     license = licenses.asl20;
     maintainers = with maintainers; [ natsukium ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/hpp-fcl/default.nix b/pkgs/development/libraries/hpp-fcl/default.nix
deleted file mode 100644
index 024461046f461..0000000000000
--- a/pkgs/development/libraries/hpp-fcl/default.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, doxygen
-, boost
-, eigen
-, assimp
-, octomap
-, qhull
-, pythonSupport ? false
-, python3Packages
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "hpp-fcl";
-  version = "2.4.4";
-
-  src = fetchFromGitHub {
-    owner = "humanoid-path-planner";
-    repo = finalAttrs.pname;
-    rev = "v${finalAttrs.version}";
-    fetchSubmodules = true;
-    hash = "sha256-BwS9RSirdlD6Cqwp7KD59dkh2WsJVwdlH9LzM2AFjI4=";
-  };
-
-  strictDeps = true;
-
-  nativeBuildInputs = [
-    cmake
-    doxygen
-  ];
-
-  propagatedBuildInputs = [
-    assimp
-    qhull
-    octomap
-  ] ++ lib.optionals (!pythonSupport) [
-    boost
-    eigen
-  ] ++ lib.optionals pythonSupport [
-    python3Packages.boost
-    python3Packages.eigenpy
-  ];
-
-  cmakeFlags = [
-    "-DHPP_FCL_HAS_QHULL=ON"
-    "-DINSTALL_DOCUMENTATION=ON"
-  ] ++ lib.optionals (!pythonSupport) [
-    "-DBUILD_PYTHON_INTERFACE=OFF"
-  ];
-
-  doCheck = true;
-  pythonImportsCheck = lib.optionals (!pythonSupport) [
-    "hppfcl"
-  ];
-
-  outputs = [ "dev" "out" "doc" ];
-  postFixup = ''
-    moveToOutput share/ament_index "$dev"
-    moveToOutput share/${finalAttrs.pname} "$dev"
-  '';
-
-
-  meta = with lib; {
-    description = "Extension of the Flexible Collision Library";
-    homepage = "https://github.com/humanoid-path-planner/hpp-fcl";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ nim65s ];
-    platforms = platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/hpx/default.nix b/pkgs/development/libraries/hpx/default.nix
index cef877d286a62..843fc1991f279 100644
--- a/pkgs/development/libraries/hpx/default.nix
+++ b/pkgs/development/libraries/hpx/default.nix
@@ -6,7 +6,6 @@
 , cmake
 , hwloc
 , gperftools
-, ninja
 , pkg-config
 , python3
 }:
diff --git a/pkgs/development/libraries/http-parser/default.nix b/pkgs/development/libraries/http-parser/default.nix
index 6ba2b8fc1ace7..69cf2ab210dd4 100644
--- a/pkgs/development/libraries/http-parser/default.nix
+++ b/pkgs/development/libraries/http-parser/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./enable-static-shared.patch
-  ] ++ lib.optionals stdenv.isAarch32 [
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch32 [
     # https://github.com/nodejs/http-parser/pull/510
     (fetchpatch {
       url = "https://github.com/nodejs/http-parser/commit/4f15b7d510dc7c6361a26a7c6d2f7c3a17f8d878.patch";
diff --git a/pkgs/development/libraries/httplib/default.nix b/pkgs/development/libraries/httplib/default.nix
index 95c15fdc610af..eb733b4df17be 100644
--- a/pkgs/development/libraries/httplib/default.nix
+++ b/pkgs/development/libraries/httplib/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "httplib";
-  version = "0.16.0";
+  version = "0.17.3";
 
   src = fetchFromGitHub {
     owner = "yhirose";
     repo = "cpp-httplib";
     rev = "v${version}";
-    hash = "sha256-1w7uu2E4YIcGWNq//BZ2wtDKj9/tgmIhkJgadvCKmVg=";
+    hash = "sha256-yvaPIbRqJGkiob3Nrv3H1ieFAC5b+h1tTncJWTy4dmk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/hunspell/default.nix b/pkgs/development/libraries/hunspell/default.nix
index 2f48bd668de47..4e704a4859132 100644
--- a/pkgs/development/libraries/hunspell/default.nix
+++ b/pkgs/development/libraries/hunspell/default.nix
@@ -55,6 +55,6 @@ stdenv.mkDerivation rec {
     '';
     platforms = platforms.all;
     license = with licenses; [ gpl2 lgpl21 mpl11 ];
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/hunspell/dictionaries.nix b/pkgs/development/libraries/hunspell/dictionaries.nix
index 6b6640ddfb712..c26f6d3aa7157 100644
--- a/pkgs/development/libraries/hunspell/dictionaries.nix
+++ b/pkgs/development/libraries/hunspell/dictionaries.nix
@@ -1021,4 +1021,15 @@ rec {
       platforms = platforms.all;
     };
   };
+
+  /* GREEK */
+
+  el_GR = el-gr;
+  el-gr = mkDictFromLibreOffice {
+    shortName = "el-gr";
+    dictFileName = "el_GR";
+    shortDescription = "Greek (Greece)";
+    readmeFile = "README_el_GR.txt";
+    license = with lib.licenses; [ mpl11 gpl2 lgpl21 ];
+  };
 }
diff --git a/pkgs/development/libraries/hwloc/default.nix b/pkgs/development/libraries/hwloc/default.nix
index 38550115bfb01..f71fa4aca81f7 100644
--- a/pkgs/development/libraries/hwloc/default.nix
+++ b/pkgs/development/libraries/hwloc/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "hwloc";
-  version = "2.11.0";
+  version = "2.11.1";
 
   src = fetchurl {
     url = "https://www.open-mpi.org/software/hwloc/v${lib.versions.majorMinor version}/downloads/hwloc-${version}.tar.bz2";
-    sha256 = "sha256-A5A7h8rV23K9APeSbWpTdEsQxcaiOMa2hRDn3BVg5Pk=";
+    sha256 = "sha256-BM37/60iXOFfZhhPD0FBMn2r8ojRCouE0T9Rest4cMY=";
   };
 
   configureFlags = [
@@ -27,15 +27,15 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ expat ncurses ]
     ++ lib.optionals x11Support [ cairo libX11 ]
-    ++ lib.optionals stdenv.isLinux [ numactl ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ numactl ]
     ++ lib.optionals enableCuda [ cudaPackages.cuda_cudart ];
 
   # Since `libpci' appears in `hwloc.pc', it must be propagated.
-  propagatedBuildInputs = lib.optional stdenv.isLinux pciutils;
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isLinux pciutils;
 
   enableParallelBuilding = true;
 
-  postInstall = lib.optionalString stdenv.isLinux ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
     if [ -d "${numactl}/lib64" ]; then
       numalibdir="${numactl}/lib64"
     else
diff --git a/pkgs/development/libraries/hyperscan/default.nix b/pkgs/development/libraries/hyperscan/default.nix
index 0b9765dac4cf1..cdb578ba08d55 100644
--- a/pkgs/development/libraries/hyperscan/default.nix
+++ b/pkgs/development/libraries/hyperscan/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
   cmakeFlags = [
     "-DBUILD_AVX512=ON"
   ]
-  ++ lib.optional (!stdenv.isDarwin) "-DFAT_RUNTIME=ON"
+  ++ lib.optional (!stdenv.hostPlatform.isDarwin) "-DFAT_RUNTIME=ON"
   ++ lib.optional (withStatic) "-DBUILD_STATIC_AND_SHARED=ON"
   ++ lib.optional (!withStatic) "-DBUILD_SHARED_LIBS=ON";
 
diff --git a/pkgs/development/libraries/hyphen/default.nix b/pkgs/development/libraries/hyphen/default.nix
index 2759ad9af7374..85bee97a76d55 100644
--- a/pkgs/development/libraries/hyphen/default.nix
+++ b/pkgs/development/libraries/hyphen/default.nix
@@ -17,6 +17,18 @@ in stdenv.mkDerivation rec {
     sha256 = "01ap9pr6zzzbp4ky0vy7i1983fwyqy27pl0ld55s30fdxka3ciih";
   };
 
+  # Do not install the en_US dictionary.
+  installPhase = ''
+    runHook preInstall
+    make install-libLTLIBRARIES
+    make install-binSCRIPTS
+    make install-includeHEADERS
+
+    # license
+    install -D -m644 COPYING "$out/share/licenses/${pname}/LICENSE"
+    runHook postInstall
+  '';
+
   meta = with lib; {
     description = "Text hyphenation library";
     mainProgram = "substrings.pl";
diff --git a/pkgs/development/libraries/hyphen/dictionaries.nix b/pkgs/development/libraries/hyphen/dictionaries.nix
new file mode 100644
index 0000000000000..49d314095c577
--- /dev/null
+++ b/pkgs/development/libraries/hyphen/dictionaries.nix
@@ -0,0 +1,91 @@
+/* hyphen dictionaries */
+
+{ hyphen, stdenv, lib, fetchgit, fetchurl }:
+
+
+let
+  libreofficeRepository = "https://anongit.freedesktop.org/git/libreoffice/dictionaries.git";
+  libreofficeCommit = "9e27d044d98e65f89af8c86df722a77be827bdc8";
+  libreofficeSubdir = "de";
+
+  mkDictFromLibreofficeGit =
+    { subdir, shortName, shortDescription, dictFileName, readmeFileName }:
+    stdenv.mkDerivation rec {
+      version = "24.8";
+      pname = "hyphen-dict-${shortName}-libreoffice";
+      src = fetchgit {
+        url = "https://anongit.freedesktop.org/git/libreoffice/dictionaries.git";
+        rev = "a2bf59878dd76685803ec260e15d875746ad6e25";
+        hash = "sha256-3CvjgNjsrm4obATK6LmtYob8i2ngTbwP6FB4HlJMPCE=";
+      };
+      meta = with lib; {
+        description = "Hyphen dictionary for ${shortDescription} from LibreOffice";
+        homepage = "https://wiki.documentfoundation.org/Development/Dictionaries";
+        license = with licenses; [ mpl20 ];
+        maintainers = with maintainers; [ theCapypara ];
+        platforms = platforms.all;
+      };
+      dontBuild = true;
+      installPhase = ''
+        runHook preInstall
+        cd $src/${subdir}
+        install -dm755 "$out/share/hyphen"
+        install -m644 "hyph_${dictFileName}.dic" "$out/share/hyphen"
+        # docs
+        install -dm755 "$out/share/doc/"
+        install -m644 "README_hyph_${readmeFileName}.txt" "$out/share/doc/${pname}.txt"
+        runHook postInstall
+      '';
+    };
+
+in
+rec {
+
+  /* ENGLISH */
+
+  en_US = en-us;
+  en-us = stdenv.mkDerivation rec {
+    nativeBuildInputs = hyphen.nativeBuildInputs;
+    version = hyphen.version;
+    pname = "hyphen-dict-en-us";
+    src =  hyphen.src;
+    meta = {
+      inherit (hyphen.meta) homepage platforms license maintainers;
+      description = "Hyphen dictionary for English (United States)";
+    };
+    installPhase = ''
+      runHook preInstall
+      make install-hyphDATA
+      runHook postInstall
+    '';
+  };
+
+  /* GERMAN */
+
+  de_DE = de-de;
+  de-de = mkDictFromLibreofficeGit {
+    subdir = "de";
+    shortName = "de-de";
+    shortDescription = "German (Germany)";
+    dictFileName = "de_DE";
+    readmeFileName = "de";
+  };
+
+  de_AT = de-at;
+  de-at = mkDictFromLibreofficeGit {
+    subdir = "de";
+    shortName = "de-at";
+    shortDescription = "German (Austria)";
+    dictFileName = "de_AT";
+    readmeFileName = "de";
+  };
+
+  de_CH = de-ch;
+  de-ch = mkDictFromLibreofficeGit {
+    subdir = "de";
+    shortName = "de-ch";
+    shortDescription = "German (Switzerland)";
+    dictFileName = "de_CH";
+    readmeFileName = "de";
+  };
+}
diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix
index 0e77aebd14865..ed142788c7650 100644
--- a/pkgs/development/libraries/icu/default.nix
+++ b/pkgs/development/libraries/icu/default.nix
@@ -1,11 +1,15 @@
-{ stdenv, lib, fetchurl, fetchpatch, fixDarwinDylibNames, testers, buildPackages }:
+{ stdenv, lib, fetchurl, fetchpatch, fixDarwinDylibNames, testers, buildPackages, updateAutotoolsGnuConfigScriptsHook }:
 
 let
   make-icu = (import ./make-icu.nix) {
-    inherit stdenv lib buildPackages fetchurl fixDarwinDylibNames testers;
+    inherit stdenv lib buildPackages fetchurl fixDarwinDylibNames testers updateAutotoolsGnuConfigScriptsHook;
   };
 in
 {
+  icu75 = make-icu {
+    version = "75.1";
+    hash = "sha256-y5aN8+TS6H6LEcSaXQHHh70TuVRSgPxmQvgmUnYYyu8=";
+  };
   icu74 = make-icu {
     version = "74.2";
     hash = "sha256-aNsIIhKpbW9T411g9H04uWLp+dIHp0z6x4Apro/14Iw=";
diff --git a/pkgs/development/libraries/icu/make-icu.nix b/pkgs/development/libraries/icu/make-icu.nix
index 3e65e80ef7c4d..52b083995ec76 100644
--- a/pkgs/development/libraries/icu/make-icu.nix
+++ b/pkgs/development/libraries/icu/make-icu.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPackages, fetchurl, fixDarwinDylibNames, testers }:
+{ stdenv, lib, buildPackages, fetchurl, fixDarwinDylibNames, testers, updateAutotoolsGnuConfigScriptsHook }:
 
 { version, hash, patches ? [], patchFlags ? [], withStatic ? stdenv.hostPlatform.isStatic }:
 
@@ -31,7 +31,7 @@ let
 
       # $(includedir) is different from $(prefix)/include due to multiple outputs
       sed -i -e 's|^\(CPPFLAGS = .*\) -I\$(prefix)/include|\1 -I$(includedir)|' config/Makefile.inc.in
-    '' + lib.optionalString stdenv.isAarch32 ''
+    '' + lib.optionalString stdenv.hostPlatform.isAarch32 ''
       # From https://archlinuxarm.org/packages/armv7h/icu/files/icudata-stdlibs.patch
       sed -e 's/LDFLAGSICUDT=-nodefaultlibs -nostdlib/LDFLAGSICUDT=/' -i config/mh-linux
     '';
@@ -39,7 +39,7 @@ let
     dontDisableStatic = withStatic;
 
     configureFlags = [ "--disable-debug" ]
-      ++ lib.optional (stdenv.isFreeBSD || stdenv.isDarwin) "--enable-rpath"
+      ++ lib.optional (stdenv.hostPlatform.isFreeBSD || stdenv.hostPlatform.isDarwin) "--enable-rpath"
       ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "--with-cross-build=${nativeBuildRoot}"
       ++ lib.optional withStatic "--enable-static";
 
@@ -64,15 +64,17 @@ let
     outputs = [ "out" "dev" ] ++ lib.optional withStatic "static";
     outputBin = "dev";
 
-    # FIXME: This fixes dylib references in the dylibs themselves, but
-    # not in the programs in $out/bin.
-    nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
+    nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ] ++
+      # FIXME: This fixes dylib references in the dylibs themselves, but
+      # not in the programs in $out/bin.
+      lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
+
 
     # remove dependency on bootstrap-tools in early stdenv build
     postInstall = lib.optionalString withStatic ''
       mkdir -p $static/lib
       mv -v lib/*.a $static/lib
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
       sed -i 's/INSTALL_CMD=.*install/INSTALL_CMD=install/' $out/lib/icu/${version}/pkgdata.inc
     '' + (let
       replacements = [
diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix
index c55f3ee186614..0501fe4ac2d33 100644
--- a/pkgs/development/libraries/igraph/default.nix
+++ b/pkgs/development/libraries/igraph/default.nix
@@ -26,13 +26,13 @@ assert (blas.isILP64 == lapack.isILP64 &&
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "igraph";
-  version = "0.10.12";
+  version = "0.10.13";
 
   src = fetchFromGitHub {
     owner = "igraph";
-    repo = finalAttrs.pname;
+    repo = "igraph";
     rev = finalAttrs.version;
-    hash = "sha256-ITXkdCyUtuFhgHHmy3P4ZX6GgzyxVUYz4knCCPHGClc=";
+    hash = "sha256-c5yZI5AfaO/NFyy88efu1COb+T2r1LpHhUTfilw2H1U=";
   };
 
   postPatch = ''
@@ -91,7 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
   postFixup = ''
     substituteInPlace $dev/lib/cmake/igraph/igraph-targets.cmake \
       --replace-fail "_IMPORT_PREFIX \"$out\"" "_IMPORT_PREFIX \"$dev\""
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libigraph.dylib
   '';
 
diff --git a/pkgs/development/libraries/ilmbase/default.nix b/pkgs/development/libraries/ilmbase/default.nix
index 219d961f9f96a..dc075e43563d8 100644
--- a/pkgs/development/libraries/ilmbase/default.nix
+++ b/pkgs/development/libraries/ilmbase/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   # fails 1 out of 1 tests with
   # "lt-ImathTest: testBoxAlgo.cpp:892: void {anonymous}::boxMatrixTransform(): Assertion `b21 == b2' failed"
   # at least on i686. spooky!
-  doCheck = stdenv.isx86_64;
+  doCheck = stdenv.hostPlatform.isx86_64;
 
   preConfigure = ''
     # Need to cd after patches for openexr patches to apply.
diff --git a/pkgs/development/libraries/imgui/default.nix b/pkgs/development/libraries/imgui/default.nix
index 4e92375197d37..315a731710670 100644
--- a/pkgs/development/libraries/imgui/default.nix
+++ b/pkgs/development/libraries/imgui/default.nix
@@ -14,6 +14,9 @@
   vulkan-headers,
   vulkan-loader,
 
+  # NOTE: Not coming from vcpkg
+  IMGUI_LINK_GLVND ? !stdenv.hostPlatform.isWindows && (IMGUI_BUILD_OPENGL2_BINDING || IMGUI_BUILD_OPENGL3_BINDING),
+
   # The intent is to mirror vcpkg's flags[^1],
   # but we only actually support Linux and glfw3 until someone contributes the rest
   # [^1]: https://github.com/microsoft/vcpkg/blob/095ee06e7f60dceef7d713e3f8b1c2eb10d650d7/ports/imgui/CMakeLists.txt#L33-L108
@@ -23,15 +26,15 @@
   IMGUI_BUILD_DX10_BINDING ? false,
   IMGUI_BUILD_DX11_BINDING ? false,
   IMGUI_BUILD_DX12_BINDING ? false,
-  IMGUI_BUILD_GLFW_BINDING ? !stdenv.isDarwin,
+  IMGUI_BUILD_GLFW_BINDING ? !stdenv.hostPlatform.isDarwin,
   IMGUI_BUILD_GLUT_BINDING ? false,
-  IMGUI_BUILD_METAL_BINDING ? stdenv.isDarwin,
+  IMGUI_BUILD_METAL_BINDING ? stdenv.hostPlatform.isDarwin,
   IMGUI_BUILD_OPENGL2_BINDING ? false,
   IMGUI_BUILD_OPENGL3_BINDING ?
     IMGUI_BUILD_SDL2_BINDING || IMGUI_BUILD_GLFW_BINDING || IMGUI_BUILD_GLUT_BINDING,
-  IMGUI_BUILD_OSX_BINDING ? stdenv.isDarwin,
+  IMGUI_BUILD_OSX_BINDING ? stdenv.hostPlatform.isDarwin,
   IMGUI_BUILD_SDL2_BINDING ?
-    !IMGUI_BUILD_GLFW_BINDING && !stdenv.isDarwin,
+    !IMGUI_BUILD_GLFW_BINDING && !stdenv.hostPlatform.isDarwin,
   IMGUI_BUILD_SDL2_RENDERER_BINDING ? IMGUI_BUILD_SDL2_BINDING,
   IMGUI_BUILD_VULKAN_BINDING ? false,
   IMGUI_BUILD_WIN32_BINDING ? false,
@@ -84,7 +87,7 @@ stdenv.mkDerivation rec {
   ];
 
   propagatedBuildInputs =
-    lib.optionals (IMGUI_BUILD_OPENGL2_BINDING || IMGUI_BUILD_OPENGL3_BINDING) [ libGL ]
+    lib.optionals IMGUI_LINK_GLVND [ libGL ]
     ++ lib.optionals IMGUI_BUILD_GLFW_BINDING [ glfw ]
     ++ lib.optionals IMGUI_BUILD_SDL2_BINDING [ SDL2 ]
     ++ lib.optionals IMGUI_BUILD_VULKAN_BINDING [
diff --git a/pkgs/development/libraries/imlib2/default.nix b/pkgs/development/libraries/imlib2/default.nix
index cc1f6b5440483..cea3f45f9ff69 100644
--- a/pkgs/development/libraries/imlib2/default.nix
+++ b/pkgs/development/libraries/imlib2/default.nix
@@ -31,11 +31,11 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "imlib2";
-  version = "1.12.2";
+  version = "1.12.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/enlightenment/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
-    hash = "sha256-zEmTGiBWCWioZIycoHkIWXYIXqltWaAbHhfLVa8P/kI=";
+    url = "mirror://sourceforge/enlightenment/imlib2-${finalAttrs.version}.tar.xz";
+    hash = "sha256-liRGVldqPgpvWLeOUU3ckZYirGgGcRvCMYN+7mLB3jQ=";
   };
 
   buildInputs = [
@@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   # Do not build amd64 assembly code on Darwin, because it fails to compile
   # with unknow directive errors
-  configureFlags = optional stdenv.isDarwin "--enable-amd64=no"
+  configureFlags = optional stdenv.hostPlatform.isDarwin "--enable-amd64=no"
     ++ optional (!svgSupport) "--without-svg"
     ++ optional (!heifSupport) "--without-heif"
     ++ optional (!x11Support) "--without-x";
@@ -96,6 +96,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.imlib2;
     pkgConfigModules = [ "imlib2" ];
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 })
diff --git a/pkgs/development/libraries/imtui/default.nix b/pkgs/development/libraries/imtui/default.nix
index a4f477543b89e..ac1791126bfde 100644
--- a/pkgs/development/libraries/imtui/default.nix
+++ b/pkgs/development/libraries/imtui/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   buildInputs = lib.optional withEmscripten emscripten
     ++ lib.optional withCurl curl
     ++ lib.optional withNcurses ncurses
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Cocoa;
 
   postPatch = ''
     cp -r ${imgui.src}/* third-party/imgui/imgui
diff --git a/pkgs/development/libraries/inchi/default.nix b/pkgs/development/libraries/inchi/default.nix
index f74cfdec9305e..1c8cca6af715f 100644
--- a/pkgs/development/libraries/inchi/default.nix
+++ b/pkgs/development/libraries/inchi/default.nix
@@ -24,14 +24,14 @@ in
       sha256 = "1zbygqn0443p0gxwr4kx3m1bkqaj8x9hrpch3s41py7jq08f6x28";
     };
 
-    nativeBuildInputs = [ unzip ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    nativeBuildInputs = [ unzip ] ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
     outputs = [ "out" "doc" ];
 
     enableParallelBuilding = true;
 
     preConfigure = ''
       cd ./INCHI_API/libinchi/gcc
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
       substituteInPlace makefile \
         --replace ",--version-script=libinchi.map" "" \
         --replace "LINUX_Z_RELRO = ,-z,relro" "" \
@@ -56,7 +56,7 @@ in
       runHook postInstall
     '';
 
-    preFixup = lib.optionalString stdenv.isDarwin ''
+    preFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
       fixDarwinDylibNames $(find "$out" -name "*.so.*")
     '';
 
diff --git a/pkgs/development/libraries/iniparser/default.nix b/pkgs/development/libraries/iniparser/default.nix
index a35deb12e6837..b0bb4dce192fd 100644
--- a/pkgs/development/libraries/iniparser/default.nix
+++ b/pkgs/development/libraries/iniparser/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-R069LuOmjCFj7dHXiMjuK7WUupk5+dVd8IDKY/wBn2o=";
   };
 
-  patches = lib.optionals finalAttrs.doCheck [
+  patches = lib.optionals finalAttrs.finalPackage.doCheck [
     (substituteAll {
       # Do not let cmake's fetchContent download unity
       src = ./remove-fetchcontent-usage.patch;
@@ -48,9 +48,9 @@ stdenv.mkDerivation (finalAttrs: {
     cmake
     doxygen
     validatePkgConfig
-  ] ++ lib.optionals finalAttrs.doCheck [ ruby ];
+  ] ++ lib.optionals finalAttrs.finalPackage.doCheck [ ruby ];
 
-  cmakeFlags = [ "-DBUILD_TESTING=${if finalAttrs.doCheck then "ON" else "OFF"}" ];
+  cmakeFlags = [ "-DBUILD_TESTING=${if finalAttrs.finalPackage.doCheck then "ON" else "OFF"}" ];
 
   doCheck = false;
 
diff --git a/pkgs/development/libraries/intel-gmmlib/default.nix b/pkgs/development/libraries/intel-gmmlib/default.nix
index 2cfce8ed20405..a54872d6c2a5e 100644
--- a/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-gmmlib";
-  version = "22.3.20";
+  version = "22.5.1";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "gmmlib";
     rev = "intel-gmmlib-${version}";
-    sha256 = "sha256-AqHzWm0ZWCJK0gMXxxBSHemKx3U1fOXCUGo/ORny2hI=";
+    hash = "sha256-YHloVW5TtNI583GOEhx7S27jzHEVTSdbJSDOzv7KZiI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix
index 6dec37315ab94..4803f6ecf360d 100644
--- a/pkgs/development/libraries/intel-media-driver/default.nix
+++ b/pkgs/development/libraries/intel-media-driver/default.nix
@@ -8,7 +8,7 @@
 , libpciaccess
 , intel-gmmlib
 , libdrm
-, enableX11 ? stdenv.isLinux
+, enableX11 ? stdenv.hostPlatform.isLinux
 , libX11
   # for passhtru.tests
 , pkgsi686Linux
@@ -16,7 +16,7 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-media-driver";
-  version = "24.2.1";
+  version = "24.2.5";
 
   outputs = [ "out" "dev" ];
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     owner = "intel";
     repo = "media-driver";
     rev = "intel-media-${version}";
-    hash = "sha256-75NNxcWQUx0Qs7TWZMxu1TMm22/wCsmQPZXKGKFHEh0=";
+    hash = "sha256-nnaKfGMRNMZzrgMv7OgXj+11RaZSFijrxunnbGSWQlw=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/intel-vaapi-driver/default.nix b/pkgs/development/libraries/intel-vaapi-driver/default.nix
index 5622ad158f91b..9f9e2f2bbd409 100644
--- a/pkgs/development/libraries/intel-vaapi-driver/default.nix
+++ b/pkgs/development/libraries/intel-vaapi-driver/default.nix
@@ -1,7 +1,8 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, gnum4, pkg-config, python3
-, intel-gpu-tools, libdrm, libva
+{ lib, stdenv, fetchFromGitHub
+, autoreconfHook, gnum4, pkg-config, python3, wayland-scanner
+, intel-gpu-tools, libdrm, libva, libX11, libGL, wayland, libXext
 , enableHybridCodec ? false, vaapi-intel-hybrid
-, enableGui ? true, libX11, libGL, wayland, libXext
+, enableGui ? true
 }:
 
 stdenv.mkDerivation rec {
@@ -27,7 +28,9 @@ stdenv.mkDerivation rec {
     (lib.enableFeature enableGui "wayland")
   ] ++ lib.optional enableHybridCodec "--enable-hybrid-codec";
 
-  nativeBuildInputs = [ autoreconfHook gnum4 pkg-config python3 ];
+  nativeBuildInputs = [
+    autoreconfHook gnum4 pkg-config python3 wayland-scanner
+  ];
 
   buildInputs = [ intel-gpu-tools libdrm libva ]
     ++ lib.optionals enableGui [ libX11 libXext libGL wayland ]
diff --git a/pkgs/development/libraries/ip2location-c/default.nix b/pkgs/development/libraries/ip2location-c/default.nix
index 0e74478982f3f..bc1c3736f730b 100644
--- a/pkgs/development/libraries/ip2location-c/default.nix
+++ b/pkgs/development/libraries/ip2location-c/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://www.ip2location.com/developers/c";
     license = with licenses; [ gpl3Plus lgpl3Plus ];
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/ipu6-camera-hal/default.nix b/pkgs/development/libraries/ipu6-camera-hal/default.nix
index ff490414da858..9c6cc585f9b32 100644
--- a/pkgs/development/libraries/ipu6-camera-hal/default.nix
+++ b/pkgs/development/libraries/ipu6-camera-hal/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
     description = "HAL for processing of images in userspace";
     homepage = "https://github.com/intel/ipu6-camera-hal";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/development/libraries/irrlicht/default.nix b/pkgs/development/libraries/irrlicht/default.nix
index fa5d2b3b0c99f..6711622a2eb8b 100644
--- a/pkgs/development/libraries/irrlicht/default.nix
+++ b/pkgs/development/libraries/irrlicht/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     sed -ie '/sys\/sysctl.h/d' source/Irrlicht/COSOperator.cpp
-  '' + lib.optionalString stdenv.isAarch64 ''
+  '' + lib.optionalString stdenv.hostPlatform.isAarch64 ''
     substituteInPlace source/Irrlicht/Makefile \
       --replace "-DIRRLICHT_EXPORTS=1" "-DIRRLICHT_EXPORTS=1 -DPNG_ARM_NEON_OPT=0"
   '';
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     libGLU libGL libXrandr libX11 libXxf86vm
-  ] ++ lib.optional stdenv.isAarch64 zlib;
+  ] ++ lib.optional stdenv.hostPlatform.isAarch64 zlib;
 
   meta = {
     homepage = "https://irrlicht.sourceforge.io/";
diff --git a/pkgs/development/libraries/irrlicht/mac.nix b/pkgs/development/libraries/irrlicht/mac.nix
index b3ef27e38774e..06a5dfa5e9aad 100644
--- a/pkgs/development/libraries/irrlicht/mac.nix
+++ b/pkgs/development/libraries/irrlicht/mac.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, libGLU, libGL, fetchFromGitHub, cmake, Cocoa, OpenGL, IOKit }:
+{ lib, stdenv, fetchzip, fetchFromGitHub, cmake, Cocoa, OpenGL, IOKit }:
 
 let
   common = import ./common.nix { inherit fetchzip; };
diff --git a/pkgs/development/libraries/irrlichtmt/default.nix b/pkgs/development/libraries/irrlichtmt/default.nix
deleted file mode 100644
index 8787fd390efd1..0000000000000
--- a/pkgs/development/libraries/irrlichtmt/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, zlib
-, libpng
-, libjpeg
-, libGL
-, libX11
-, libXi
-, libXext
-, Cocoa
-, Kernel
-}:
-stdenv.mkDerivation (finalAttrs: {
-  pname = "irrlichtmt";
-  version = "1.9.0mt13";
-
-  src = fetchFromGitHub {
-    owner = "minetest";
-    repo = "irrlicht";
-    rev = finalAttrs.version;
-    hash = "sha256-BlQd7zbpvQnxqLv3IaHWrXzJ1pJFbQQ3DNWDAj14/YY=";
-  };
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  buildInputs = [
-    zlib
-    libpng
-    libjpeg
-    libGL
-    libX11
-    libXi
-    libXext
-  ] ++ lib.optionals stdenv.isDarwin [
-    Cocoa
-    Kernel
-  ];
-
-  outputs = [ "out" "dev" ];
-
-  meta = {
-    homepage = "https://github.com/minetest/irrlicht";
-    license = lib.licenses.zlib;
-    maintainers = with lib.maintainers; [ DeeUnderscore ];
-    description = "Minetest project's fork of Irrlicht, a realtime 3D engine written in C++";
-  };
-})
diff --git a/pkgs/development/libraries/isa-l/default.nix b/pkgs/development/libraries/isa-l/default.nix
index 9a112fb1c4d93..6ae04b0b267d8 100644
--- a/pkgs/development/libraries/isa-l/default.nix
+++ b/pkgs/development/libraries/isa-l/default.nix
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/intel/isa-l";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.all;
-    broken = stdenv.isDarwin && stdenv.isAarch64; # does not build on M1 mac (asm/hwcap.h file not found) maybe needs gcc not clang?
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64; # does not build on M1 mac (asm/hwcap.h file not found) maybe needs gcc not clang?
   };
 }
diff --git a/pkgs/development/libraries/isl/0.11.1.nix b/pkgs/development/libraries/isl/0.11.1.nix
deleted file mode 100644
index a11d9eca6a6e6..0000000000000
--- a/pkgs/development/libraries/isl/0.11.1.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-import ./generic.nix {
-  version = "0.11.1";
-  urls = [
-    "https://src.fedoraproject.org/repo/pkgs/gcc/isl-0.11.1.tar.bz2/bce1586384d8635a76d2f017fb067cd2/isl-0.11.1.tar.bz2"
-  ];
-  sha256 = "13d9cqa5rzhbjq0xf0b2dyxag7pqa72xj9dhsa03m8ccr1a4npq9";
-  patches = [ ./fix-gcc-build.diff ];
-}
diff --git a/pkgs/development/libraries/isl/0.14.1.nix b/pkgs/development/libraries/isl/0.14.1.nix
deleted file mode 100644
index 1a368d2523e0c..0000000000000
--- a/pkgs/development/libraries/isl/0.14.1.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-import ./generic.nix rec {
-  version = "0.14.1";
-  urls = [
-    "mirror://sourceforge/libisl/isl-${version}.tar.xz"
-    "https://libisl.sourceforge.io/isl-${version}.tar.xz"
-  ];
-  sha256 = "0xa6xagah5rywkywn19rzvbvhfvkmylhcxr6z9z7bz29cpiwk0l8";
-}
diff --git a/pkgs/development/libraries/isl/fix-gcc-build.diff b/pkgs/development/libraries/isl/fix-gcc-build.diff
deleted file mode 100644
index 6fbd1f9d478be..0000000000000
--- a/pkgs/development/libraries/isl/fix-gcc-build.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru isl-0.11.1/include/isl/int.h isl-0.11.1.new/include/isl/int.h
---- isl-0.11.1/include/isl/int.h        2012-11-29 09:47:32.000000000 +0100
-+++ isl-0.11.1.new/include/isl/int.h    2013-10-27 15:35:31.348553812 +0100
-@@ -14,7 +14,7 @@
- #include <string.h>
- #include <gmp.h>
- #if defined(__cplusplus)
--#include <iostream>
-+#include <ostream>
- #endif
- 
- #if defined(__cplusplus)
diff --git a/pkgs/development/libraries/itk/generic.nix b/pkgs/development/libraries/itk/generic.nix
index 54f725683a2e3..d4ece7d311ec6 100644
--- a/pkgs/development/libraries/itk/generic.nix
+++ b/pkgs/development/libraries/itk/generic.nix
@@ -1,10 +1,43 @@
-{ version, rev, sourceSha256 }:
+{
+  version,
+  rev,
+  sourceSha256,
+}:
 
-{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake
-, expat, fftw, gdcm, hdf5-cpp, libjpeg, libminc, libtiff, libpng
-, libX11, libuuid, xz, vtk, zlib, Cocoa }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  cmake,
+  castxml,
+  swig,
+  expat,
+  eigen,
+  fftw,
+  gdcm,
+  hdf5-cpp,
+  libjpeg,
+  libminc,
+  libtiff,
+  libpng,
+  libX11,
+  libuuid,
+  patchelf,
+  python ? null,
+  numpy ? null,
+  xz,
+  vtk,
+  which,
+  zlib,
+  Cocoa,
+  enablePython ? false,
+}:
 
 let
+  # Python wrapper contains its own VTK support incompatible with MODULE_ITKVtkGlue
+  withVtk = !enablePython;
+
   itkGenericLabelInterpolatorSrc = fetchFromGitHub {
     owner = "InsightSoftwareConsortium";
     repo = "ITKGenericLabelInterpolator";
@@ -25,6 +58,19 @@ let
     rev = "bb896868fc6480835495d0da4356d5db009592a6";
     hash = "sha256-MfaIA0xxA/pzUBSwnAevr17iR23Bo5iQO2cSyknS3o4=";
   };
+
+  # remove after next swig update:
+  swigUnstable = swig.overrideAttrs ({
+    version = "4.2.1-unstable-2024-08-19";
+
+    src = fetchFromGitHub {
+      owner = "swig";
+      repo = "swig";
+      rev = "5ac5d90f970759fbe705fae551d0743a7c63c67e";
+      hash = "sha256-32EFLHpP4l04nqrc8dt4Qsr8deTBqLt8lUlhnNnaIGU=";
+    };
+
+  });
 in
 
 stdenv.mkDerivation {
@@ -55,36 +101,55 @@ stdenv.mkDerivation {
     ln -sr ${itkSimpleITKFiltersSrc} Modules/External/ITKSimpleITKFilters
   '';
 
-  cmakeFlags = [
-    "-DBUILD_EXAMPLES=OFF"
-    "-DBUILD_SHARED_LIBS=ON"
-    "-DITK_FORBID_DOWNLOADS=ON"
-    "-DITK_USE_SYSTEM_LIBRARIES=ON"  # finds common libraries e.g. hdf5, libpng, libtiff, zlib, but not GDCM, NIFTI, MINC, etc.
-    # note ITK_USE_SYSTEM_EIGEN, part of ITK_USE_SYSTEM_LIBRARIES,
-    # causes "...-itk-5.2.1/include/ITK-5.2/itkSymmetricEigenAnalysis.h:23:31: fatal error: Eigen/Eigenvalues: No such file or directory"
-    # when compiling c3d, but maybe an ITK 5.2/eigen version issue:
-    "-DITK_USE_SYSTEM_EIGEN=OFF"
-    "-DITK_USE_SYSTEM_GOOGLETEST=OFF"  # ANTs build failure due to https://github.com/ANTsX/ANTs/issues/1489
-    "-DITK_USE_SYSTEM_GDCM=ON"
-    "-DITK_USE_SYSTEM_MINC=ON"
-    "-DLIBMINC_DIR=${libminc}/lib/cmake"
-    "-DModule_ITKMINC=ON"
-    "-DModule_ITKIOMINC=ON"
-    "-DModule_ITKIOTransformMINC=ON"
-    "-DModule_SimpleITKFilters=ON"
-    "-DModule_ITKVtkGlue=ON"
-    "-DModule_ITKReview=ON"
-    "-DModule_MGHIO=ON"
-    "-DModule_AdaptiveDenoising=ON"
-    "-DModule_GenericLabelInterpolator=ON"
-  ];
+  cmakeFlags =
+    [
+      "-DBUILD_EXAMPLES=OFF"
+      "-DBUILD_SHARED_LIBS=ON"
+      "-DITK_FORBID_DOWNLOADS=ON"
+      "-DITK_USE_SYSTEM_LIBRARIES=ON" # finds common libraries e.g. hdf5, libpng, libtiff, zlib, but not GDCM, NIFTI, MINC, etc.
+      "-DITK_USE_SYSTEM_EIGEN=ON"
+      "-DITK_USE_SYSTEM_EIGEN=OFF"
+      "-DITK_USE_SYSTEM_GOOGLETEST=OFF" # ANTs build failure due to https://github.com/ANTsX/ANTs/issues/1489
+      "-DITK_USE_SYSTEM_GDCM=ON"
+      "-DITK_USE_SYSTEM_MINC=ON"
+      "-DLIBMINC_DIR=${libminc}/lib/cmake"
+      "-DModule_ITKMINC=ON"
+      "-DModule_ITKIOMINC=ON"
+      "-DModule_ITKIOTransformMINC=ON"
+      "-DModule_SimpleITKFilters=ON"
+      "-DModule_ITKReview=ON"
+      "-DModule_MGHIO=ON"
+      "-DModule_AdaptiveDenoising=ON"
+      "-DModule_GenericLabelInterpolator=ON"
+    ]
+    ++ lib.optionals enablePython [
+      "-DITK_WRAP_PYTHON=ON"
+      "-DITK_USE_SYSTEM_CASTXML=ON"
+      "-DITK_USE_SYSTEM_SWIG=ON"
+      "-DPY_SITE_PACKAGES_PATH=${placeholder "out"}/${python.sitePackages}"
+    ]
+    ++ lib.optionals withVtk [ "-DModule_ITKVtkGlue=ON" ];
 
-  nativeBuildInputs = [ cmake xz ];
-  buildInputs = [
-    libX11
-    libuuid
-    vtk
-  ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
+  nativeBuildInputs =
+    [
+      cmake
+      xz
+    ]
+    ++ lib.optionals enablePython [
+      castxml
+      swigUnstable
+      which
+    ];
+
+  buildInputs =
+    [
+      eigen
+      libX11
+      libuuid
+    ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ]
+    ++ lib.optionals enablePython [ python ]
+    ++ lib.optionals withVtk [ vtk ];
   # Due to ITKVtkGlue=ON and the additional dependencies needed to configure VTK 9
   # (specifically libGL and libX11 on Linux),
   # it's now seemingly necessary for packages that configure ITK to
@@ -105,13 +170,30 @@ stdenv.mkDerivation {
     libpng
     libtiff
     zlib
-  ] ++ vtk.propagatedBuildInputs;
+  ] ++ lib.optionals withVtk vtk.propagatedBuildInputs ++ lib.optionals enablePython [ numpy ];
+
+  postInstall = lib.optionalString enablePython ''
+    substitute \
+      ${./itk.egg-info} \
+      $out/${python.sitePackages}/itk-${version}.egg-info \
+      --subst-var-by ITK_VER "${version}"
+  '';
+
+  # remove forbidden reference to /build which occur when building the Python wrapping
+  # (also remove a copy of itkTestDriver with incorrect permissions/RPATH):
+  preFixup = lib.optionals enablePython ''
+    rm $out/${python.sitePackages}/itk/itkTestDriver
+    find $out/${python.sitePackages}/itk -type f -name '*.so*' -exec \
+      patchelf {} --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" \;
+  '';
 
   meta = {
     description = "Insight Segmentation and Registration Toolkit";
-    mainProgram = "itkTestDriver";
     homepage = "https://www.itk.org";
     license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [viric];
+    maintainers = with lib.maintainers; [ bcdarwin ];
+    # aarch64-linux Python wrapping fails with "error: unknown type name '_Float128'" and similar;
+    # compilation runs slowly and times out on Darwin
+    platforms = with lib.platforms; if enablePython then [ "x86_64-linux" ] else unix;
   };
 }
diff --git a/pkgs/development/libraries/itk/itk.egg-info b/pkgs/development/libraries/itk/itk.egg-info
new file mode 100644
index 0000000000000..2c523ec278488
--- /dev/null
+++ b/pkgs/development/libraries/itk/itk.egg-info
@@ -0,0 +1,5 @@
+Metadata-Version: 2.1
+Name: itk
+Version: @ITK_VER@
+Summary: Insight Segmentation and Registration Toolkit
+Platform: UNKNOWN
diff --git a/pkgs/development/libraries/jabcode/default.nix b/pkgs/development/libraries/jabcode/default.nix
index 1fc0e6fd0886c..d735937b934d1 100644
--- a/pkgs/development/libraries/jabcode/default.nix
+++ b/pkgs/development/libraries/jabcode/default.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl21;
     maintainers = [ maintainers.xaverdh ];
     platforms = platforms.unix;
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/jabcode.x86_64-darwin
+    broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/jabcode.x86_64-darwin
   };
 }
diff --git a/pkgs/development/libraries/jansson/default.nix b/pkgs/development/libraries/jansson/default.nix
deleted file mode 100644
index e86832420969c..0000000000000
--- a/pkgs/development/libraries/jansson/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
-
-stdenv.mkDerivation rec {
-  pname = "jansson";
-  version = "2.14";
-
-  src = fetchFromGitHub {
-    owner = "akheron";
-    repo = "jansson";
-    rev = "v${version}";
-    sha256 = "sha256-FQgy2+g3AyRVJeniqPQj0KNeHgPdza2pmEIXqSyYry4=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [
-    # networkmanager relies on libjansson.so:
-    #   https://github.com/NixOS/nixpkgs/pull/176302#issuecomment-1150239453
-    "-DJANSSON_BUILD_SHARED_LIBS=${if stdenv.hostPlatform.isStatic then "OFF" else "ON"}"
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/akheron/jansson";
-    description = "C library for encoding, decoding and manipulating JSON data";
-    changelog = "https://github.com/akheron/jansson/raw/v${version}/CHANGES";
-    license = licenses.mit;
-    platforms = platforms.all;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/libraries/java/commons/bcel/default.nix b/pkgs/development/libraries/java/commons/bcel/default.nix
index 0387b5dd9e306..f9ffad1028abe 100644
--- a/pkgs/development/libraries/java/commons/bcel/default.nix
+++ b/pkgs/development/libraries/java/commons/bcel/default.nix
@@ -1,12 +1,12 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  version = "6.8.2";
+  version = "6.10.0";
   pname = "commons-bcel";
 
   src = fetchurl {
     url    = "mirror://apache/commons/bcel/binaries/bcel-${version}-bin.tar.gz";
-    hash   = "sha256-VRCRxy+P3uPW9gWy9xHfJ35muhWCHtXNimRmTfba+04=";
+    hash   = "sha256-RRVXxPtwbT9AX92T60uDJpFWF6DiotcG1KvKrlFfEWU=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/java/commons/daemon/default.nix b/pkgs/development/libraries/java/commons/daemon/default.nix
index 68b1c924214db..63cc3d41a0c39 100644
--- a/pkgs/development/libraries/java/commons/daemon/default.nix
+++ b/pkgs/development/libraries/java/commons/daemon/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.4";
+  version = "1.4.0";
   pname = "commons-daemon";
 
   src = fetchurl {
     url    = "mirror://apache/commons/daemon/binaries/commons-daemon-${version}-bin.tar.gz";
-    sha256 = "sha256-n9zmdPC4nLs/Rnth9uojkc5Kg5IfgERbr08TOvENR0Q=";
+    sha256 = "sha256-Cnsd15yREDtkoNFRAsIpACnChncVNgddTJ1CEvhKn48=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/java/commons/lang/default.nix b/pkgs/development/libraries/java/commons/lang/default.nix
index 7271bea4bfccc..16b80fece30bd 100644
--- a/pkgs/development/libraries/java/commons/lang/default.nix
+++ b/pkgs/development/libraries/java/commons/lang/default.nix
@@ -4,12 +4,12 @@
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  version = "3.14.0";
+  version = "3.15.0";
   pname = "commons-lang";
 
   src = fetchurl {
     url = "mirror://apache/commons/lang/binaries/commons-lang3-${finalAttrs.version}-bin.tar.gz";
-    hash = "sha256-MXw+P81fzKN4GnmW/x4MUMEyRO6WHpTl9vbYS4RzOxY=";
+    hash = "sha256-XaI6ajKIA5NiY9UuZJdMCuZ2kIT3cbitpMXJj33lyE4=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/java/hsqldb/default.nix b/pkgs/development/libraries/java/hsqldb/default.nix
index c4f9bf9773020..b4aaed0078957 100644
--- a/pkgs/development/libraries/java/hsqldb/default.nix
+++ b/pkgs/development/libraries/java/hsqldb/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "hsqldb";
-  version = "2.7.2";
+  version = "2.7.3";
   underscoreMajMin = lib.replaceStrings ["."] ["_"] (lib.versions.majorMinor version);
 
   src = fetchurl {
     url = "mirror://sourceforge/project/hsqldb/hsqldb/hsqldb_${underscoreMajMin}/hsqldb-${version}.zip";
-    sha256 = "sha256-/7NZy+ZroxeTF7av22LNJ0dlMzvTAWfOMypLLYWXWBI=";
+    sha256 = "sha256-0+3uhZ9/xYI34QiGSnFzPv9WE9ktxlUI36M1vAxbHpQ=";
   };
 
   nativeBuildInputs = [ unzip makeWrapper ];
diff --git a/pkgs/development/libraries/java/jffi/default.nix b/pkgs/development/libraries/java/jffi/default.nix
index 46f2701635498..fe5a0c5535465 100644
--- a/pkgs/development/libraries/java/jffi/default.nix
+++ b/pkgs/development/libraries/java/jffi/default.nix
@@ -64,8 +64,8 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
-    description = "Java Foreign Function Interface ";
+    broken = stdenv.hostPlatform.isDarwin;
+    description = "Java Foreign Function Interface";
     homepage = "https://github.com/jnr/jffi";
     platforms = platforms.unix;
     license = licenses.asl20;
diff --git a/pkgs/development/libraries/java/lombok/default.nix b/pkgs/development/libraries/java/lombok/default.nix
index de197b7966ef0..87d5f02230e82 100644
--- a/pkgs/development/libraries/java/lombok/default.nix
+++ b/pkgs/development/libraries/java/lombok/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "lombok";
-  version = "1.18.32";
+  version = "1.18.34";
 
   src = fetchurl {
     url = "https://projectlombok.org/downloads/lombok-${version}.jar";
-    sha256 = "sha256-l1dGdOKiX1Z6MTc2rOAN+Hh9RD3jFkB9V/yHfZ8Zpl0=";
+    sha256 = "sha256-wn1rKv9WJB0bB/y8xrGDcJ5rQyyA9zdO6x2CPobUuBo=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/libraries/java/saxon/default.nix b/pkgs/development/libraries/java/saxon/default.nix
index 17dfd7385e124..cb6df7e5558b8 100644
--- a/pkgs/development/libraries/java/saxon/default.nix
+++ b/pkgs/development/libraries/java/saxon/default.nix
@@ -1,46 +1,92 @@
-{ lib, stdenv, fetchurl, unzip, jre, jre8 }:
+{ lib
+, stdenv
+, fetchurl
+, unzip
+, jre
+, jre8
+, genericUpdater
+, writeShellScript
+, common-updater-scripts
+, gnused
+}:
 
 let
+  inherit (lib.versions) major majorMinor splitVersion;
+  inherit (lib.strings) concatStringsSep versionAtLeast;
+
   common = { pname, version, src, description, java ? jre
-           , prog ? null, jar ? null, license ? lib.licenses.mpl20 }:
-    stdenv.mkDerivation {
-      name = "${pname}-${version}";
+           , prog ? null, jar ? null, license ? lib.licenses.mpl20
+           , updateScript ? null }:
+    stdenv.mkDerivation (finalAttrs: let
+      mainProgram = if prog == null then pname else prog;
+      jar' = if jar == null then pname else jar;
+    in {
       inherit pname version src;
 
       nativeBuildInputs = [ unzip ];
 
-      buildCommand = let
-        prog' = if prog == null then pname else prog;
-        jar' = if jar == null then pname else jar;
-      in ''
+      buildCommand = ''
         unzip $src -d $out
         mkdir -p $out/bin $out/share $out/share/java
         cp -s "$out"/*.jar "$out/share/java/"  # */
         rm -rf $out/notices
         mv $out/doc $out/share
-        cat > $out/bin/${prog'} <<EOF
+        cat > $out/bin/${mainProgram} <<EOF
         #! $shell
         export JAVA_HOME=${jre}
         exec ${jre}/bin/java -jar $out/${jar'}.jar "\$@"
         EOF
-        chmod a+x $out/bin/${prog'}
+        chmod a+x $out/bin/${mainProgram}
       '';
 
+      passthru = lib.optionalAttrs (updateScript != null) {
+        inherit updateScript;
+      };
+
       meta = with lib; {
-        inherit description license;
-        homepage = "https://saxon.sourceforge.net/";
+        inherit description license mainProgram;
+        homepage = if versionAtLeast finalAttrs.version "11"
+          then "https://www.saxonica.com/products/latest.xml"
+          else "https://www.saxonica.com/products/archive.xml";
         sourceProvenance = with sourceTypes; [ binaryBytecode ];
         maintainers = with maintainers; [ rvl ];
         platforms = platforms.all;
       };
-    };
+    });
+
+  # Saxon release zipfiles and tags often use dashes instead of dots.
+  dashify = version: concatStringsSep "-" (splitVersion version);
+
+  # SaxonJ-HE release files are pushed to the Saxon-HE GitHub repository.
+  # They are also available from Maven.
+  #
+  # Older releases were uploaded to SourceForge. They are also
+  # available from the Saxon-Archive GitHub repository.
+  github = {
+    updateScript = version: genericUpdater {
+      versionLister = writeShellScript "saxon-he-versionLister" ''
+        export PATH="${lib.makeBinPath [ common-updater-scripts gnused ]}:$PATH"
+        major_ver="${major version}"
+        list-git-tags --url="https://github.com/Saxonica/Saxon-HE.git" \
+          | sed -En \
+            -e "s/SaxonHE([0-9]+)-([0-9]+)/\1.\2/" \
+            -e "/^''${major_ver:-[0-9]+}\./p"
+        '';
+      };
+
+    downloadUrl = version: let
+      tag = "SaxonHE${dashify version}";
+      filename = "${major version}/Java/${tag}J.zip";
+    in
+      "https://raw.githubusercontent.com/Saxonica/Saxon-HE/${tag}/${filename}";
+  };
 
 in {
-  saxon = common {
+  saxon = common rec {
     pname = "saxon";
     version = "6.5.3";
     src = fetchurl {
-      url = "mirror://sourceforge/saxon/saxon6_5_3.zip";
+      url = "mirror://sourceforge/saxon/saxon${dashify version}.zip";
       sha256 = "0l5y3y2z4wqgh80f26dwwxwncs8v3nkz3nidv14z024lmk730vs3";
     };
     description = "XSLT 1.0 processor";
@@ -49,50 +95,63 @@ in {
     java = jre8;
   };
 
-  saxonb_8_8 = common {
+  saxonb_8_8 = common rec {
     pname = "saxonb";
     version = "8.8";
     jar = "saxon8";
     src = fetchurl {
-      url = "mirror://sourceforge/saxon/saxonb8-8j.zip";
+      url = "mirror://sourceforge/saxon/saxonb${dashify version}j.zip";
       sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
     };
     description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
     java = jre8;
   };
 
-  saxonb_9_1 = common {
+  saxonb_9_1 = common rec {
     pname = "saxonb";
     version = "9.1.0.8";
     jar = "saxon9";
     src = fetchurl {
-      url = "mirror://sourceforge/saxon/Saxon-B/9.1.0.8/saxonb9-1-0-8j.zip";
+      url = "mirror://sourceforge/saxon/Saxon-B/${version}/saxonb${dashify version}j.zip";
       sha256 = "1d39jdnwr3v3pzswm81zry6yikqlqy9dp2l2wmpqdiw00r5drg4j";
     };
     description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
   };
 
-  saxon_9-he = common {
+  # Saxon-HE (home edition) replaces Saxon-B as the open source
+  # version of the Saxon XSLT and XQuery processor.
+  saxon_9-he = common rec {
     pname = "saxon-he";
     version = "9.9.0.1";
-    prog = "saxon-he";
     jar = "saxon9he";
     src = fetchurl {
-      url = "mirror://sourceforge/saxon/Saxon-HE/9.9/SaxonHE9-9-0-1J.zip";
+      url = "mirror://sourceforge/saxon/Saxon-HE/${majorMinor version}/SaxonHE${dashify version}J.zip";
       sha256 = "1inxd7ia7rl9fxfrw8dy9sb7rqv76ipblaki5262688wf2dscs60";
     };
     description = "Processor for XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1";
   };
 
-  saxon-he = common {
+  saxon_11-he = common rec {
     pname = "saxon-he";
-    version = "11.5";
-    prog = "saxon-he";
-    jar = "saxon-he-11.5";
+    version = "11.6";
+    jar = "saxon-he-${version}";
     src = fetchurl {
-      url = "https://github.com/Saxonica/Saxon-HE/raw/a6d11dec3853326b661e9aff283e30b43c02e163/11/Java/SaxonHE11-5J.zip";
-      sha256 = "2Nwh6dG3YAjc/OTr8DMOfbnRvdCWB0YsVP3ZLRbM9U0=";
+      url = github.downloadUrl version;
+      sha256 = "/AVX5mtZSO6Is19t3+FlEvtIBsnwB3MIWAPCht8Aqnw=";
     };
+    updateScript = github.updateScript version;
     description = "Processor for XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1";
   };
+
+  saxon_12-he = common rec {
+    pname = "saxon-he";
+    version = "12.5";
+    jar = "saxon-he-${version}";
+    src = fetchurl {
+      url = github.downloadUrl version;
+      hash = "sha256-NaRnKHkr1M7C/CYtSHd7THm1ze7wPSmB46ZOyzoZ9xY=";
+    };
+    updateScript = github.updateScript version;
+    description = "Processor for XSLT 3.0, XPath 3.1, and XQuery 3.1";
+  };
 }
diff --git a/pkgs/development/libraries/java/swt/awt-libs.patch b/pkgs/development/libraries/java/swt/awt-libs.patch
deleted file mode 100644
index 6c3ff53b79835..0000000000000
--- a/pkgs/development/libraries/java/swt/awt-libs.patch
+++ /dev/null
@@ -1,8 +0,0 @@
---- a/make_linux.mak
-+++ b/make_linux.mak
-@@ -63,4 +63,4 @@
-
- AWT_LFLAGS = -shared ${SWT_LFLAGS}
--AWT_LIBS = -L$(AWT_LIB_PATH) -ljawt
-+AWT_LIBS = `pkg-config --libs x11` -L$(AWT_LIB_PATH) -ljawt
-
diff --git a/pkgs/development/libraries/java/swt/default.nix b/pkgs/development/libraries/java/swt/default.nix
deleted file mode 100644
index 2d3f4eeb65755..0000000000000
--- a/pkgs/development/libraries/java/swt/default.nix
+++ /dev/null
@@ -1,158 +0,0 @@
-{ lib
-, stdenv
-, stripJavaArchivesHook
-, fetchzip
-, pkg-config
-, atk
-, glib
-, gtk2
-, jdk
-, libGL
-, libGLU
-, libXt
-, libXtst
-, gnome2
-}:
-
-let
-  platformMap = {
-    x86_64-linux =
-      { platform = "gtk-linux-x86_64";
-        sha256 = "17frac2nsx22hfa72264as31rn35hfh9gfgy0n6wvc3knl5d2716"; };
-    i686-linux =
-      { platform = "gtk-linux-x86";
-        sha256 = "13ca17rga9yvdshqvh0sfzarmdcl4wv4pid0ls7v35v4844zbc8b"; };
-    x86_64-darwin =
-      { platform = "cocoa-macosx-x86_64";
-        sha256 = "0wjyxlw7i9zd2m8syd6k1q85fj8pzhxlfsrl8fpgsj37p698bd0a"; };
-  };
-
-  metadata = assert platformMap ? ${stdenv.hostPlatform.system};
-    platformMap.${stdenv.hostPlatform.system};
-in stdenv.mkDerivation rec {
-  pname = "swt";
-  version = "4.5";
-  fullVersion = "${version}-201506032000";
-
-  hardeningDisable = [ "format" ];
-
-  # Alas, the Eclipse Project apparently doesn't produce source-only
-  # releases of SWT.  So we just grab a binary release and extract
-  # "src.zip" from that.
-  src = fetchzip {
-    url = "https://archive.eclipse.org/eclipse/downloads/drops4/" +
-      "R-${fullVersion}/${pname}-${version}-${metadata.platform}.zip";
-    inherit (metadata) sha256;
-    stripRoot = false;
-    postFetch = ''
-      mkdir "$unpackDir"
-      cd "$unpackDir"
-
-      renamed="$TMPDIR/src.zip"
-      mv "$out/src.zip" "$renamed"
-      unpackFile "$renamed"
-      rm -r "$out"
-
-      mv "$unpackDir" "$out"
-    '';
-  };
-
-  nativeBuildInputs = [
-    stripJavaArchivesHook
-    pkg-config
-  ];
-  buildInputs = [
-    atk
-    gtk2
-    jdk
-    libGL
-    libGLU
-    libXtst
-    gnome2.gnome_vfs
-    gnome2.libgnome
-    gnome2.libgnomeui
-  ] ++ lib.optionals (lib.hasPrefix "8u" jdk.version) [
-    libXt
-  ];
-
-  patches = [ ./awt-libs.patch ./gtk-libs.patch ];
-
-  prePatch = ''
-    # clear whitespace from makefiles (since we match on EOL later)
-    sed -i 's/ \+$//' ./*.mak
-  '';
-
-  postPatch = let makefile-sed = builtins.toFile "swt-makefile.sed" (''
-    # fix pkg-config invocations in CFLAGS/LIBS pairs.
-    #
-    # change:
-    #     FOOCFLAGS = `pkg-config --cflags `foo bar`
-    #     FOOLIBS = `pkg-config --libs-only-L foo` -lbaz
-    # into:
-    #     FOOCFLAGS = `pkg-config --cflags foo bar`
-    #     FOOLIBS = `pkg-config --libs foo bar`
-    #
-    # the latter works more consistently.
-    /^[A-Z0-9_]\+CFLAGS = `pkg-config --cflags [^`]\+`$/ {
-      N
-      s'' +
-        "/" + ''
-          ^\([A-Z0-9_]\+\)CFLAGS = `pkg-config --cflags \(.\+\)`\
-          \1LIBS = `pkg-config --libs-only-L .\+$'' +
-        "/" + ''
-          \1CFLAGS = `pkg-config --cflags \2`\
-          \1LIBS = `pkg-config --libs \2`'' +
-        "/\n" + ''
-    }
-    # fix WebKit libs not being there
-    s/\$(WEBKIT_LIB) \$(WEBKIT_OBJECTS)$/\0 `pkg-config --libs glib-2.0`/g
-  ''); in ''
-    declare -a makefiles=(./*.mak)
-    sed -i -f ${makefile-sed} "''${makefiles[@]}"
-    # assign Makefile variables eagerly & change backticks to `$(shell …)`
-    sed -i -e 's/ = `\([^`]\+\)`/ := $(shell \1)/' \
-      -e 's/`\([^`]\+\)`/$(shell \1)/' \
-      "''${makefiles[@]}"
-  '';
-
-  buildPhase = ''
-    runHook preBuild
-
-    export JAVA_HOME=${jdk}
-
-    ./build.sh
-
-    mkdir out
-    find org/ -name '*.java' -type f -exec javac -d out/ {} +
-
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-
-    if [ -n "$prefix" ]; then
-      mkdir -p "$prefix"
-    fi
-
-    mkdir -p "$out/lib"
-    cp -t "$out/lib" ./*.so
-
-    mkdir -p "$out/jars"
-    cp -t out/ version.txt
-    (cd out && jar -c *) > "$out/jars/swt.jar"
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    homepage = "https://www.eclipse.org/swt/";
-    description = ''
-      A widget toolkit for Java to access the user-interface facilities of
-      the operating systems on which it is implemented.
-    '';
-    license = licenses.epl10;
-    maintainers = with maintainers; [ bb010g ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/java/swt/gtk-libs.patch b/pkgs/development/libraries/java/swt/gtk-libs.patch
deleted file mode 100644
index cd13082b5df78..0000000000000
--- a/pkgs/development/libraries/java/swt/gtk-libs.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/make_linux.mak
-+++ b/make_linux.mak
-@@ -53,9 +53,4 @@
-
--# Do not use pkg-config to get libs because it includes unnecessary dependencies (i.e. pangoxft-1.0)
--GTKCFLAGS = `pkg-config --cflags gtk+-$(GTK_VERSION) gtk+-unix-print-$(GTK_VERSION)`
-+GTKCFLAGS = `pkg-config --cflags gtk+-$(GTK_VERSION) gthread-2.0 gtk+-unix-print-$(GTK_VERSION) x11 xtst`
-+GTKLIBS = `pkg-config --libs gtk+-$(GTK_VERSION) gthread-2.0 gtk+-unix-print-$(GTK_VERSION) x11 xtst`
--ifeq ($(GTK_VERSION), 3.0)
--GTKLIBS = `pkg-config --libs-only-L gtk+-$(GTK_VERSION) gthread-2.0` $(XLIB64) -L/usr/X11R6/lib -lgtk-3 -lgdk-3 -lcairo -lgthread-2.0 -lXtst
--else
--GTKLIBS = `pkg-config --libs-only-L gtk+-$(GTK_VERSION) gthread-2.0` $(XLIB64) -L/usr/X11R6/lib -lgtk-x11-$(GTK_VERSION) -lgthread-2.0 -lXtst
--endif
-
diff --git a/pkgs/development/libraries/jbigkit/default.nix b/pkgs/development/libraries/jbigkit/default.nix
index 8678cde4370ae..00c284c8bc9ea 100644
--- a/pkgs/development/libraries/jbigkit/default.nix
+++ b/pkgs/development/libraries/jbigkit/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "jbigkit";
@@ -9,6 +9,19 @@ stdenv.mkDerivation rec {
     sha256 = "0cnrcdr1dwp7h7m0a56qw09bv08krb37mpf7cml5sjdgpyv0cwfy";
   };
 
+  patches = [
+    # Archlinux patch: this helps users to reduce denial-of-service risks, as in CVE-2017-9937
+    (fetchpatch {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/jbigkit/-/raw/main/0013-new-jbig.c-limit-s-maxmem-maximum-decoded-image-size.patch";
+      hash = "sha256-Yq5qCTF7KZTrm4oeWbpctb+QLt3shJUGEReZvd0ey9k=";
+    })
+    # Archlinux patch: fix heap overflow
+    (fetchpatch {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/jbigkit/-/raw/main/0015-jbg_newlen-check-for-end-of-file-within-MARKER_NEWLE.patch";
+      hash = "sha256-F3qA/btR9D9NfzrNY76X4Z6vG6NrisI36SjCDjS+F5s=";
+    })
+  ];
+
   makeFlags = [
     "CC=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
     "AR=${lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}ar"
diff --git a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index 4498a995a4d7a..dd469d3762c05 100644
--- a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  version = "6.0.1-6";
+  version = "6.0.1-8";
 in
 
 (ffmpeg_6-full.override {
@@ -14,7 +14,7 @@ in
     owner = "jellyfin";
     repo = "jellyfin-ffmpeg";
     rev = "v${version}";
-    hash = "sha256-jy5LPurjuSIMZlzVZcuaqAwAZunbYc9/6aJf+hna0Kw=";
+    hash = "sha256-29g3BUdNcFEGjHkc/1qxOGazIfg0DLDIwoiDCI/aEKc=";
   };
 }).overrideAttrs (old: {
   pname = "jellyfin-ffmpeg";
diff --git a/pkgs/development/libraries/jemalloc/default.nix b/pkgs/development/libraries/jemalloc/default.nix
index 7541e6b0c1a31..9d3bfd1d9a64a 100644
--- a/pkgs/development/libraries/jemalloc/default.nix
+++ b/pkgs/development/libraries/jemalloc/default.nix
@@ -41,19 +41,19 @@ stdenv.mkDerivation rec {
     # jemalloc is unable to correctly detect transparent hugepage support on
     # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default
     # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support
-    ++ lib.optionals (stdenv.isAarch32 && lib.versionOlder version "5") [
+    ++ lib.optionals (stdenv.hostPlatform.isAarch32 && lib.versionOlder version "5") [
       "--disable-thp"
       "je_cv_thp=no"
     ]
     # AArch64 has configurable page size up to 64k. The default configuration
     # for jemalloc only supports 4k page sizes.
-    ++ lib.optional stdenv.isAarch64 "--with-lg-page=16"
+    ++ lib.optional stdenv.hostPlatform.isAarch64 "--with-lg-page=16"
     # See https://github.com/jemalloc/jemalloc/issues/1997
     # Using a value of 48 should work on both emulated and native x86_64-darwin.
-    ++ lib.optional (stdenv.isDarwin && stdenv.isx86_64) "--with-lg-vaddr=48"
+    ++ lib.optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) "--with-lg-vaddr=48"
   ;
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-error=array-bounds";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-Wno-error=array-bounds";
 
   # Tries to link test binaries binaries dynamically and fails
   doCheck = !stdenv.hostPlatform.isStatic;
diff --git a/pkgs/development/libraries/jitterentropy/default.nix b/pkgs/development/libraries/jitterentropy/default.nix
index fb6dbcea64782..3e5656ba7874a 100644
--- a/pkgs/development/libraries/jitterentropy/default.nix
+++ b/pkgs/development/libraries/jitterentropy/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jitterentropy";
-  version = "3.5.0";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "smuellerDD";
     repo = "jitterentropy-library";
     rev = "v${version}";
-    hash = "sha256-USc9e/GyajJe58/Z201AO3Y+t3IPOOdJAaifEwvgm2Q=";
+    hash = "sha256-CPvgc/W5Z2OfbP9Lp2tQevUQZr+xlh6q5r5Fp2WUHhg=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/jose/default.nix b/pkgs/development/libraries/jose/default.nix
index 39e10e2dbebd4..362a084d03240 100644
--- a/pkgs/development/libraries/jose/default.nix
+++ b/pkgs/development/libraries/jose/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     description = "C-language implementation of Javascript Object Signing and Encryption";
     mainProgram = "jose";
     homepage = "https://github.com/latchset/jose";
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     license = lib.licenses.asl20;
     platforms = lib.platforms.all;
   };
diff --git a/pkgs/development/libraries/json-fortran/default.nix b/pkgs/development/libraries/json-fortran/default.nix
index 52ec487c06369..c54965b386d98 100644
--- a/pkgs/development/libraries/json-fortran/default.nix
+++ b/pkgs/development/libraries/json-fortran/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "json-fortran";
-  version = "9.0.1";
+  version = "9.0.2";
 
   src = fetchFromGitHub {
     owner = "jacobwilliams";
     repo = pname;
     rev = version;
-    hash = "sha256-nhT2zLyt3ORi35h9KzOiIuD50GGUCZ/Z5SX8UF3rqQs=";
+    hash = "sha256-mAdagehmj1s6nTDaJqwaYrirfkyIwiTWYge0ZWQBc6g=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix
index ea530a955f75d..f7b6d1c4baab7 100644
--- a/pkgs/development/libraries/jsoncpp/default.nix
+++ b/pkgs/development/libraries/jsoncpp/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/open-source-parsers/jsoncpp";
     description = "C++ library for interacting with JSON";
-    maintainers = with maintainers; [ ttuegel cpages ];
+    maintainers = with maintainers; [ ttuegel ];
     license = licenses.mit;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/jsonrpc-glib/default.nix b/pkgs/development/libraries/jsonrpc-glib/default.nix
index e17498031da6e..8071fce57ef92 100644
--- a/pkgs/development/libraries/jsonrpc-glib/default.nix
+++ b/pkgs/development/libraries/jsonrpc-glib/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jsonrpc-glib";
-  version = "3.44.0";
+  version = "3.44.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "aUBqAlDQzFF1QIyufsqAwMa/rvxK4YMLNUwEM7zVzgY=";
+    sha256 = "E2HRfpyAVkav5RAuWbr4ykUCOGAPyr0BWGxlS3i7MN8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/kcp/default.nix b/pkgs/development/libraries/kcp/default.nix
index 2468ba22d3051..b473419bfdf2d 100644
--- a/pkgs/development/libraries/kcp/default.nix
+++ b/pkgs/development/libraries/kcp/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "Fast and Reliable ARQ Protocol";
     homepage = "https://github.com/skywind3000/kcp";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/kde-frameworks/kauth/default.nix b/pkgs/development/libraries/kde-frameworks/kauth/default.nix
index 0ad7cfbbb7e11..4e9a2a465214b 100644
--- a/pkgs/development/libraries/kde-frameworks/kauth/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/kauth/default.nix
@@ -1,7 +1,7 @@
 {
   lib, stdenv, mkDerivation, propagate,
   extra-cmake-modules, kcoreaddons, qttools,
-  enablePolkit ? stdenv.isLinux, polkit-qt
+  enablePolkit ? stdenv.hostPlatform.isLinux, polkit-qt
 }:
 
 mkDerivation {
diff --git a/pkgs/development/libraries/kde-frameworks/kcalendarcore.nix b/pkgs/development/libraries/kde-frameworks/kcalendarcore.nix
index 3f02765af8ea0..6d4fb30ef75d4 100644
--- a/pkgs/development/libraries/kde-frameworks/kcalendarcore.nix
+++ b/pkgs/development/libraries/kde-frameworks/kcalendarcore.nix
@@ -2,7 +2,6 @@
   mkDerivation,
   extra-cmake-modules,
   libical,
-  qtbase
 }:
 
 mkDerivation {
diff --git a/pkgs/development/libraries/kde-frameworks/kdoctools/default.nix b/pkgs/development/libraries/kde-frameworks/kdoctools/default.nix
index 4b52cd95b7101..d40c5a0a95e2f 100644
--- a/pkgs/development/libraries/kde-frameworks/kdoctools/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/kdoctools/default.nix
@@ -22,7 +22,7 @@ mkDerivation {
   outputs = [ "out" "dev" ];
   patches = [ ./kdoctools-no-find-docbook-xml.patch ]
     # kf.doctools.core: Error: Could not find kdoctools catalogs
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
     (fetchpatch {
       name = "kdoctools-relocate-datapath.patch";
       url = "https://github.com/msys2/MINGW-packages/raw/0900785a1f4e4146ab9561fb92a1c70fa70fcfc4/mingw-w64-kdoctools-qt5/0001-kdoctools-relocate-datapath.patch";
diff --git a/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix b/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
index 1bd1f115c6cb6..32d01b2614885 100644
--- a/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/kfilemetadata/default.nix
@@ -18,7 +18,7 @@
 mkDerivation {
   pname = "kfilemetadata";
   nativeBuildInputs = [ extra-cmake-modules ];
-  buildInputs = lib.optionals stdenv.isLinux [
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
     attr
   ] ++ [
     ebook_tools
diff --git a/pkgs/development/libraries/kde-frameworks/kguiaddons.nix b/pkgs/development/libraries/kde-frameworks/kguiaddons.nix
index 9254043117ae5..61ccde59a7e8e 100644
--- a/pkgs/development/libraries/kde-frameworks/kguiaddons.nix
+++ b/pkgs/development/libraries/kde-frameworks/kguiaddons.nix
@@ -1,12 +1,12 @@
 { mkDerivation
-, extra-cmake-modules
+, extra-cmake-modules, wayland-scanner
 , qtbase, qtx11extras, wayland, plasma-wayland-protocols
 }:
 
 mkDerivation {
   pname = "kguiaddons";
 
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ extra-cmake-modules wayland-scanner ];
   buildInputs = [ qtx11extras wayland plasma-wayland-protocols ];
   propagatedBuildInputs = [ qtbase ];
 
diff --git a/pkgs/development/libraries/kde-frameworks/ki18n.nix b/pkgs/development/libraries/kde-frameworks/ki18n.nix
index be8016155b87b..fc04f2074501b 100644
--- a/pkgs/development/libraries/kde-frameworks/ki18n.nix
+++ b/pkgs/development/libraries/kde-frameworks/ki18n.nix
@@ -1,7 +1,7 @@
 {
   mkDerivation,
   extra-cmake-modules, gettext, python3,
-  qtbase, qtdeclarative, qtscript,
+  qtdeclarative, qtscript,
 }:
 
 mkDerivation {
diff --git a/pkgs/development/libraries/kde-frameworks/kidletime.nix b/pkgs/development/libraries/kde-frameworks/kidletime.nix
index 522e3a2a5de30..cbc94c1bd4723 100644
--- a/pkgs/development/libraries/kde-frameworks/kidletime.nix
+++ b/pkgs/development/libraries/kde-frameworks/kidletime.nix
@@ -1,13 +1,12 @@
-{
-  mkDerivation,
-  extra-cmake-modules,
-  qtbase, qtx11extras,
-  wayland, wayland-protocols, plasma-wayland-protocols
+{ mkDerivation
+, extra-cmake-modules, wayland-scanner
+, qtbase, qtx11extras
+, wayland, wayland-protocols, plasma-wayland-protocols
 }:
 
 mkDerivation {
   pname = "kidletime";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ extra-cmake-modules wayland-scanner ];
   buildInputs = [ qtx11extras wayland wayland-protocols plasma-wayland-protocols ];
   propagatedBuildInputs = [ qtbase ];
 }
diff --git a/pkgs/development/libraries/kde-frameworks/kinit/default.nix b/pkgs/development/libraries/kde-frameworks/kinit/default.nix
index 1f2620c5664dd..fb18cfb287e7d 100644
--- a/pkgs/development/libraries/kde-frameworks/kinit/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/kinit/default.nix
@@ -21,7 +21,7 @@ mkDerivation {
   CXXFLAGS = [
     ''-DNIXPKGS_KF5_KIOCORE=\"${getLib kio}/lib/libKF5KIOCore.so.5\"''
     ''-DNIXPKGS_KF5_PARTS=\"${getLib kparts}/lib/libKF5Parts.so.5\"''
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     ''-DNIXPKGS_KF5_PLASMA=\"${getLib plasma-framework}/lib/libKF5Plasma.so.5\"''
   ];
   setupHook = writeScript "setup-hook.sh" ''
diff --git a/pkgs/development/libraries/kde-frameworks/kio/default.nix b/pkgs/development/libraries/kde-frameworks/kio/default.nix
index 522c27bf56ebc..89f341f9977af 100644
--- a/pkgs/development/libraries/kde-frameworks/kio/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/kio/default.nix
@@ -15,14 +15,14 @@ mkDerivation {
     karchive kconfigwidgets kdbusaddons ki18n kiconthemes knotifications
     ktextwidgets kwallet kwidgetsaddons kwindowsystem qtscript qtx11extras
     kcrash libkrb5
-  ] ++ lib.lists.optionals stdenv.isLinux [
+  ] ++ lib.lists.optionals stdenv.hostPlatform.isLinux [
     acl attr # both are needed for ACL support
     util-linux # provides libmount
   ];
   propagatedBuildInputs = [
     kbookmarks kcompletion kconfig kcoreaddons kitemviews kjobwidgets kservice
     kxmlgui qtbase qttools solid
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     kded
   ];
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/kde-frameworks/kitemviews.nix b/pkgs/development/libraries/kde-frameworks/kitemviews.nix
index ef350835f05df..20ae20f9e99e9 100644
--- a/pkgs/development/libraries/kde-frameworks/kitemviews.nix
+++ b/pkgs/development/libraries/kde-frameworks/kitemviews.nix
@@ -1,5 +1,5 @@
 {
-  mkDerivation, lib,
+  mkDerivation,
   extra-cmake-modules,
   qtbase, qttools
 }:
diff --git a/pkgs/development/libraries/kde-frameworks/knotifications.nix b/pkgs/development/libraries/kde-frameworks/knotifications.nix
index 5284d673d89e1..d9d5a6f703809 100644
--- a/pkgs/development/libraries/kde-frameworks/knotifications.nix
+++ b/pkgs/development/libraries/kde-frameworks/knotifications.nix
@@ -11,7 +11,7 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules qttools ];
   buildInputs = [
     kcodecs kconfig kcoreaddons kwindowsystem libdbusmenu phonon qtx11extras
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     qtmacextras
   ];
 }
diff --git a/pkgs/development/libraries/kde-frameworks/kquickcharts.nix b/pkgs/development/libraries/kde-frameworks/kquickcharts.nix
index 20c1b2368a7b5..a7e42f48c18d6 100644
--- a/pkgs/development/libraries/kde-frameworks/kquickcharts.nix
+++ b/pkgs/development/libraries/kde-frameworks/kquickcharts.nix
@@ -1,7 +1,7 @@
 {
   mkDerivation,
   extra-cmake-modules,
-  qtquickcontrols2, qtbase,
+  qtquickcontrols2,
 }:
 
 mkDerivation {
diff --git a/pkgs/development/libraries/kde-frameworks/ktexteditor.nix b/pkgs/development/libraries/kde-frameworks/ktexteditor.nix
index ccc9f76b237ac..23abe70fed05e 100644
--- a/pkgs/development/libraries/kde-frameworks/ktexteditor.nix
+++ b/pkgs/development/libraries/kde-frameworks/ktexteditor.nix
@@ -15,7 +15,7 @@ mkDerivation ({
     editorconfig-core-c
   ];
   propagatedBuildInputs = [ kparts ];
-} // lib.optionalAttrs stdenv.isDarwin {
+} // lib.optionalAttrs stdenv.hostPlatform.isDarwin {
   postPatch = ''
     substituteInPlace src/part/CMakeLists.txt \
       --replace "kpart.desktop" "${kparts}/share/kservicetypes5/kpart.desktop"
diff --git a/pkgs/development/libraries/kde-frameworks/kwayland.nix b/pkgs/development/libraries/kde-frameworks/kwayland.nix
index fbe7d70ec2f1b..4d461f6a07c96 100644
--- a/pkgs/development/libraries/kde-frameworks/kwayland.nix
+++ b/pkgs/development/libraries/kde-frameworks/kwayland.nix
@@ -1,12 +1,12 @@
 {
   mkDerivation, propagateBin, lib,
-  extra-cmake-modules,
+  extra-cmake-modules, wayland-scanner,
   plasma-wayland-protocols, qtbase, wayland, wayland-protocols
 }:
 
 mkDerivation {
   pname = "kwayland";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ extra-cmake-modules wayland-scanner ];
   buildInputs = [ plasma-wayland-protocols wayland wayland-protocols ];
   propagatedBuildInputs = [ qtbase ];
   setupHook = propagateBin; # XDG_CONFIG_DIRS
diff --git a/pkgs/development/libraries/kde-frameworks/solid/default.nix b/pkgs/development/libraries/kde-frameworks/solid/default.nix
index 27160c3bda0d9..e26f8bfa9a62a 100644
--- a/pkgs/development/libraries/kde-frameworks/solid/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/solid/default.nix
@@ -8,8 +8,8 @@ mkDerivation {
   pname = "solid";
   patches = [ ./fix-search-path.patch ];
   nativeBuildInputs = [ bison extra-cmake-modules flex ]
-    ++ lib.optionals stdenv.isLinux [ media-player-info ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ media-player-info ];
   buildInputs = [ qtdeclarative qttools ];
   propagatedBuildInputs = [ qtbase ];
-  propagatedUserEnvPkgs = lib.optionals stdenv.isLinux [ media-player-info ];
+  propagatedUserEnvPkgs = lib.optionals stdenv.hostPlatform.isLinux [ media-player-info ];
 }
diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix
index 73bb856de4163..ab9a107cd47e1 100644
--- a/pkgs/development/libraries/kerberos/heimdal.nix
+++ b/pkgs/development/libraries/kerberos/heimdal.nix
@@ -17,7 +17,6 @@
 , db
 , libedit
 , pam
-, krb5
 , libmicrohttpd
 , cjson
 
@@ -26,17 +25,17 @@
 , SystemConfiguration
 
 , curl
-, jdk
+, jdk_headless
 , unzip
 , which
 
 , nixosTests
 
 , withCJSON ? true
-, withCapNG ? stdenv.isLinux
+, withCapNG ? stdenv.hostPlatform.isLinux
 # libmicrohttpd should theoretically work for darwin as well, but something is broken.
 # It affects tests check-bx509d and check-httpkadmind.
-, withMicroHTTPD ? stdenv.isLinux
+, withMicroHTTPD ? stdenv.hostPlatform.isLinux
 , withOpenLDAP ? true
 , withOpenLDAPAsHDBModule ? false
 , withOpenSSL ? true
@@ -72,7 +71,7 @@ stdenv.mkDerivation {
   ++ (with perlPackages; [ JSON ]);
 
   buildInputs = [ db libedit pam ]
-    ++ lib.optionals (stdenv.isDarwin) [ CoreFoundation Security SystemConfiguration ]
+    ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ CoreFoundation Security SystemConfiguration ]
     ++ lib.optionals (withCJSON) [ cjson ]
     ++ lib.optionals (withCapNG) [ libcap_ng ]
     ++ lib.optionals (withMicroHTTPD) [ libmicrohttpd ]
@@ -83,7 +82,7 @@ stdenv.mkDerivation {
   doCheck = true;
   nativeCheckInputs = [
     curl
-    jdk
+    jdk_headless
     unzip
     which
   ];
@@ -133,7 +132,7 @@ stdenv.mkDerivation {
 
   # (test_cc) heimdal uses librokens implementation of `secure_getenv` on darwin,
   #           which expects either USER or LOGNAME to be set.
-  preCheck = lib.optionalString (stdenv.isDarwin) ''
+  preCheck = lib.optionalString (stdenv.hostPlatform.isDarwin) ''
     export USER=nix-builder
   '';
 
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index 8dd68af4fd1d5..a384d49fed035 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -1,5 +1,13 @@
-{ lib, stdenv, fetchurl, pkg-config, perl, bison, bootstrap_cmds
-, openssl, openldap, libedit, keyutils, libverto, darwin
+{ lib
+, stdenv
+, fetchurl
+, bootstrap_cmds
+, byacc # can also use bison, but byacc has fewer dependencies
+, darwin
+, keyutils
+, openssl
+, perl
+, pkg-config
 
 # for passthru.tests
 , bind
@@ -10,61 +18,58 @@
 , python3
 
 # Extra Arguments
-, type ? ""
+, withLdap ? false, openldap
+, withLibedit ? true, libedit
+, withVerto ? false, libverto
+
 # This is called "staticOnly" because krb5 does not support
 # builting both static and shared, see below.
 , staticOnly ? false
-, withLdap ? false
-, withVerto ? false
 }:
 
-# Note: this package is used for bootstrapping fetchurl, and thus
-# cannot use fetchpatch! All mutable patches (generated by GitHub or
-# cgit) that are needed here should be included directly in Nixpkgs as
-# files.
-
-let
-  libOnly = type == "lib";
-in
-
-assert withLdap -> !libOnly;
-
 stdenv.mkDerivation rec {
-  pname = "${type}krb5";
-  version = "1.21.2";
+  pname = "krb5";
+  version = "1.21.3";
 
   src = fetchurl {
     url = "https://kerberos.org/dist/krb5/${lib.versions.majorMinor version}/krb5-${version}.tar.gz";
-    hash = "sha256-lWCUGp2EPAJDpxsXp6xv4xx867W845g9t55Srn6FBJE=";
+    hash = "sha256-t6TNXq1n+wi5gLIavRUP9yF+heoyDJ7QxtrdMEhArTU=";
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "lib" "dev" ];
+
+  # While "out" acts as the bin output, most packages only care about the lib output.
+  # We set prefix such that all the pkg-config configuration stays inside the dev and lib outputs.
+  # stdenv will take care of overriding bindir, sbindir, etc. such that "out" contains the binaries.
+  prefix = builtins.placeholder "lib";
 
-  configureFlags = [ "--localstatedir=/var/lib" ]
+  configureFlags = [
+      "--localstatedir=/var/lib"
+      (lib.withFeature withLdap "ldap")
+      (lib.withFeature withLibedit "libedit")
+      (lib.withFeature withVerto "system-verto")
+    ]
     # krb5's ./configure does not allow passing --enable-shared and --enable-static at the same time.
     # See https://bbs.archlinux.org/viewtopic.php?pid=1576737#p1576737
     ++ lib.optionals staticOnly [ "--enable-static" "--disable-shared" ]
-    ++ lib.optional withLdap "--with-ldap"
-    ++ lib.optional withVerto "--with-system-verto"
-    ++ lib.optional stdenv.isFreeBSD ''WARN_CFLAGS=''
+    ++ lib.optional stdenv.hostPlatform.isFreeBSD ''WARN_CFLAGS=''
     ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform)
        [ "krb5_cv_attr_constructor_destructor=yes,yes"
          "ac_cv_func_regcomp=yes"
          "ac_cv_printf_positional=yes"
        ];
 
-  nativeBuildInputs = [ pkg-config perl ]
-    ++ lib.optional (!libOnly) bison
+  nativeBuildInputs = [ byacc perl pkg-config ]
     # Provides the mig command used by the build scripts
-    ++ lib.optional stdenv.isDarwin bootstrap_cmds;
+    ++ lib.optional stdenv.hostPlatform.isDarwin bootstrap_cmds;
 
   buildInputs = [ openssl ]
     ++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.libc != "bionic" && !(stdenv.hostPlatform.useLLVM or false)) [ keyutils ]
-    ++ lib.optionals (!libOnly) [ libedit ]
     ++ lib.optionals withLdap [ openldap ]
+    ++ lib.optionals withLibedit [ libedit ]
     ++ lib.optionals withVerto [ libverto ];
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk; [
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk; [
     libs.xpc
     frameworks.Kerberos
   ]);
@@ -73,7 +78,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     substituteInPlace config/shlib.conf \
-        --replace "'ld " "'${stdenv.cc.targetPrefix}ld "
+      --replace "'ld " "'${stdenv.cc.targetPrefix}ld "
   ''
   # this could be accomplished by updateAutotoolsGnuConfigScriptsHook, but that causes infinite recursion
   # necessary for FreeBSD code path in configure
@@ -83,27 +88,17 @@ stdenv.mkDerivation rec {
 
   libFolders = [ "util" "include" "lib" "build-tools" ];
 
-  buildPhase = lib.optionalString libOnly ''
-    runHook preBuild
-
-    MAKE="make -j $NIX_BUILD_CORES"
-    for folder in $libFolders; do
-      $MAKE -C $folder
+  # To avoid cyclic outputs, we can't let lib depend on out in any way. Unfortunately, the configure
+  # options don't give us enough granularity to specify that, so we have to override the generated
+  # Makefiles manually.
+  postConfigure = ''
+    find $libFolders -type f -name Makefile -print0 | while IFS= read -rd "" f; do
+      substituteInPlace "$f" --replace-fail "$out" "$lib"
     done
-
-    runHook postBuild
   '';
 
-  installPhase = lib.optionalString libOnly ''
-    runHook preInstall
-
-    mkdir -p "$out"/{bin,sbin,lib/pkgconfig,share/{et,man/man1}} \
-      "$dev"/include/{gssapi,gssrpc,kadm5,krb5}
-    for folder in $libFolders; do
-      $MAKE -C $folder install
-    done
-
-    runHook postInstall
+  preInstall = ''
+    mkdir -p "$lib"/{bin,sbin,lib/pkgconfig,share/{et,man/man1}}
   '';
 
   # not via outputBin, due to reference from libkrb5.so
@@ -111,6 +106,14 @@ stdenv.mkDerivation rec {
     moveToOutput bin/krb5-config "$dev"
   '';
 
+  # Disable _multioutDocs in stdenv by overriding it to be a no-op.
+  # We do this because $lib has its own docs and we don't want to squash them into $out.
+  preFixup = ''
+    _multioutDocs() {
+      echo Skipping multioutDocs
+    }
+  '';
+
   enableParallelBuilding = true;
   doCheck = false; # fails with "No suitable file for testing purposes"
 
diff --git a/pkgs/development/libraries/keybinder/default.nix b/pkgs/development/libraries/keybinder/default.nix
index 2efbf85d47c72..38b1dafa00663 100644
--- a/pkgs/development/libraries/keybinder/default.nix
+++ b/pkgs/development/libraries/keybinder/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome-common
 , gtk-doc, gtk2, lua, gobject-introspection
 }:
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config autoconf automake gobject-introspection ];
 
   buildInputs = [
-    libtool gnome.gnome-common gtk-doc gtk2
+    libtool gnome-common gtk-doc gtk2
     lua
   ];
 
diff --git a/pkgs/development/libraries/keybinder3/default.nix b/pkgs/development/libraries/keybinder3/default.nix
index e7bbd2b131d53..3ee266ee3a18a 100644
--- a/pkgs/development/libraries/keybinder3/default.nix
+++ b/pkgs/development/libraries/keybinder3/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, gnome-common
 , gtk-doc, gtk3, libX11, libXext, libXrender, gobject-introspection
 }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     automake
     libtool
     pkg-config
-    gnome.gnome-common
+    gnome-common
     gtk-doc
     gobject-introspection
   ];
diff --git a/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
index 330657f41fd00..56dbe1fa9179f 100644
--- a/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
+++ b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opencl-icd-loader";
-  version = "2023.12.14";
+  version = "2024.05.08";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-ICD-Loader";
     rev = "v${version}";
-    hash = "sha256-/4ixQAwJpygdg+qtR1ccBlz8hmtYYxRgUV5dlJabsg8=";
+    hash = "sha256-wFwc1ku3FNEH2k8TJij2sT7JspWorR/XbxXwPZaQcGA=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/kissfft/0001-pkgconfig-darwin.patch b/pkgs/development/libraries/kissfft/0001-pkgconfig-darwin.patch
deleted file mode 100644
index 534d46f0c8ba3..0000000000000
--- a/pkgs/development/libraries/kissfft/0001-pkgconfig-darwin.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From c0dc376be9154d143574a818417ceed23308b5f2 Mon Sep 17 00:00:00 2001
-From: OPNA2608 <christoph.neidahl@gmail.com>
-Date: Sun, 18 Apr 2021 01:45:20 +0200
-Subject: [PATCH] pkgconfig darwin
-
----
- Makefile | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 971c6d6..0f4be0c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -153,7 +153,6 @@ endif
- # -DKISS_FFT_BUILD to TYPEFLAGS
- #
- 
--ifneq ($(shell uname -s),Darwin)
- 	PKGCONFIG_KISSFFT_VERSION = $(KFVER_MAJOR).$(KFVER_MINOR).$(KFVER_PATCH)
- 	PKGCONFIG_KISSFFT_OUTPUT_NAME = $(KISSFFTLIB_SHORTNAME)
- 	PKGCONFIG_PKG_KISSFFT_DEFS = $(TYPEFLAGS)
-@@ -170,7 +169,6 @@ ifneq ($(shell uname -s),Darwin)
- 	PKGCONFIG_KISSFFT_LIBDIR = $(ABS_LIBDIR)
-   endif
- 	PKGCONFIG_KISSFFT_PKGINCLUDEDIR = $${includedir}/kissfft
--endif
- 
- export TYPEFLAGS
- 
-@@ -226,7 +224,6 @@ ifneq ($(KISSFFT_STATIC), 1)
- 	ln -sf $(KISSFFTLIB_NAME) $(KISSFFTLIB_SODEVELNAME)
-   endif
- endif
--ifneq ($(shell uname -s),Darwin)
- 	mkdir "$(ABS_LIBDIR)/pkgconfig"
- 	sed \
- 		-e 's+@PKGCONFIG_KISSFFT_VERSION@+$(PKGCONFIG_KISSFFT_VERSION)+' \
-@@ -238,7 +235,6 @@ ifneq ($(shell uname -s),Darwin)
- 		-e 's+@PKGCONFIG_KISSFFT_LIBDIR@+$(PKGCONFIG_KISSFFT_LIBDIR)+' \
- 		-e 's+@PKGCONFIG_KISSFFT_PKGINCLUDEDIR@+$(PKGCONFIG_KISSFFT_PKGINCLUDEDIR)+' \
- 		kissfft.pc.in 1>"$(ABS_LIBDIR)/pkgconfig/$(KISSFFT_PKGCONFIG)"
--endif
- ifneq ($(KISSFFT_TOOLS), 0)
- 	make -C tools install
- endif
--- 
-2.29.3
-
diff --git a/pkgs/development/libraries/kissfft/default.nix b/pkgs/development/libraries/kissfft/default.nix
deleted file mode 100644
index df2b9d5561f52..0000000000000
--- a/pkgs/development/libraries/kissfft/default.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fftw
-, fftwFloat
-, python3
-, datatype ? "double"
-, withTools ? false
-, libpng
-, enableStatic ? stdenv.hostPlatform.isStatic
-, enableOpenmp ? false
-, llvmPackages
-}:
-let
-  py = python3.withPackages (ps: with ps; [ numpy ]);
-  option = cond: if cond then "1" else "0";
-in
-stdenv.mkDerivation rec {
-  pname = "kissfft-${datatype}${lib.optionalString enableOpenmp "-openmp"}";
-  version = "131.1.0";
-
-  src = fetchFromGitHub {
-    owner = "mborgerding";
-    repo = "kissfft";
-    rev = version;
-    sha256 = "1yfws5bn4kh62yk6hdyp9h9775l6iz7wsfisbn58jap6b56s8j5s";
-  };
-
-  patches = [
-    ./0001-pkgconfig-darwin.patch
-  ];
-
-  # https://bugs.llvm.org/show_bug.cgi?id=45034
-  postPatch = lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.cc.isClang && lib.versionOlder stdenv.cc.version "10") ''
-    substituteInPlace test/Makefile \
-      --replace "-ffast-math" ""
-  ''
-  + lib.optionalString (stdenv.hostPlatform.isDarwin) ''
-    substituteInPlace test/Makefile \
-      --replace "LD_LIBRARY_PATH" "DYLD_LIBRARY_PATH"
-    # Don't know how to make math.h's double long constants available
-    substituteInPlace test/testcpp.cc \
-      --replace "M_PIl" "M_PI"
-  '';
-
-  makeFlags = [
-    "PREFIX=${placeholder "out"}"
-    "KISSFFT_DATATYPE=${datatype}"
-    "KISSFFT_TOOLS=${option withTools}"
-    "KISSFFT_STATIC=${option enableStatic}"
-    "KISSFFT_OPENMP=${option enableOpenmp}"
-  ];
-
-  buildInputs = lib.optionals (withTools && datatype != "simd") [ libpng ]
-    # TODO: This may mismatch the LLVM version in the stdenv, see #79818.
-    ++ lib.optional (enableOpenmp && stdenv.cc.isClang) llvmPackages.openmp;
-
-  doCheck = true;
-
-  nativeCheckInputs = [
-    py
-    (if datatype == "float" then fftwFloat else fftw)
-  ];
-
-  checkFlags = [ "testsingle" ];
-
-  postInstall = ''
-    ln -s ${pname}.pc $out/lib/pkgconfig/kissfft.pc
-  '';
-
-  # Tools can't find kissfft libs on Darwin
-  postFixup = lib.optionalString (withTools && stdenv.hostPlatform.isDarwin) ''
-    for bin in $out/bin/*; do
-      install_name_tool -change lib${pname}.dylib $out/lib/lib${pname}.dylib $bin
-    done
-  '';
-
-  meta = with lib; {
-    description = "Mixed-radix Fast Fourier Transform based up on the KISS principle";
-    homepage = "https://github.com/mborgerding/kissfft";
-    license = licenses.bsd3;
-    maintainers = [ maintainers.goibhniu ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/kmsxx/default.nix b/pkgs/development/libraries/kmsxx/default.nix
index a07bc73a64ce8..0347339205c65 100644
--- a/pkgs/development/libraries/kmsxx/default.nix
+++ b/pkgs/development/libraries/kmsxx/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
     repo = "kmsxx";
     fetchSubmodules = true;
     rev = "54f591ec0de61dd192baf781c9b2ec87d5b461f7";
-    sha256 = "sha256-j+20WY4a2iTKZnYjXhxbNnZZ53K3dHpDMTp+ZulS+7c=";
+    hash = "sha256-j+20WY4a2iTKZnYjXhxbNnZZ53K3dHpDMTp+ZulS+7c=";
   };
 
   # Didn't detect pybind11 without cmake
@@ -37,7 +37,7 @@ stdenv.mkDerivation {
     description = "C++11 library, utilities and python bindings for Linux kernel mode setting";
     homepage = "https://github.com/tomba/kmsxx";
     license = licenses.mpl20;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/kronosnet/default.nix b/pkgs/development/libraries/kronosnet/default.nix
index bff25956f7a95..dc73e71111c47 100644
--- a/pkgs/development/libraries/kronosnet/default.nix
+++ b/pkgs/development/libraries/kronosnet/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kronosnet";
-  version = "1.28";
+  version = "1.29";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HxdZy2TiQT7pWyhaSq4YJAcqjykzWy1aI3gEZrlbghQ=";
+    sha256 = "sha256-GRjoNNF9jW2uNQAJjOM9TQtq9rS+12s94LhCXQr5aoQ=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config doxygen ];
diff --git a/pkgs/development/libraries/ktextaddons/default.nix b/pkgs/development/libraries/ktextaddons/default.nix
index b648109d150e8..15286ff162cc9 100644
--- a/pkgs/development/libraries/ktextaddons/default.nix
+++ b/pkgs/development/libraries/ktextaddons/default.nix
@@ -15,6 +15,6 @@ mkDerivation rec {
     description = "Various text handling addons for KDE applications";
     homepage = "https://invent.kde.org/libraries/ktextaddons/";
     license = licenses.gpl2Plus;
-    maintainers = [];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/kyotocabinet/default.nix b/pkgs/development/libraries/kyotocabinet/default.nix
index 5c5ab34bc24cb..ebe783ae8beb7 100644
--- a/pkgs/development/libraries/kyotocabinet/default.nix
+++ b/pkgs/development/libraries/kyotocabinet/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-TIXXNmaNgpIL/b25KsPWa32xEI8JWBp2ndkWCgLe80k=";
   };
 
-  prePatch = lib.optionalString stdenv.isDarwin ''
+  prePatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace kccommon.h \
       --replace tr1/unordered_map unordered_map \
       --replace tr1/unordered_set unordered_set \
diff --git a/pkgs/development/libraries/l-smash/default.nix b/pkgs/development/libraries/l-smash/default.nix
index 40eb4bd10d36e..1439c1046fe2b 100644
--- a/pkgs/development/libraries/l-smash/default.nix
+++ b/pkgs/development/libraries/l-smash/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     homepage = "http://l-smash.github.io/l-smash/";
     description = "MP4 container utilities";
     license = licenses.isc;
-    maintainers = with maintainers; [ tadeokondrak ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/lasso/default.nix b/pkgs/development/libraries/lasso/default.nix
index e3f91c3d827c6..7b2965f1f7305 100644
--- a/pkgs/development/libraries/lasso/default.nix
+++ b/pkgs/development/libraries/lasso/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , autoreconfHook
 , fetchurl
+, fetchpatch
 , glib
 , gobject-introspection
 , gtk-doc
@@ -23,6 +24,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-ahgxv9v49CTHUIq6R7BF1RNB7A/ekSLziwuGsJbvUz4=";
   };
 
+  patches = [
+    # Fix build with xmlsec 1.3.0
+    (fetchpatch {
+      url = "https://git.entrouvert.org/entrouvert/lasso/commit/ffaddeb015a61db3e52c391de00430107a23e2f1.patch";
+      hash = "sha256-D2npxpIuR/KrNYiKO3KXCvHEb/XVXUKIP0HQUd+w56k=";
+    })
+  ];
+
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
diff --git a/pkgs/development/libraries/lcrq/default.nix b/pkgs/development/libraries/lcrq/default.nix
index 3d1818cf779db..25589d28d9552 100644
--- a/pkgs/development/libraries/lcrq/default.nix
+++ b/pkgs/development/libraries/lcrq/default.nix
@@ -5,14 +5,14 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "lcrq";
-  version = "0.1.2";
+  version = "0.2.1";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "librecast";
     repo = "lcrq";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-r4UiZ9oNDxF3rHMqg+1NLLjm6LPZtzgtZOs7pRe5SdQ=";
+    hash = "sha256-xhv1rU0CImd5vs0bMdF1eJZt2AToU/JhBsoCsCLdyyg=";
   };
 
   installFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/development/libraries/ldacbt/default.nix b/pkgs/development/libraries/ldacbt/default.nix
index a467eb8e0d51c..b11da8cb59d38 100644
--- a/pkgs/development/libraries/ldacbt/default.nix
+++ b/pkgs/development/libraries/ldacbt/default.nix
@@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
     license     = licenses.asl20;
     # libldac code detects & #error's out on non-LE byte order
     platforms   = platforms.littleEndian;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/ldb/default.nix b/pkgs/development/libraries/ldb/default.nix
index 6c5fa48affc1a..65fc10c92a70b 100644
--- a/pkgs/development/libraries/ldb/default.nix
+++ b/pkgs/development/libraries/ldb/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "ldb";
-  version = "2.9.0";
+  version = "2.9.1";
 
   src = fetchurl {
-    url = "mirror://samba/ldb/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
-    hash = "sha256-EFqv9xrYgaf661gv1BauKCIbb94zj/+CgoBlBiwlB6U=";
+    url = "mirror://samba/ldb/ldb-${finalAttrs.version}.tar.gz";
+    hash = "sha256-yV5Nwy3qiGS3mJnuNAyf3yi0hvRku8OLqZFRoItJP5s=";
   };
 
   outputs = [ "out" "dev" ];
@@ -80,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "LDAP-like embedded database";
     homepage = "https://ldb.samba.org/";
     license = licenses.lgpl3Plus;
diff --git a/pkgs/development/libraries/ldutils/default.nix b/pkgs/development/libraries/ldutils/default.nix
index 157c86ec553e1..0bdd8b9ac5996 100644
--- a/pkgs/development/libraries/ldutils/default.nix
+++ b/pkgs/development/libraries/ldutils/default.nix
@@ -14,7 +14,7 @@ mkDerivation rec {
     repo = pname;
     rev = "4fc416f694ce888c5bd4c4432a7730bb6260475c";
     #rev = "v_${version}";
-    sha256 = "sha256-UMDayvz9RlcR4HVJNn7tN4FKbiKAFRSPaK0osA6OGTI=";
+    hash = "sha256-UMDayvz9RlcR4HVJNn7tN4FKbiKAFRSPaK0osA6OGTI=";
   };
 
   buildInputs = with libsForQt5.qt5; [
diff --git a/pkgs/development/libraries/lemon-graph/default.nix b/pkgs/development/libraries/lemon-graph/default.nix
index ae071a7271333..4e96e9f4c93a0 100644
--- a/pkgs/development/libraries/lemon-graph/default.nix
+++ b/pkgs/development/libraries/lemon-graph/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   # error: no viable conversion from ...
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   patches = [
     # error: ISO C++17 does not allow 'register' storage class specifier
diff --git a/pkgs/development/libraries/lensfun/default.nix b/pkgs/development/libraries/lensfun/default.nix
index 82e519f6f100e..8972485bb2824 100644
--- a/pkgs/development/libraries/lensfun/default.nix
+++ b/pkgs/development/libraries/lensfun/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, glib, zlib, libpng, cmake, libxml2, python3 }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, glib, zlib, libpng, cmake, python3 }:
 
 let
   version = "0.3.4";
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
 
   buildInputs = [ glib zlib libpng ];
 
-  cmakeFlags = [ "-DINSTALL_HELPER_SCRIPTS=OFF" "-DCMAKE_BUILD_TYPE=RELEASE" ];
+  cmakeFlags = [ "-DINSTALL_HELPER_SCRIPTS=OFF" ];
 
   meta = with lib; {
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/development/libraries/leptonica/default.nix b/pkgs/development/libraries/leptonica/default.nix
index 12cd3f074fcbc..41af5b44a9675 100644
--- a/pkgs/development/libraries/leptonica/default.nix
+++ b/pkgs/development/libraries/leptonica/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   nativeCheckInputs = [ which gnuplot ];
 
   # Fails on pngio_reg for unknown reason
-  doCheck = false; # !stdenv.isDarwin;
+  doCheck = false; # !stdenv.hostPlatform.isDarwin;
 
   meta = {
     description = "Image processing and analysis library";
diff --git a/pkgs/development/libraries/lerc/default.nix b/pkgs/development/libraries/lerc/default.nix
index f7bba5125a72b..463344f5b7f68 100644
--- a/pkgs/development/libraries/lerc/default.nix
+++ b/pkgs/development/libraries/lerc/default.nix
@@ -3,9 +3,10 @@
 , fetchFromGitHub
 , fetchpatch
 , cmake
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "lerc";
   version = "4.0.0";
 
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "esri";
     repo = "lerc";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-IHY9QtNYsxPz/ksxRMZGHleT+/bawfTYNVRSTAuYQ7Y=";
   };
 
@@ -31,10 +32,15 @@ stdenv.mkDerivation rec {
     cmake
   ];
 
+  passthru.tests.pkg-config = testers.hasPkgConfigModules {
+    package = finalAttrs.finalPackage;
+  };
+
   meta = {
     description = "C++ library for Limited Error Raster Compression";
     homepage = "https://github.com/esri/lerc";
     license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ dotlambda ];
+    pkgConfigModules = [ "Lerc" ];
   };
-}
+})
diff --git a/pkgs/development/libraries/level-zero/default.nix b/pkgs/development/libraries/level-zero/default.nix
index db99f73cd796b..8b87f0af9f9b1 100644
--- a/pkgs/development/libraries/level-zero/default.nix
+++ b/pkgs/development/libraries/level-zero/default.nix
@@ -1,5 +1,5 @@
 { lib
-, addOpenGLRunpath
+, addDriverRunpath
 , cmake
 , fetchFromGitHub
 , intel-compute-runtime
@@ -9,19 +9,19 @@
 
 stdenv.mkDerivation rec {
   pname = "level-zero";
-  version = "1.17.6";
+  version = "1.17.42";
 
   src = fetchFromGitHub {
     owner = "oneapi-src";
     repo = "level-zero";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vtijha0nXHEp5oLnmdtbD80Qa2dgMykZXhQ2yfbk+mY=";
+    hash = "sha256-IjYRzjC7CUPDdVBVoWSZtUQaY7QtSfS/Nej/2BdVziY=";
   };
 
-  nativeBuildInputs = [ cmake addOpenGLRunpath ];
+  nativeBuildInputs = [ cmake addDriverRunpath ];
 
   postFixup = ''
-    addOpenGLRunpath $out/lib/libze_loader.so
+    addDriverRunpath $out/lib/libze_loader.so
   '';
 
   passthru.tests = {
diff --git a/pkgs/development/libraries/leveldb/default.nix b/pkgs/development/libraries/leveldb/default.nix
index f5e7e2a638d23..9d2dfe468029c 100644
--- a/pkgs/development/libraries/leveldb/default.nix
+++ b/pkgs/development/libraries/leveldb/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ snappy ];
 
-  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames ++ [ cmake ];
+  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames ++ [ cmake ];
 
   doCheck = true;
 
diff --git a/pkgs/development/libraries/lib2geom/default.nix b/pkgs/development/libraries/lib2geom/default.nix
index e0db2b76f19e0..eedb433e61be2 100644
--- a/pkgs/development/libraries/lib2geom/default.nix
+++ b/pkgs/development/libraries/lib2geom/default.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
   # TODO: Update cmake hook to make it simpler to selectively disable cmake tests: #113829
   checkPhase = let
     disabledTests =
-      lib.optionals stdenv.isAarch64 [
+      lib.optionals stdenv.hostPlatform.isAarch64 [
         # Broken on all platforms, test just accidentally passes on some.
         # https://gitlab.com/inkscape/lib2geom/-/issues/63
         "elliptical-arc-test"
diff --git a/pkgs/development/libraries/lib3mf/default.nix b/pkgs/development/libraries/lib3mf/default.nix
index 2436fbc002872..df88534bc6e74 100644
--- a/pkgs/development/libraries/lib3mf/default.nix
+++ b/pkgs/development/libraries/lib3mf/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     libzip gtest openssl
-  ] ++ (if stdenv.isDarwin then [ libossp_uuid ] else [ libuuid ]);
+  ] ++ (if stdenv.hostPlatform.isDarwin then [ libossp_uuid ] else [ libuuid ]);
 
   postPatch = ''
     # This lets us build the tests properly on aarch64-darwin.
diff --git a/pkgs/development/libraries/libLAS/default.nix b/pkgs/development/libraries/libLAS/default.nix
index 4b00de8115735..f9bd013065852 100644
--- a/pkgs/development/libraries/libLAS/default.nix
+++ b/pkgs/development/libraries/libLAS/default.nix
@@ -45,15 +45,15 @@ stdenv.mkDerivation rec {
     "-DCMAKE_EXE_LINKER_FLAGS=-pthread"
   ];
 
-  postFixup = lib.optionalString stdenv.isDarwin ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -change "@rpath/liblas.3.dylib" "$out/lib/liblas.3.dylib" $out/lib/liblas_c.dylib
   '';
 
-  meta = {
+  meta = with lib; {
     description = "LAS 1.0/1.1/1.2 ASPRS LiDAR data translation toolset";
     homepage = "https://liblas.org";
-    license = lib.licenses.bsd3;
-    platforms = lib.platforms.unix;
-    maintainers = [ lib.maintainers.michelk ];
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; teams.geospatial.members ++ [ lib.maintainers.michelk ];
   };
 }
diff --git a/pkgs/development/libraries/libabigail/default.nix b/pkgs/development/libraries/libabigail/default.nix
index 4ca2eb75b44f3..fcfc88cbb667b 100644
--- a/pkgs/development/libraries/libabigail/default.nix
+++ b/pkgs/development/libraries/libabigail/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libabigail";
-  version = "2.1";
+  version = "2.5";
 
   outputs = [ "bin" "out" "dev" ];
 
   src = fetchurl {
-    url = "https://mirrors.kernel.org/sourceware/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-SmKX1B0V0ZNiVhFxFr1hKW5rm+4j1UoMr40/WrjdzEw=";
+    url = "https://mirrors.kernel.org/sourceware/${pname}/${pname}-${version}.tar.xz";
+    hash = "sha256-fPxOmwCuONh/sMY76rsyucv5zkEOUs7rWtWzxb6xEfM=";
   };
 
   nativeBuildInputs = [
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     description = "ABI Generic Analysis and Instrumentation Library";
     homepage = "https://sourceware.org/libabigail/";
     license = licenses.asl20-llvm;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libabw/default.nix b/pkgs/development/libraries/libabw/default.nix
index 3da65787e0363..5476b3c7402b5 100644
--- a/pkgs/development/libraries/libabw/default.nix
+++ b/pkgs/development/libraries/libabw/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, boost, doxygen, gperf, pkg-config, librevenge, libxml2, perl }:
+{ lib, stdenv, fetchurl, boost, doxygen, gperf, pkg-config, librevenge, libxml2, perl, zlib }:
 
 stdenv.mkDerivation rec {
   pname = "libabw";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ boost doxygen gperf librevenge libxml2 perl ];
+  buildInputs = [ boost doxygen gperf librevenge libxml2 perl zlib ];
 
   meta = with lib; {
     homepage = "https://wiki.documentfoundation.org/DLP/Libraries/libabw";
diff --git a/pkgs/development/libraries/libaccounts-glib/default.nix b/pkgs/development/libraries/libaccounts-glib/default.nix
index cfac6c97ac74a..3ed46996056ae 100644
--- a/pkgs/development/libraries/libaccounts-glib/default.nix
+++ b/pkgs/development/libraries/libaccounts-glib/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "accounts-sso";
     repo = "libaccounts-glib";
     rev = "VERSION_${version}";
-    sha256 = "sha256-mLhcwp8rhCGSB1K6rTWT0tuiINzgwULwXINfCbgPKEg=";
+    hash = "sha256-mLhcwp8rhCGSB1K6rTWT0tuiINzgwULwXINfCbgPKEg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libad9361/default.nix b/pkgs/development/libraries/libad9361/default.nix
index f370870f71ef6..96f1e877d52ba 100644
--- a/pkgs/development/libraries/libad9361/default.nix
+++ b/pkgs/development/libraries/libad9361/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libiio ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     # Fix iio include path on darwin to match linux
     for i in test/*.c; do
       substituteInPlace $i \
diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix
index 449176cfd9e5e..bd51a9a1245e7 100644
--- a/pkgs/development/libraries/libadwaita/default.nix
+++ b/pkgs/development/libraries/libadwaita/default.nix
@@ -13,6 +13,7 @@
 , glib
 , gtk4
 , gnome
+, adwaita-icon-theme
 , gsettings-desktop-schemas
 , desktop-file-utils
 , xvfb-run
@@ -23,7 +24,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libadwaita";
-  version = "1.5.1";
+  version = "1.5.3";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
@@ -33,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "GNOME";
     repo = "libadwaita";
     rev = finalAttrs.version;
-    hash = "sha256-dH0VPIt6SGTDcb1I72cKnNlyqZ3dptvKmMDjOd17BfA=";
+    hash = "sha256-NCQCd/QnJg2fEI6q5ys8HQXinGnKaoxhMUHd8rwxAmk=";
   };
 
   depsBuildBuild = [
@@ -53,14 +54,14 @@ stdenv.mkDerivation (finalAttrs: {
 
   mesonFlags = [
     "-Dgtk_doc=true"
-  ] ++ lib.optionals (!finalAttrs.doCheck) [
+  ] ++ lib.optionals (!finalAttrs.finalPackage.doCheck) [
     "-Dtests=false"
   ];
 
   buildInputs = [
     appstream
     fribidi
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     AppKit
     Foundation
   ];
@@ -70,8 +71,8 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   nativeCheckInputs = [
-    gnome.adwaita-icon-theme
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+    adwaita-icon-theme
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     xvfb-run
   ];
 
@@ -79,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
   #
   # not ok /Adwaita/ButtonContent/style_class_button - Gdk-FATAL-CRITICAL:
   # gdk_macos_monitor_get_workarea: assertion 'GDK_IS_MACOS_MONITOR (self)' failed
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
   separateDebugInfo = true;
 
   checkPhase = ''
@@ -97,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
       # Tests need a cache directory
       "HOME=$TMPDIR"
     )
-    env "''${testEnvironment[@]}" ${lib.optionalString (!stdenv.isDarwin) "xvfb-run"} \
+    env "''${testEnvironment[@]}" ${lib.optionalString (!stdenv.hostPlatform.isDarwin) "xvfb-run"} \
       meson test --print-errorlogs
 
     runHook postCheck
diff --git a/pkgs/development/libraries/libagar/default.nix b/pkgs/development/libraries/libagar/default.nix
index bff80ab996db6..a6fad154ad255 100644
--- a/pkgs/development/libraries/libagar/default.nix
+++ b/pkgs/development/libraries/libagar/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, libtool, perl, bsdbuild, gettext, mandoc
-, libpng, libjpeg, libXinerama, freetype, SDL, libGLU, libGL
+, libpng, libjpeg, libXinerama, freetype, SDL, libGL
 , libsndfile, portaudio, libmysqlclient, fontconfig
 }:
 
diff --git a/pkgs/development/libraries/libagar/libagar_test.nix b/pkgs/development/libraries/libagar/libagar_test.nix
index 0582019d72f53..8fa18093aa353 100644
--- a/pkgs/development/libraries/libagar/libagar_test.nix
+++ b/pkgs/development/libraries/libagar/libagar_test.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   buildInputs = [ perl bsdbuild libagar libjpeg libpng openssl ];
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
     description = "Tests for libagar";
     mainProgram = "agartest";
     homepage = "http://libagar.org/index.html";
diff --git a/pkgs/development/libraries/libajantv2/default.nix b/pkgs/development/libraries/libajantv2/default.nix
index 278752b18738d..ed5a57ed7364e 100644
--- a/pkgs/development/libraries/libajantv2/default.nix
+++ b/pkgs/development/libraries/libajantv2/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     description = "AJA NTV2 Open Source Static Libs and Headers for building applications that only wish to statically link against";
     homepage = "https://github.com/aja-video/ntv2";
     license = with licenses; [ mit ];
-    maintainers = with maintainers; [];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libantlr3c/default.nix b/pkgs/development/libraries/libantlr3c/default.nix
index f61c0bfafc7bd..622dabd82394f 100644
--- a/pkgs/development/libraries/libantlr3c/default.nix
+++ b/pkgs/development/libraries/libantlr3c/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 ="0lpbnb4dq4azmsvlhp6khq1gy42kyqyjv8gww74g5lm2y6blm4fa";
   };
 
-  configureFlags = lib.optional stdenv.is64bit "--enable-64bit"
+  configureFlags = lib.optional stdenv.hostPlatform.is64bit "--enable-64bit"
     # libantlr3c wrongly emits the abi flags -m64 and -m32 which imply x86 archs
     # https://github.com/antlr/antlr3/issues/205
     ++ lib.optional (!stdenv.hostPlatform.isx86) "--disable-abiflags";
diff --git a/pkgs/development/libraries/libao/default.nix b/pkgs/development/libraries/libao/default.nix
index 63cb0401aae40..6c6743b2b55e8 100644
--- a/pkgs/development/libraries/libao/default.nix
+++ b/pkgs/development/libraries/libao/default.nix
@@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ] ++
     lib.optional  usePulseAudio   libpulseaudio ++
-    lib.optionals stdenv.isLinux  [ alsa-lib libcap ] ++
-    lib.optionals stdenv.isDarwin [ CoreAudio CoreServices AudioUnit ];
+    lib.optionals stdenv.hostPlatform.isLinux  [ alsa-lib libcap ] ++
+    lib.optionals stdenv.hostPlatform.isDarwin [ CoreAudio CoreServices AudioUnit ];
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://xiph.org/ao/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/development/libraries/libaom/default.nix b/pkgs/development/libraries/libaom/default.nix
index 16a9e872aae8f..01f361d054766 100644
--- a/pkgs/development/libraries/libaom/default.nix
+++ b/pkgs/development/libraries/libaom/default.nix
@@ -13,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libaom";
-  version = "3.9.0";
+  version = "3.9.1";
 
   src = fetchzip {
     url = "https://aomedia.googlesource.com/aom/+archive/v${version}.tar.gz";
-    hash = "sha256-ON/BWCO2k7fADW3ZANKjnRE8SrQZpjdyUF1N0fD/xnc=";
+    hash = "sha256-XQ1sekNZDUAiYP/HriYRj4+40PAvE/OiyG9bbrdg63I=";
     stripRoot = false;
   };
 
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     "-DCONFIG_TUNE_VMAF=1"
   ] ++ lib.optionals (isCross && !stdenv.hostPlatform.isx86) [
     "-DCMAKE_ASM_COMPILER=${stdenv.cc.targetPrefix}as"
-  ] ++ lib.optionals stdenv.isAarch32 [
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch32 [
     # armv7l-hf-multiplatform does not support NEON
     # see lib/systems/platform.nix
     "-DENABLE_NEON=0"
diff --git a/pkgs/development/libraries/libaosd/default.nix b/pkgs/development/libraries/libaosd/default.nix
index 540fc10998e5d..8068ae3edd9d9 100644
--- a/pkgs/development/libraries/libaosd/default.nix
+++ b/pkgs/development/libraries/libaosd/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       composited rendering via XComposite, as well as support for
       rendering Cairo and Pango layouts.
     '';
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     homepage = "https://github.com/atheme-legacy/libaosd";
     license = licenses.mit;
     maintainers = with maintainers; [ unode ];
diff --git a/pkgs/development/libraries/libarchive-qt/default.nix b/pkgs/development/libraries/libarchive-qt/default.nix
index 767d9228f33ad..db1fd7274747a 100644
--- a/pkgs/development/libraries/libarchive-qt/default.nix
+++ b/pkgs/development/libraries/libarchive-qt/default.nix
@@ -8,7 +8,7 @@ mkDerivation rec {
     owner = "marcusbritanicus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-31a6DsxObSJWyLfT6mVtyjloT26IwFHpH53iuyC2mco=";
+    hash = "sha256-31a6DsxObSJWyLfT6mVtyjloT26IwFHpH53iuyC2mco=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix
deleted file mode 100644
index 5e37255d235bb..0000000000000
--- a/pkgs/development/libraries/libarchive/default.nix
+++ /dev/null
@@ -1,128 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, acl
-, attr
-, autoreconfHook
-, bzip2
-, e2fsprogs
-, glibcLocalesUtf8
-, lzo
-, openssl
-, pkg-config
-, sharutils
-, xz
-, zlib
-, zstd
-# Optional but increases closure only negligibly. Also, while libxml2 builds
-# fine on windows, libarchive has trouble linking windows things it depends on
-# for some reason.
-, xarSupport ? stdenv.hostPlatform.isUnix, libxml2
-
-# for passthru.tests
-, cmake
-, nix
-, samba
-}:
-
-assert xarSupport -> libxml2 != null;
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libarchive";
-  version = "3.7.4";
-
-  src = fetchFromGitHub {
-    owner = "libarchive";
-    repo = "libarchive";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-czNKXHoEn1x4deNErnqp/NZfCglF1CxNoLtZ8tcl394=";
-  };
-
-  outputs = [ "out" "lib" "dev" ];
-
-  postPatch = let
-    skipTestPaths = [
-      # test won't work in nix sandbox
-      "libarchive/test/test_write_disk_perms.c"
-      # the filesystem does not necessarily have sparse capabilities
-      "libarchive/test/test_sparse_basic.c"
-      # the filesystem does not necessarily have hardlink capabilities
-      "libarchive/test/test_write_disk_hardlink.c"
-      # access-time-related tests flakey on some systems
-      "cpio/test/test_option_a.c"
-      "cpio/test/test_option_t.c"
-    ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
-      # only on some aarch64-linux systems?
-      "cpio/test/test_basic.c"
-      "cpio/test/test_format_newc.c"
-    ];
-    removeTest = testPath: ''
-      substituteInPlace Makefile.am --replace-fail "${testPath}" ""
-      rm "${testPath}"
-    '';
-  in ''
-    substituteInPlace Makefile.am --replace-fail '/bin/pwd' "$(type -P pwd)"
-
-    ${lib.concatStringsSep "\n" (map removeTest skipTestPaths)}
-  '';
-
-  nativeBuildInputs = [
-    autoreconfHook
-    glibcLocalesUtf8 # test_I test requires an UTF-8 locale
-    pkg-config
-  ];
-
-  buildInputs =  [
-    bzip2
-    lzo
-    openssl
-    xz
-    zlib
-    zstd
-  ] ++ lib.optional stdenv.hostPlatform.isUnix sharutils
-    ++ lib.optionals stdenv.isLinux [ acl attr e2fsprogs ]
-    ++ lib.optional xarSupport libxml2;
-
-  # Without this, pkg-config-based dependencies are unhappy
-  propagatedBuildInputs = lib.optionals stdenv.isLinux [ attr acl ];
-
-  configureFlags = lib.optional (!xarSupport) "--without-xml2";
-
-  preBuild = lib.optionalString stdenv.isCygwin ''
-    echo "#include <windows.h>" >> config.h
-  '';
-
-  # https://github.com/libarchive/libarchive/issues/1475
-  doCheck = !stdenv.hostPlatform.isMusl;
-
-  preCheck = ''
-    # Need an UTF-8 locale for test_I test.
-    export LANG=en_US.UTF-8
-  '';
-
-  preFixup = ''
-    sed -i $lib/lib/libarchive.la \
-      -e 's|-lcrypto|-L${lib.getLib openssl}/lib -lcrypto|' \
-      -e 's|-llzo2|-L${lzo}/lib -llzo2|'
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    homepage = "http://libarchive.org";
-    description = "Multi-format archive and compression library";
-    longDescription = ''
-      The libarchive project develops a portable, efficient C library that can
-      read and write streaming archives in a variety of formats. It also
-      includes implementations of the common tar, cpio, and zcat command-line
-      tools that use the libarchive library.
-    '';
-    changelog = "https://github.com/libarchive/libarchive/releases/tag/v${finalAttrs.version}";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ jcumming AndersonTorres ];
-    platforms = platforms.all;
-  };
-
-  passthru.tests = {
-    inherit cmake nix samba;
-  };
-})
diff --git a/pkgs/development/libraries/libargon2/default.nix b/pkgs/development/libraries/libargon2/default.nix
index 6e2ef83c5eace..ccd8166ca4f0d 100644
--- a/pkgs/development/libraries/libargon2/default.nix
+++ b/pkgs/development/libraries/libargon2/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "0p4ry9dn0mi9js0byijxdyiwx74p1nr8zj7wjpd1fjgqva4sk23i";
   };
 
-  nativeBuildInputs = lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
diff --git a/pkgs/development/libraries/libargs/default.nix b/pkgs/development/libraries/libargs/default.nix
index 0ad0a264f0074..227afc0eb1f83 100644
--- a/pkgs/development/libraries/libargs/default.nix
+++ b/pkgs/development/libraries/libargs/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "Simple header-only C++ argument parser library";
     homepage = "https://github.com/Taywee/args";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libass/default.nix b/pkgs/development/libraries/libass/default.nix
index ad94f55ccb6df..db5603ac4aea1 100644
--- a/pkgs/development/libraries/libass/default.nix
+++ b/pkgs/development/libraries/libass/default.nix
@@ -11,11 +11,11 @@ assert fontconfigSupport -> fontconfig != null;
 
 stdenv.mkDerivation rec {
   pname = "libass";
-  version = "0.17.1";
+  version = "0.17.3";
 
   src = fetchurl {
     url = "https://github.com/libass/libass/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-8NoLv7pHbBauPhz9hiJW0wkVkR96uqGxbOYu5lMZJ4Q=";
+    hash = "sha256-6uQl2lDwAVwh97OpxyYqkQ8CGK9GniLikxRi/tPFCVk=";
   };
 
   outputs = [ "out" "dev" ];
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ freetype fribidi harfbuzz ]
     ++ lib.optional fontconfigSupport fontconfig
-    ++ lib.optional stdenv.isDarwin [
+    ++ lib.optional stdenv.hostPlatform.isDarwin [
       libiconv
       darwin.apple_sdk.frameworks.ApplicationServices
       darwin.apple_sdk.frameworks.CoreFoundation
diff --git a/pkgs/development/libraries/libast/default.nix b/pkgs/development/libraries/libast/default.nix
deleted file mode 100644
index 49db79aaf9785..0000000000000
--- a/pkgs/development/libraries/libast/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, pkg-config
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libast";
-  version = "0.8";
-
-  src = fetchFromGitHub {
-    owner = "mej";
-    repo = pname;
-    rev = version;
-    hash = "sha256-rnqToFi+d6D6O+JDHQxkVjTc/0RBag6Jqv4uDcE4PNc=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-  ];
-
-  meta = with lib; {
-    inherit (src.meta) homepage;
-    description = "Library of Assorted Spiffy Things";
-    mainProgram = "libast-config";
-    license = licenses.bsd2;
-    maintainers = [ maintainers.AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libasyncns/default.nix b/pkgs/development/libraries/libasyncns/default.nix
index 09e056373d27e..77c998f4216b7 100644
--- a/pkgs/development/libraries/libasyncns/default.nix
+++ b/pkgs/development/libraries/libasyncns/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0x5b6lcic4cd7q0bx00x93kvpyzl7n2abbgvqbrlzrfb8vknc6jg";
   };
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace libasyncns/asyncns.c \
       --replace '<arpa/nameser.h>' '<arpa/nameser_compat.h>'
   '';
diff --git a/pkgs/development/libraries/libatomic_ops/default.nix b/pkgs/development/libraries/libatomic_ops/default.nix
index bf83a9e8456ac..a9fc75558e9bd 100644
--- a/pkgs/development/libraries/libatomic_ops/default.nix
+++ b/pkgs/development/libraries/libatomic_ops/default.nix
@@ -14,9 +14,9 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" "doc" ];
 
-  nativeBuildInputs = lib.optionals stdenv.isCygwin [ autoconf automake libtool ];
+  nativeBuildInputs = lib.optionals stdenv.hostPlatform.isCygwin [ autoconf automake libtool ];
 
-  preConfigure = lib.optionalString stdenv.isCygwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isCygwin ''
     sed -i -e "/libatomic_ops_gpl_la_SOURCES/a libatomic_ops_gpl_la_LIBADD = libatomic_ops.la" src/Makefile.am
     ./autogen.sh
   '';
diff --git a/pkgs/development/libraries/libav/default.nix b/pkgs/development/libraries/libav/default.nix
deleted file mode 100644
index 8cc098d81087a..0000000000000
--- a/pkgs/development/libraries/libav/default.nix
+++ /dev/null
@@ -1,137 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, yasm, bzip2, zlib, perl, bash
-, mp3Support    ? true,   lame      ? null
-, speexSupport  ? true,   speex     ? null
-, theoraSupport ? true,   libtheora ? null
-, vorbisSupport ? true,   libvorbis ? null
-, vpxSupport    ? true,   libvpx    ? null
-, x264Support   ? false,  x264      ? null
-, xvidSupport   ? true,   xvidcore  ? null
-, faacSupport   ? false,  faac      ? null
-, vaapiSupport  ? true,   libva     ? null
-, vdpauSupport  ? true,   libvdpau  ? null
-, freetypeSupport ? true, freetype  ? null # it's small and almost everywhere
-, SDL # only for avplay in $bin, adds nontrivial closure to it
-, enableGPL ? true # ToDo: some additional default stuff may need GPL
-, enableUnfree ? faacSupport
-}:
-
-assert faacSupport -> enableUnfree;
-
-let inherit (lib) optional optionals hasPrefix enableFeature; in
-
-/* ToDo:
-    - more deps, inspiration: https://packages.ubuntu.com/raring/libav-tools
-    - maybe do some more splitting into outputs
-*/
-
-let
-  result = {
-    # e.g. https://libav.org/releases/libav-11.11.tar.xz.sha1
-    libav_0_8 = libavFun "0.8.21" "d858f65128dad0bac1a8c3a51e5cbb27a7c79b3f";
-    libav_11  = libavFun "11.12"  "61d5dcab5fde349834af193a572b12a5fd6a4d42";
-    libav_12  = libavFun "12.3"   "386c18c8b857f23dfcf456ce40370716130211d9";
-  };
-
-  libavFun = version : sha1 : stdenv.mkDerivation rec {
-    pname = "libav";
-    inherit version;
-
-    src = fetchurl {
-      url = "${meta.homepage}/releases/${pname}-${version}.tar.xz";
-      inherit sha1; # upstream directly provides sha1 of releases over https
-    };
-
-    patches = []
-      ++ optional (vpxSupport && hasPrefix "0.8." version) ./vpxenc-0.8.17-libvpx-1.5.patch
-      ++ optional (vpxSupport && hasPrefix "12." version) ./vpx-12.3-libvpx-1.8.patch
-      ;
-
-    postPatch = ''
-      patchShebangs .
-      # another shebang was hidden in a here document text
-      substituteInPlace ./configure --replace "#! /bin/sh" "#!${bash}/bin/sh"
-    '';
-
-    configurePlatforms = [];
-    configureFlags = assert lib.all (x: x!=null) buildInputs; [
-      "--arch=${stdenv.hostPlatform.parsed.cpu.name}"
-      "--target_os=${stdenv.hostPlatform.parsed.kernel.name}"
-      #"--enable-postproc" # it's now a separate package in upstream
-      "--disable-avserver" # upstream says it's in a bad state
-      "--enable-avplay"
-      "--enable-shared"
-      "--enable-runtime-cpudetect"
-      "--cc=${stdenv.cc.targetPrefix}cc"
-      (enableFeature enableGPL "gpl")
-      (enableFeature enableGPL "swscale")
-      (enableFeature mp3Support "libmp3lame")
-      (enableFeature mp3Support "libmp3lame")
-      (enableFeature speexSupport "libspeex")
-      (enableFeature theoraSupport "libtheora")
-      (enableFeature vorbisSupport "libvorbis")
-      (enableFeature vpxSupport "libvpx")
-      (enableFeature x264Support "libx264")
-      (enableFeature xvidSupport "libxvid")
-      (enableFeature faacSupport "libfaac")
-      (enableFeature faacSupport "nonfree")
-      (enableFeature vaapiSupport "vaapi")
-      (enableFeature vdpauSupport "vdpau")
-      (enableFeature freetypeSupport "libfreetype")
-    ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
-      "--cross-prefix=${stdenv.cc.targetPrefix}"
-      "--enable-cross-compile"
-    ];
-
-  nativeBuildInputs = [ pkg-config perl ];
-    buildInputs = [ lame yasm zlib bzip2 SDL bash ]
-      ++ [ perl ] # for install-man target
-      ++ optional mp3Support lame
-      ++ optional speexSupport speex
-      ++ optional theoraSupport libtheora
-      ++ optional vorbisSupport libvorbis
-      ++ optional vpxSupport libvpx
-      ++ optional x264Support x264
-      ++ optional xvidSupport xvidcore
-      ++ optional faacSupport faac
-      ++ optional vaapiSupport libva
-      ++ optional vdpauSupport libvdpau
-      ++ optional freetypeSupport freetype
-      ;
-
-    enableParallelBuilding = true;
-
-    outputs = [ "bin" "dev" "out" ];
-    setOutputFlags = false;
-
-    # alltools to build smaller tools, incl. aviocat, ismindex, qt-faststart, etc.
-    buildFlags = [ "all" "alltools" "install-man" ];
-
-
-    postInstall = ''
-      moveToOutput bin "$bin"
-      # alltools target compiles an executable in tools/ for every C
-      # source file in tools/, so move those to $out
-      for tool in $(find tools -type f -executable); do
-        mv "$tool" "$bin/bin/"
-      done
-    '';
-
-    doInstallCheck = false; # fails randomly
-    installCheckTarget = "check"; # tests need to be run *after* installation
-
-    passthru = { inherit vdpauSupport; };
-
-    meta = with lib; {
-      homepage = "https://libav.org/";
-      description = "Complete, cross-platform solution to record, convert and stream audio and video (fork of ffmpeg)";
-      license = with licenses; if enableUnfree then unfree #ToDo: redistributable or not?
-        else if enableGPL then gpl2Plus else lgpl21Plus;
-      platforms = with platforms; linux ++ darwin;
-      knownVulnerabilities =
-        lib.optional (lib.versionOlder version "12.1") "CVE-2017-9051"
-        ++ lib.optionals (lib.versionOlder version "12.3") [ "CVE-2018-5684" "CVE-2018-5766" ]
-        ++ lib.optionals (lib.versionOlder version "12.4") [ "CVE-2019-9717" "CVE-2019-9720" ];
-    };
-  }; # libavFun
-
-in result
diff --git a/pkgs/development/libraries/libav/vpx-12.3-libvpx-1.8.patch b/pkgs/development/libraries/libav/vpx-12.3-libvpx-1.8.patch
deleted file mode 100644
index 8f8e5003284fe..0000000000000
--- a/pkgs/development/libraries/libav/vpx-12.3-libvpx-1.8.patch
+++ /dev/null
@@ -1,46 +0,0 @@
---- libav/libavcodec/libvpx.c.orig	2018-02-12 21:25:59 UTC
-+++ libav/libavcodec/libvpx.c
-@@ -25,6 +25,7 @@
- enum AVPixelFormat ff_vpx_imgfmt_to_pixfmt(vpx_img_fmt_t img)
- {
-     switch (img) {
-+#if VPX_IMAGE_ABI_VERSION < 5
-     case VPX_IMG_FMT_RGB24:     return AV_PIX_FMT_RGB24;
-     case VPX_IMG_FMT_RGB565:    return AV_PIX_FMT_RGB565BE;
-     case VPX_IMG_FMT_RGB555:    return AV_PIX_FMT_RGB555BE;
-@@ -36,10 +37,13 @@ enum AVPixelFormat ff_vpx_imgfmt_to_pixfmt(vpx_img_fmt
-     case VPX_IMG_FMT_ARGB_LE:   return AV_PIX_FMT_BGRA;
-     case VPX_IMG_FMT_RGB565_LE: return AV_PIX_FMT_RGB565LE;
-     case VPX_IMG_FMT_RGB555_LE: return AV_PIX_FMT_RGB555LE;
-+#endif
-     case VPX_IMG_FMT_I420:      return AV_PIX_FMT_YUV420P;
-     case VPX_IMG_FMT_I422:      return AV_PIX_FMT_YUV422P;
-     case VPX_IMG_FMT_I444:      return AV_PIX_FMT_YUV444P;
-+#if VPX_IMAGE_ABI_VERSION < 5
-     case VPX_IMG_FMT_444A:      return AV_PIX_FMT_YUVA444P;
-+#endif
- #if VPX_IMAGE_ABI_VERSION >= 3
-     case VPX_IMG_FMT_I440:      return AV_PIX_FMT_YUV440P;
-     case VPX_IMG_FMT_I42016:    return AV_PIX_FMT_YUV420P16BE;
-@@ -53,6 +57,7 @@ enum AVPixelFormat ff_vpx_imgfmt_to_pixfmt(vpx_img_fmt
- vpx_img_fmt_t ff_vpx_pixfmt_to_imgfmt(enum AVPixelFormat pix)
- {
-     switch (pix) {
-+#if VPX_IMAGE_ABI_VERSION < 5
-     case AV_PIX_FMT_RGB24:        return VPX_IMG_FMT_RGB24;
-     case AV_PIX_FMT_RGB565BE:     return VPX_IMG_FMT_RGB565;
-     case AV_PIX_FMT_RGB555BE:     return VPX_IMG_FMT_RGB555;
-@@ -64,10 +69,13 @@ vpx_img_fmt_t ff_vpx_pixfmt_to_imgfmt(enum AVPixelForm
-     case AV_PIX_FMT_BGRA:         return VPX_IMG_FMT_ARGB_LE;
-     case AV_PIX_FMT_RGB565LE:     return VPX_IMG_FMT_RGB565_LE;
-     case AV_PIX_FMT_RGB555LE:     return VPX_IMG_FMT_RGB555_LE;
-+#endif
-     case AV_PIX_FMT_YUV420P:      return VPX_IMG_FMT_I420;
-     case AV_PIX_FMT_YUV422P:      return VPX_IMG_FMT_I422;
-     case AV_PIX_FMT_YUV444P:      return VPX_IMG_FMT_I444;
-+#if VPX_IMAGE_ABI_VERSION < 5
-     case AV_PIX_FMT_YUVA444P:     return VPX_IMG_FMT_444A;
-+#endif
- #if VPX_IMAGE_ABI_VERSION >= 3
-     case AV_PIX_FMT_YUV440P:      return VPX_IMG_FMT_I440;
-     case AV_PIX_FMT_YUV420P16BE:  return VPX_IMG_FMT_I42016;
diff --git a/pkgs/development/libraries/libav/vpxenc-0.8.17-libvpx-1.5.patch b/pkgs/development/libraries/libav/vpxenc-0.8.17-libvpx-1.5.patch
deleted file mode 100644
index 456828c025ef5..0000000000000
--- a/pkgs/development/libraries/libav/vpxenc-0.8.17-libvpx-1.5.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/libavcodec/libvpxenc.c	2016-05-01 17:57:16.753852614 +0200
-+++ b/libavcodec/libvpxenc.c	2016-05-01 18:01:08.252147138 +0200
-@@ -67,19 +67,11 @@
- 
- /** String mappings for enum vp8e_enc_control_id */
- static const char *ctlidstr[] = {
--    [VP8E_UPD_ENTROPY]           = "VP8E_UPD_ENTROPY",
--    [VP8E_UPD_REFERENCE]         = "VP8E_UPD_REFERENCE",
--    [VP8E_USE_REFERENCE]         = "VP8E_USE_REFERENCE",
--    [VP8E_SET_ROI_MAP]           = "VP8E_SET_ROI_MAP",
--    [VP8E_SET_ACTIVEMAP]         = "VP8E_SET_ACTIVEMAP",
--    [VP8E_SET_SCALEMODE]         = "VP8E_SET_SCALEMODE",
-     [VP8E_SET_CPUUSED]           = "VP8E_SET_CPUUSED",
-     [VP8E_SET_ENABLEAUTOALTREF]  = "VP8E_SET_ENABLEAUTOALTREF",
-     [VP8E_SET_NOISE_SENSITIVITY] = "VP8E_SET_NOISE_SENSITIVITY",
--    [VP8E_SET_SHARPNESS]         = "VP8E_SET_SHARPNESS",
-     [VP8E_SET_STATIC_THRESHOLD]  = "VP8E_SET_STATIC_THRESHOLD",
-     [VP8E_SET_TOKEN_PARTITIONS]  = "VP8E_SET_TOKEN_PARTITIONS",
--    [VP8E_GET_LAST_QUANTIZER]    = "VP8E_GET_LAST_QUANTIZER",
-     [VP8E_SET_ARNR_MAXFRAMES]    = "VP8E_SET_ARNR_MAXFRAMES",
-     [VP8E_SET_ARNR_STRENGTH]     = "VP8E_SET_ARNR_STRENGTH",
-     [VP8E_SET_ARNR_TYPE]         = "VP8E_SET_ARNR_TYPE",
diff --git a/pkgs/development/libraries/libavif/default.nix b/pkgs/development/libraries/libavif/default.nix
index 6df341d68eb84..8e7ebeb0a2519 100644
--- a/pkgs/development/libraries/libavif/default.nix
+++ b/pkgs/development/libraries/libavif/default.nix
@@ -19,13 +19,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "libavif";
-  version = "1.0.4";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "AOMediaCodec";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-9YP4Zq6dehIJanNkpAJK1aYwSOAueqonF8k2t/3B4kw=";
+    hash = "sha256-yNJiMTWgOKR1c2pxTkLY/uPWGIY4xgH+Ee0r15oroDU=";
   };
 
   # reco: encode libaom slowest but best, decode dav1d fastest
@@ -48,11 +48,14 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gdk-pixbuf
-    libaom
     zlib
     libpng
     libjpeg
+  ];
+
+  propagatedBuildInputs = [
     dav1d
+    libaom
     libyuv
   ];
 
diff --git a/pkgs/development/libraries/libayatana-indicator/default.nix b/pkgs/development/libraries/libayatana-indicator/default.nix
deleted file mode 100644
index 0cadea9f99022..0000000000000
--- a/pkgs/development/libraries/libayatana-indicator/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, fetchFromGitHub, lib
-, pkg-config, cmake
-, gtk3
-, ayatana-ido
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libayatana-indicator";
-  version = "0.9.4";
-
-  src = fetchFromGitHub {
-    owner = "AyatanaIndicators";
-    repo = "libayatana-indicator";
-    rev = version;
-    sha256 = "sha256-OsguZ+jl274uPSCTFHq/ZwUE3yHR7MlUPHCpfmn1F7A=";
-  };
-
-  nativeBuildInputs = [ pkg-config cmake ];
-
-  buildInputs = [ gtk3 ];
-
-  propagatedBuildInputs = [ ayatana-ido ];
-
-  meta = with lib; {
-    description = "Ayatana Indicators Shared Library";
-    homepage = "https://github.com/AyatanaIndicators/libayatana-indicator";
-    changelog = "https://github.com/AyatanaIndicators/libayatana-indicator/blob/${version}/ChangeLog";
-    license = licenses.gpl3Plus;
-    maintainers = [ maintainers.nickhu ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libbacktrace/default.nix b/pkgs/development/libraries/libbacktrace/default.nix
index 1be572671e029..60c7ede0993fb 100644
--- a/pkgs/development/libraries/libbacktrace/default.nix
+++ b/pkgs/development/libraries/libbacktrace/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
     (lib.enableFeature enableShared "shared")
   ];
 
-  doCheck = stdenv.isLinux && !stdenv.hostPlatform.isMusl;
+  doCheck = stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isMusl;
 
   passthru = {
     updateScript = unstableGitUpdater { };
diff --git a/pkgs/development/libraries/libbladeRF/default.nix b/pkgs/development/libraries/libbladeRF/default.nix
index 158493b80e905..77e72d22db6c7 100644
--- a/pkgs/development/libraries/libbladeRF/default.nix
+++ b/pkgs/development/libraries/libbladeRF/default.nix
@@ -9,15 +9,15 @@ stdenv.mkDerivation rec {
     owner = "Nuand";
     repo = "bladeRF";
     rev = "libbladeRF_v${version}";
-    sha256 = "sha256-H40w5YKp6M3QLrsPhILEnJiWutCYLtbgC4a63sV397Q=";
+    hash = "sha256-H40w5YKp6M3QLrsPhILEnJiWutCYLtbgC4a63sV397Q=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake pkg-config git doxygen help2man ];
   # ncurses used due to https://github.com/Nuand/bladeRF/blob/ab4fc672c8bab4f8be34e8917d3f241b1d52d0b8/host/utilities/bladeRF-cli/CMakeLists.txt#L208
   buildInputs = [ tecla libusb1 ]
-    ++ lib.optionals stdenv.isLinux [ udev ]
-    ++ lib.optionals stdenv.isDarwin [ ncurses ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ udev ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ ncurses ];
 
   # Fixup shebang
   prePatch = "patchShebangs host/utilities/bladeRF-cli/src/cmd/doc/generate.bash";
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [
     "-DBUILD_DOCUMENTATION=ON"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "-DUDEV_RULES_PATH=etc/udev/rules.d"
     "-DINSTALL_UDEV_RULES=ON"
     "-DBLADERF_GROUP=bladerf"
diff --git a/pkgs/development/libraries/libbluray/default.nix b/pkgs/development/libraries/libbluray/default.nix
index f50172851d618..c31c05920e31d 100644
--- a/pkgs/development/libraries/libbluray/default.nix
+++ b/pkgs/development/libraries/libbluray/default.nix
@@ -24,10 +24,11 @@ stdenv.mkDerivation rec {
   buildInputs = [ fontconfig ]
     ++ lib.optional withMetadata libxml2
     ++ lib.optional withFonts freetype
-    ++ lib.optional stdenv.isDarwin DiskArbitration;
+    ++ lib.optional stdenv.hostPlatform.isDarwin DiskArbitration;
 
   propagatedBuildInputs = lib.optional withAACS libaacs;
 
+  env.JAVA_HOME = lib.optionalString withJava jdk17.home; # Fails at runtime without this
   env.NIX_LDFLAGS = lib.optionalString withAACS "-L${libaacs}/lib -laacs"
     + lib.optionalString withBDplus " -L${libbdplus}/lib -lbdplus";
 
diff --git a/pkgs/development/libraries/libbpkg/default.nix b/pkgs/development/libraries/libbpkg/default.nix
index 6315b5df0f058..969654b675a2b 100644
--- a/pkgs/development/libraries/libbpkg/default.nix
+++ b/pkgs/development/libraries/libbpkg/default.nix
@@ -8,12 +8,12 @@
 
 stdenv.mkDerivation rec {
   pname = "libbpkg";
-  version = "0.16.0";
+  version = "0.17.0";
   outputs = [ "out" "dev" "doc" ];
 
   src = fetchurl {
     url = "https://pkg.cppget.org/1/alpha/build2/libbpkg-${version}.tar.gz";
-    hash = "sha256-h3Stt1n1057ASf3n16plr5cNGIKOjHiiuOfqrcCJ5tA=";
+    hash = "sha256-4P4+uJGWB3iblYPuErJNr8c7/pS2UhN6LXr7MY2rWDY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libbsd/darwin-enable-strtonum.patch b/pkgs/development/libraries/libbsd/darwin-enable-strtonum.patch
new file mode 100644
index 0000000000000..b2123c78bec2f
--- /dev/null
+++ b/pkgs/development/libraries/libbsd/darwin-enable-strtonum.patch
@@ -0,0 +1,13 @@
+diff --git a/configure.ac b/configure.ac
+index 2a15d720f9...186ab24978 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -254,7 +254,7 @@
+     abi_strl=no
+     abi_strmode=no
+     abi_strnstr=no
+-    abi_strtonum=no
++    abi_strtonum=yes
+     abi_strtox=yes
+     abi_timeconv=no
+     # On libmd.
diff --git a/pkgs/development/libraries/libbsd/darwin-fix-libbsd.sym.patch b/pkgs/development/libraries/libbsd/darwin-fix-libbsd.sym.patch
deleted file mode 100644
index de40da981623b..0000000000000
--- a/pkgs/development/libraries/libbsd/darwin-fix-libbsd.sym.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 9d22b00..c6848fc 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -198,7 +198,9 @@ libbsd_ctor_a_SOURCES = \
- # Generate a simple libtool symbol export list to be used as a fallback if
- # there is no version script support.
- libbsd.sym: libbsd.map
--	$(AM_V_GEN) $(SED) -ne 's/^[[:space:]]\{1,\}\([A-Za-z0-9_]\{1,\}\);/\1/p' libbsd.map > $@
-+	$(AM_V_GEN) $(SED) -ne 's/^[[:space:]]\{1,\}\([A-Za-z0-9_]\{1,\}\);/\1/p' libbsd.map \
-+	  | grep -Ev '(group_from_gid|user_from_uid|nlist|__fdnlist|bsd_getopt)' \
-+	  > $@
- 
- if NEED_TRANSPARENT_LIBMD
- TRANSPARENT_LIBMD_DEPENDS = format.ld
diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix
index fa8b6b65950bc..90a92f50f4634 100644
--- a/pkgs/development/libraries/libbsd/default.nix
+++ b/pkgs/development/libraries/libbsd/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libbsd";
-  version = "0.11.8";
+  version = "0.12.2";
 
   src = fetchurl {
     url = "https://libbsd.freedesktop.org/releases/${pname}-${version}.tar.xz";
-    hash = "sha256-Vf36Jpb7TVWlkvqa0Uqd+JfHsACN2zswxBmRSEH4XzM=";
+    hash = "sha256-uIzJFj0MZSqvOamZkdl03bocOpcR248bWDivKhRzEBQ=";
   };
 
   outputs = [ "out" "dev" "man" ];
@@ -24,10 +24,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
   propagatedBuildInputs = [ libmd ];
 
-  patches = lib.optionals stdenv.isDarwin [
-    # Temporary build system hack from upstream maintainer
-    # https://gitlab.freedesktop.org/libbsd/libbsd/-/issues/19#note_2017684
-    ./darwin-fix-libbsd.sym.patch
+  patches = [
+    # `strtonum(3)` is not available on our default SDK version.
+    # https://gitlab.freedesktop.org/libbsd/libbsd/-/issues/30
+    ./darwin-enable-strtonum.patch
   ];
 
   passthru.updateScript = gitUpdater {
diff --git a/pkgs/development/libraries/libbtbb/default.nix b/pkgs/development/libraries/libbtbb/default.nix
index e0e70005e25f5..9ea153fab6f65 100644
--- a/pkgs/development/libraries/libbtbb/default.nix
+++ b/pkgs/development/libraries/libbtbb/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1byv8174xam7siakr1p0523x97wkh0fmwmq341sd3g70qr2g767d";
   };
 
-  nativeBuildInputs = [ cmake ] ++ lib.optionals stdenv.isDarwin [ CoreServices ];
+  nativeBuildInputs = [ cmake ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices ];
 
   # https://github.com/greatscottgadgets/libbtbb/issues/63
   postPatch = ''
diff --git a/pkgs/development/libraries/libbutl/default.nix b/pkgs/development/libraries/libbutl/default.nix
index aee951a51d6c0..aaf78cec08dc6 100644
--- a/pkgs/development/libraries/libbutl/default.nix
+++ b/pkgs/development/libraries/libbutl/default.nix
@@ -9,18 +9,18 @@
 
 stdenv.mkDerivation rec {
   pname = "libbutl";
-  version = "0.16.0";
+  version = "0.17.0";
 
   outputs = [ "out" "dev" "doc" ];
 
   src = fetchurl {
     url = "https://pkg.cppget.org/1/alpha/build2/libbutl-${version}.tar.gz";
-    hash = "sha256-MGL6P/lG2sJdJXZiTcDvdy4jmU+2jYHsvaX4eEO9J2g=";
+    hash = "sha256-sFqaEf6s2rF1YcZjw5J6oY5ol5PbO9vy6NseKjrvTvs=";
   };
 
   nativeBuildInputs = [
     build2
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     DarwinTools
   ];
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   # but especially important when bootstrapping
   disallowedReferences = [ build2 ];
 
-  postPatch = lib.optionalString stdenv.isLinux ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isLinux ''
     substituteInPlace libbutl/uuid-linux.cxx \
       --replace '"libuuid.so' '"${lib.getLib libuuid}/lib/libuuid.so'
   '';
diff --git a/pkgs/development/libraries/libbytesize/default.nix b/pkgs/development/libraries/libbytesize/default.nix
deleted file mode 100644
index f0af39cc88108..0000000000000
--- a/pkgs/development/libraries/libbytesize/default.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, docbook_xml_dtd_43
-, docbook_xsl
-, gettext
-, gmp
-, gtk-doc
-, libxslt
-, mpfr
-, pcre2
-, pkg-config
-, python3
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libbytesize";
-  version = "2.10";
-
-  src = fetchFromGitHub {
-    owner = "storaged-project";
-    repo = "libbytesize";
-    rev = finalAttrs.version;
-    hash = "sha256-IPBoYcnSQ1/ws3mzPUXxgbetZkXRWrGhtakXaVVFb6U=";
-  };
-
-  outputs = [ "out" "dev" "devdoc" "man" ];
-
-  nativeBuildInputs = [
-    autoreconfHook
-    docbook_xml_dtd_43
-    docbook_xsl
-    gettext
-    gtk-doc
-    libxslt
-    pkg-config
-    python3
-  ];
-
-  buildInputs = [
-    gmp
-    mpfr
-    pcre2
-  ];
-
-  strictDeps = true;
-
-  meta = {
-    homepage = "https://github.com/storaged-project/libbytesize";
-    description = "Tiny library providing a C 'class' for working with arbitrary big sizes in bytes";
-    mainProgram = "bscalc";
-    license = lib.licenses.lgpl2Plus;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.linux;
-  };
-})
diff --git a/pkgs/development/libraries/libcaca/default.nix b/pkgs/development/libraries/libcaca/default.nix
deleted file mode 100644
index 6b99439fe017e..0000000000000
--- a/pkgs/development/libraries/libcaca/default.nix
+++ /dev/null
@@ -1,74 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, imlib2
-, xorg
-, ncurses
-, pkg-config
-, zlib
-, x11Support ? !stdenv.isDarwin
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libcaca";
-  version = "0.99.beta20";
-
-  src = fetchFromGitHub {
-    owner = "cacalabs";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-N0Lfi0d4kjxirEbIjdeearYWvStkKMyV6lgeyNKXcVw=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-  ];
-
-  buildInputs = [
-    ncurses
-    zlib
-    (imlib2.override { inherit x11Support; })
-  ] ++ lib.optionals x11Support [
-    xorg.libX11
-    xorg.libXext
-  ];
-
-  outputs = [ "bin" "dev" "out" "man" ];
-
-  configureFlags = [
-    (if x11Support then "--enable-x11" else "--disable-x11")
-  ];
-
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (!x11Support) "-DX_DISPLAY_MISSING";
-
-  postInstall = ''
-    mkdir -p $dev/bin
-    mv $bin/bin/caca-config $dev/bin/caca-config
-  '';
-
-  meta = with lib; {
-    homepage = "http://caca.zoy.org/wiki/libcaca";
-    description = "Graphics library that outputs text instead of pixels";
-    longDescription = ''
-      libcaca is a graphics library that outputs text instead of pixels, so that
-      it can work on older video cards or text terminals. It is not unlike the
-      famous ​AAlib library, with the following improvements:
-
-      - Unicode support
-      - 2048 available colours (some devices can only handle 16)
-      - dithering of colour images
-      - advanced text canvas operations (blitting, rotations)
-
-      Libcaca works in a text terminal (and should thus work on all Unix systems
-      including Mac OS X) using the S-Lang or ncurses libraries. It also works
-      natively on DOS and Windows.
-
-      Libcaca was written by Sam Hocevar and Jean-Yves Lamoureux.
-    '';
-    license = licenses.wtfpl;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libcacard/default.nix b/pkgs/development/libraries/libcacard/default.nix
index 1ab5b428f57a7..1dd07a9d6ec2a 100644
--- a/pkgs/development/libraries/libcacard/default.nix
+++ b/pkgs/development/libraries/libcacard/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-+79N6Mt9tb3/XstnL/Db5pOfufNEuQDVG6YpUymjMuc=";
   };
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i '/--version-script/d' Makefile.in
     sed -i 's/^vflag = .*$/vflag = ""/' meson.build
   '';
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "Smart card emulation library";
     homepage = "https://gitlab.freedesktop.org/spice/libcacard";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ yana ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libcanberra/default.nix b/pkgs/development/libraries/libcanberra/default.nix
index 6bfb780d31a35..7f164c18b49c3 100644
--- a/pkgs/development/libraries/libcanberra/default.nix
+++ b/pkgs/development/libraries/libcanberra/default.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchurl, fetchpatch, pkg-config, libtool
 , gtk2-x11, gtk3-x11 , gtkSupport ? null
-, libpulseaudio, gst_all_1, libvorbis, libcap
+, libpulseaudio, gst_all_1, libvorbis, libcap, systemd
 , Carbon, CoreServices, AppKit
-, withAlsa ? stdenv.isLinux, alsa-lib }:
+, withAlsa ? stdenv.hostPlatform.isLinux, alsa-lib }:
 
 stdenv.mkDerivation rec {
   pname = "libcanberra";
@@ -23,11 +23,12 @@ stdenv.mkDerivation rec {
   ] ++ (with gst_all_1; [ gstreamer gst-plugins-base ])
     ++ lib.optional (gtkSupport == "gtk2") gtk2-x11
     ++ lib.optional (gtkSupport == "gtk3") gtk3-x11
-    ++ lib.optionals stdenv.isDarwin [ Carbon CoreServices AppKit ]
-    ++ lib.optional stdenv.isLinux libcap
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon CoreServices AppKit ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libcap systemd ]
     ++ lib.optional withAlsa alsa-lib;
 
-  configureFlags = [ "--disable-oss" ];
+  configureFlags = [ "--disable-oss" ]
+    ++ lib.optional stdenv.hostPlatform.isLinux "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system";
 
   patches = [
     (fetchpatch {
@@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
       url = "http://git.0pointer.net/libcanberra.git/patch/?id=c0620e432650e81062c1967cc669829dbd29b310";
       sha256 = "0rc7zwn39yxzxp37qh329g7375r5ywcqcaak8ryd0dgvg8m5hcx9";
     })
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     (fetchpatch {
       url = "https://github.com/macports/macports-ports/raw/5a7965dfea7727d1ceedee46c7b0ccee9cb23468/audio/libcanberra/files/patch-configure.diff";
       sha256 = "sha256-pEJy1krciUEg5BFIS8FJ4BubjfS/nt9aqi6BLnS1+4M=";
diff --git a/pkgs/development/libraries/libcaption/default.nix b/pkgs/development/libraries/libcaption/default.nix
index 78cf5214051de..0070aa3524eec 100644
--- a/pkgs/development/libraries/libcaption/default.nix
+++ b/pkgs/development/libraries/libcaption/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "szatmary";
     repo = "libcaption";
     rev = finalAttrs.version;
-    sha256 = "sha256-OBtxoFJF0cxC+kfSK8TIKIdLkmCh5WOJlI0fejnisJo=";
+    hash = "sha256-OBtxoFJF0cxC+kfSK8TIKIdLkmCh5WOJlI0fejnisJo=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/libcbor/default.nix b/pkgs/development/libraries/libcbor/default.nix
index 349f4589172a8..673885b096e45 100644
--- a/pkgs/development/libraries/libcbor/default.nix
+++ b/pkgs/development/libraries/libcbor/default.nix
@@ -54,6 +54,6 @@ stdenv.mkDerivation (finalAttrs: {
     description = "CBOR protocol implementation for C and others";
     homepage = "https://github.com/PJK/libcbor";
     license = licenses.mit;
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = [ ];
   };
 })
diff --git a/pkgs/development/libraries/libcdada/default.nix b/pkgs/development/libraries/libcdada/default.nix
index 5d1d295f74a82..8b1e4e0c7ab42 100644
--- a/pkgs/development/libraries/libcdada/default.nix
+++ b/pkgs/development/libraries/libcdada/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libcdada";
-  version = "0.5.2";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "msune";
     repo = "libcdada";
     rev = "v${version}";
-    hash = "sha256-rrBmsXBatvaf/u/UVHpTm9YUo+gsQv1rtuprpRF/3kU=";
+    hash = "sha256-fgH4gl8Uq8mY9gxa968suU66VJYnFzpSLj4JGpJcJA4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libcdio-paranoia/default.nix b/pkgs/development/libraries/libcdio-paranoia/default.nix
index b6fd599e0dfdc..93b3cb91ffc93 100644
--- a/pkgs/development/libraries/libcdio-paranoia/default.nix
+++ b/pkgs/development/libraries/libcdio-paranoia/default.nix
@@ -1,26 +1,41 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, libcdio, pkg-config,
-  libiconv, IOKit, DiskArbitration}:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  autoreconfHook,
+  libcdio,
+  pkg-config,
+  libiconv,
+  IOKit,
+  DiskArbitration,
+}:
 
 stdenv.mkDerivation rec {
   pname = "libcdio-paranoia";
-  version = "2.0.1";
+  version = "2.0.2";
 
   src = fetchFromGitHub {
     owner = "rocky";
     repo = "libcdio-paranoia";
     rev = "release-10.2+${version}";
-    hash = "sha256-kNGhhslp5noAVeho0kBVfyvb4kQpDY56nyL3a4aFgjE=";
+    hash = "sha256-n05PSVgh6z7BFPq4CjJa5DqCO7Huj8Bsg0x3HQPsbeI=";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libcdio ] ++
-    lib.optionals stdenv.isDarwin [ libiconv IOKit DiskArbitration ];
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
+  buildInputs =
+    [ libcdio ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
+      libiconv
+      IOKit
+      DiskArbitration
+    ];
 
-  propagatedBuildInputs = lib.optional stdenv.isDarwin DiskArbitration;
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isDarwin DiskArbitration;
 
-  configureFlags = lib.optionals stdenv.isDarwin [
-    "--disable-ld-version-script"
-  ];
+  configureFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "--disable-ld-version-script" ];
 
   meta = with lib; {
     description = "CD paranoia on top of libcdio";
diff --git a/pkgs/development/libraries/libcdio/default.nix b/pkgs/development/libraries/libcdio/default.nix
index 820ac97a434f3..9f0d8689f30e4 100644
--- a/pkgs/development/libraries/libcdio/default.nix
+++ b/pkgs/development/libraries/libcdio/default.nix
@@ -31,11 +31,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config help2man ];
   buildInputs = [ libcddb libiconv ncurses ]
-    ++ lib.optionals stdenv.isDarwin [ Carbon IOKit ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon IOKit ];
 
   enableParallelBuilding = true;
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "Library for OS-independent CD-ROM and CD image access";
diff --git a/pkgs/development/libraries/libcdr/default.nix b/pkgs/development/libraries/libcdr/default.nix
index 885413982dad8..cf7d7c4e5e2ee 100644
--- a/pkgs/development/libraries/libcdr/default.nix
+++ b/pkgs/development/libraries/libcdr/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
 
   CXXFLAGS="--std=gnu++0x"; # For c++11 constants in lcms2.h
 
+  enableParallelBuilding = true;
+
   meta = {
     description = "Library providing ability to interpret and import Corel Draw drawings into various applications";
     homepage = "https://wiki.documentfoundation.org/DLP/Libraries/libcdr";
diff --git a/pkgs/development/libraries/libcec/default.nix b/pkgs/development/libraries/libcec/default.nix
index 78746cf012541..4116f2a0172ad 100644
--- a/pkgs/development/libraries/libcec/default.nix
+++ b/pkgs/development/libraries/libcec/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=1"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "-DHAVE_LINUX_API=1"
   ];
 
diff --git a/pkgs/development/libraries/libchop/default.nix b/pkgs/development/libraries/libchop/default.nix
index ce113106ce566..aa9f50917be1f 100644
--- a/pkgs/development/libraries/libchop/default.nix
+++ b/pkgs/development/libraries/libchop/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://www.nongnu.org/libchop/";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.gnu ++ platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libcifpp/default.nix b/pkgs/development/libraries/libcifpp/default.nix
index a5dbf01492a54..564c7690b3783 100644
--- a/pkgs/development/libraries/libcifpp/default.nix
+++ b/pkgs/development/libraries/libcifpp/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     description = "Manipulate mmCIF and PDB files";
     homepage = "https://github.com/PDB-REDO/libcifpp";
-    changelog = "https://github.com/PDB-REDO/libcifpp/releases/tag/${finalAttrs.src.rev}";
+    changelog = "https://github.com/PDB-REDO/libcifpp/releases/tag/${lib.removePrefix "refs/tags/" finalAttrs.src.rev}";
     license = licenses.bsd2;
     maintainers = with maintainers; [ natsukium ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/libcommuni/default.nix b/pkgs/development/libraries/libcommuni/default.nix
index c33fdcf00f33c..93aec103bca08 100644
--- a/pkgs/development/libraries/libcommuni/default.nix
+++ b/pkgs/development/libraries/libcommuni/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   dontUseQmakeConfigure = true;
   configureFlags = [ "-config" "release" ]
     # Build mixes up dylibs/frameworks if one is not explicitly specified.
-    ++ lib.optionals stdenv.isDarwin [ "-config" "qt_framework" ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ "-config" "qt_framework" ];
 
   dontWrapQtApps = true;
 
diff --git a/pkgs/development/libraries/libconfig/default.nix b/pkgs/development/libraries/libconfig/default.nix
index c0f02320c7796..049b0c8f4fb87 100644
--- a/pkgs/development/libraries/libconfig/default.nix
+++ b/pkgs/development/libraries/libconfig/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.hyperrealm.com/libconfig";
     description = "Simple library for processing structured configuration files";
     license = licenses.lgpl3;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix
index 4f813d74a8971..f3decde56c770 100644
--- a/pkgs/development/libraries/libcouchbase/default.nix
+++ b/pkgs/development/libraries/libcouchbase/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   # Running tests in parallel does not work
   enableParallelChecking = false;
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     description = "C client library for Couchbase";
diff --git a/pkgs/development/libraries/libcutl/default.nix b/pkgs/development/libraries/libcutl/default.nix
deleted file mode 100644
index db04b5f59b5cd..0000000000000
--- a/pkgs/development/libraries/libcutl/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, gccStdenv, fetchurl, xercesc }:
-
-let
-  stdenv = gccStdenv;
-in
-stdenv.mkDerivation rec {
-  pname = "libcutl";
-  version = "1.10.0";
-
-  meta = with lib; {
-    description = "C++ utility library from Code Synthesis";
-    longDescription = ''
-        libcutl is a C++ utility library.
-        It contains a collection of generic and independent components such as
-        meta-programming tests, smart pointers, containers, compiler building blocks, etc.
-    '';
-    homepage = "https://codesynthesis.com/projects/libcutl/";
-    changelog = "https://git.codesynthesis.com/cgit/libcutl/libcutl/plain/NEWS?h=${version}";
-    platforms = platforms.all;
-    maintainers = with maintainers; [ ];
-    license = licenses.mit;
-  };
-
-  majmin = builtins.head ( builtins.match "([[:digit:]]\\.[[:digit:]]+).*" "${version}" );
-  src = fetchurl {
-    url = "https://codesynthesis.com/download/${pname}/${majmin}/${pname}-${version}.tar.bz2";
-    sha256 = "070j2x02m4gm1fn7gnymrkbdxflgzxwl7m96aryv8wp3f3366l8j";
-  };
-
-  buildInputs = [ xercesc ];
-  enableParallelBuilding = true;
-
-  env.NIX_CFLAGS_COMPILE = toString [ "-std=c++14" ];
-}
diff --git a/pkgs/development/libraries/libcxxrt/default.nix b/pkgs/development/libraries/libcxxrt/default.nix
index 1858ca1e97e92..908609675f62c 100644
--- a/pkgs/development/libraries/libcxxrt/default.nix
+++ b/pkgs/development/libraries/libcxxrt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "libcxxrt";
-  version = "4.0.10-unstable-2024-05-26";
+  version = "4.0.10-unstable-2024-09-24";
 
   src = fetchFromGitHub {
     owner = "libcxxrt";
     repo = "libcxxrt";
-    rev = "c62fe9963148f283b2fbb7eb9888785cfb16d77c";
-    sha256 = "XxXH6pE2v6WTh1ATJ7Fgd3SFw49L44YchtMlPKX4kYw=";
+    rev = "40e4fa2049930412a2c43cdf0c39b6b5aa735341";
+    sha256 = "2rEbRTr8RLl8EKrDq210baCPDt9OppdL7zloNjGOZME=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libcyaml/default.nix b/pkgs/development/libraries/libcyaml/default.nix
deleted file mode 100644
index 99ad390896f68..0000000000000
--- a/pkgs/development/libraries/libcyaml/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchFromGitHub
-, libyaml
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libcyaml";
-  version = "1.4.1";
-
-  src = fetchFromGitHub {
-    owner = "tlsa";
-    repo = "libcyaml";
-    rev = "v${version}";
-    sha256 = "sha256-iS1T8R0SW+qu0TlP5FVlDzUfQitiZMUkbJUigbxeW0Y=";
-  };
-
-  buildInputs = [ libyaml ];
-
-  makeFlags = [ "VARIANT=release" "PREFIX=$(out)" ];
-
-  meta = with lib; {
-    homepage = "https://github.com/tlsa/libcyaml";
-    description = "C library for reading and writing YAML";
-    changelog = "https://github.com/tlsa/libcyaml/raw/v${version}/CHANGES.md";
-    license = licenses.isc;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libdatachannel/default.nix b/pkgs/development/libraries/libdatachannel/default.nix
index cc6a340355bab..bc831d354e772 100644
--- a/pkgs/development/libraries/libdatachannel/default.nix
+++ b/pkgs/development/libraries/libdatachannel/default.nix
@@ -1,36 +1,41 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, srcOnly
-, cmake
-, ninja
-, pkg-config
-, libnice
-, openssl
-, plog
-, srtp
-, usrsctp
+{
+  stdenv,
+  lib,
+  fetchFromGitHub,
+  cmake,
+  ninja,
+  pkg-config,
+  libnice,
+  openssl,
+  plog,
+  srtp,
+  usrsctp,
 }:
 
 stdenv.mkDerivation rec {
   pname = "libdatachannel";
-  version = "0.21.1";
+  version = "0.21.2";
 
   src = fetchFromGitHub {
     owner = "paullouisageneau";
     repo = "libdatachannel";
     rev = "v${version}";
-    hash = "sha256-sTdA4kCIdY3l/YUNKbXzRDS1O0AFx90k94W3cJpfLIY=";
+    hash = "sha256-3fax57oaJvOgbTDPCiiUdtsfAGhICfPkuMihawq06SA=";
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   strictDeps = true;
+
   nativeBuildInputs = [
     cmake
     ninja
     pkg-config
   ];
+
   buildInputs = [
     libnice
     openssl
@@ -48,7 +53,7 @@ stdenv.mkDerivation rec {
   postFixup = ''
     # Fix include path that will be incorrect due to the "dev" output
     substituteInPlace "$dev/lib/cmake/LibDataChannel/LibDataChannelTargets.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/include" "$dev/include"
+      --replace-fail "\''${_IMPORT_PREFIX}/include" "$dev/include"
   '';
 
   meta = with lib; {
@@ -56,6 +61,6 @@ stdenv.mkDerivation rec {
     homepage = "https://libdatachannel.org/";
     license = with licenses; [ mpl20 ];
     maintainers = with maintainers; [ erdnaxe ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/libdatrie/default.nix b/pkgs/development/libraries/libdatrie/default.nix
index 765efe573a64b..e810da2e96cde 100644
--- a/pkgs/development/libraries/libdatrie/default.nix
+++ b/pkgs/development/libraries/libdatrie/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper
+{ lib, stdenv, fetchFromGitHub
 , autoreconfHook, autoconf-archive
 , installShellFiles, libiconv }:
 
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "This is an implementation of double-array structure for representing trie";
     license = licenses.lgpl21Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     pkgConfigModules = [ "datrie-0.2" ];
   };
 }
diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix
index c947079038722..08b286c825cf6 100644
--- a/pkgs/development/libraries/libdazzle/default.nix
+++ b/pkgs/development/libraries/libdazzle/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     docbook_xml_dtd_43
     dbus
     glib
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     xvfb-run
   ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
     mesonEmulatorHook
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     "-Denable_gtk_doc=true"
   ];
 
-  doCheck = stdenv.isLinux;
+  doCheck = stdenv.hostPlatform.isLinux;
 
   checkPhase = ''
     xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
diff --git a/pkgs/development/libraries/libdbi-drivers/default.nix b/pkgs/development/libraries/libdbi-drivers/default.nix
index f1352cd47b927..6537e3ae2a3e8 100644
--- a/pkgs/development/libraries/libdbi-drivers/default.nix
+++ b/pkgs/development/libraries/libdbi-drivers/default.nix
@@ -42,8 +42,6 @@ stdenv.mkDerivation rec {
     "--with-sqlite3-libdir=${sqlite.out}/lib/sqlite"
   ] ++ lib.optionals (postgresql != null) [
     "--with-pgsql"
-    "--with-pgsql_incdir=${postgresql}/include"
-    "--with-pgsql_libdir=${postgresql.lib}/lib"
   ];
 
   env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
@@ -69,6 +67,6 @@ stdenv.mkDerivation rec {
     description = "Database drivers for libdbi";
     platforms = platforms.all;
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libdc1394/default.nix b/pkgs/development/libraries/libdc1394/default.nix
index 9ca5581b3bffb..fc33817a857ea 100644
--- a/pkgs/development/libraries/libdc1394/default.nix
+++ b/pkgs/development/libraries/libdc1394/default.nix
@@ -10,15 +10,20 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-U3zreN087ycaGD9KF2GR0c7PhfAlUg5r03WLDhnmYJ8=";
   };
 
+  hardeningDisable = [
+    # "sorry, unimplemented: __builtin_clear_padding not supported for variable length aggregates"
+    "trivialautovarinit"
+  ];
+
   buildInputs = [ libusb1 ]
-    ++ lib.optional stdenv.isLinux libraw1394
-    ++ lib.optional stdenv.isDarwin CoreServices;
+    ++ lib.optional stdenv.hostPlatform.isLinux libraw1394
+    ++ lib.optional stdenv.hostPlatform.isDarwin CoreServices;
 
   meta = with lib; {
     description = "Capture and control API for IIDC compliant cameras";
     homepage = "https://sourceforge.net/projects/libdc1394/";
     license = licenses.lgpl21Plus;
-    maintainers = [ maintainers.viric ];
+    maintainers = [ ];
     mainProgram = "dc1394_reset_bus";
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/libde265/test-corpus-decode.nix b/pkgs/development/libraries/libde265/test-corpus-decode.nix
index 763c93e6a993b..9c184362d10bb 100644
--- a/pkgs/development/libraries/libde265/test-corpus-decode.nix
+++ b/pkgs/development/libraries/libde265/test-corpus-decode.nix
@@ -1,5 +1,4 @@
-{ lib
-, stdenv
+{ stdenv
 , fetchFromGitHub
 , libde265
 }:
diff --git a/pkgs/development/libraries/libdeltachat/Cargo.lock b/pkgs/development/libraries/libdeltachat/Cargo.lock
deleted file mode 100644
index 4f9efb6bec40c..0000000000000
--- a/pkgs/development/libraries/libdeltachat/Cargo.lock
+++ /dev/null
@@ -1,7694 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "abao"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2daa0989489b05a455a9707adbbbc17443edf7bbc902ce499cd3b84148d68a40"
-dependencies = [
- "arrayref",
- "arrayvec",
- "blake3",
- "futures",
- "tokio",
-]
-
-[[package]]
-name = "addr2line"
-version = "0.22.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "aead"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
-dependencies = [
- "bytes",
- "crypto-common",
- "generic-array",
-]
-
-[[package]]
-name = "aes"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
-dependencies = [
- "cfg-if",
- "cipher",
- "cpufeatures",
-]
-
-[[package]]
-name = "ahash"
-version = "0.8.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
-dependencies = [
- "cfg-if",
- "once_cell",
- "version_check",
- "zerocopy",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "alloc-no-stdlib"
-version = "2.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3"
-
-[[package]]
-name = "alloc-stdlib"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece"
-dependencies = [
- "alloc-no-stdlib",
-]
-
-[[package]]
-name = "allocator-api2"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
-
-[[package]]
-name = "android-tzdata"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
-
-[[package]]
-name = "android_system_properties"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "anes"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
-
-[[package]]
-name = "ansi_term"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "anstream"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
-dependencies = [
- "anstyle",
- "anstyle-parse",
- "anstyle-query",
- "anstyle-wincon",
- "colorchoice",
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
-
-[[package]]
-name = "anstyle-parse"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
-dependencies = [
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle-query"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
-dependencies = [
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "anstyle-wincon"
-version = "3.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
-dependencies = [
- "anstyle",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
-dependencies = [
- "backtrace",
-]
-
-[[package]]
-name = "arrayref"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545"
-
-[[package]]
-name = "arrayvec"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
-
-[[package]]
-name = "ascii_utils"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71938f30533e4d95a6d17aa530939da3842c2ab6f4f84b9dae68447e4129f74a"
-
-[[package]]
-name = "asn1-rs"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0"
-dependencies = [
- "asn1-rs-derive 0.4.0",
- "asn1-rs-impl 0.1.0",
- "displaydoc",
- "nom",
- "num-traits",
- "rusticata-macros",
- "thiserror",
- "time 0.3.34",
-]
-
-[[package]]
-name = "asn1-rs"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22ad1373757efa0f70ec53939aabc7152e1591cb485208052993070ac8d2429d"
-dependencies = [
- "asn1-rs-derive 0.5.0",
- "asn1-rs-impl 0.2.0",
- "displaydoc",
- "nom",
- "num-traits",
- "rusticata-macros",
- "thiserror",
- "time 0.3.34",
-]
-
-[[package]]
-name = "asn1-rs-derive"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "synstructure 0.12.6",
-]
-
-[[package]]
-name = "asn1-rs-derive"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7378575ff571966e99a744addeff0bff98b8ada0dedf1956d59e634db95eaac1"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
- "synstructure 0.13.1",
-]
-
-[[package]]
-name = "asn1-rs-impl"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "asn1-rs-impl"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "async-broadcast"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
-dependencies = [
- "event-listener 5.2.0",
- "event-listener-strategy",
- "futures-core",
- "pin-project-lite",
-]
-
-[[package]]
-name = "async-channel"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
-dependencies = [
- "concurrent-queue",
- "event-listener 2.5.3",
- "futures-core",
-]
-
-[[package]]
-name = "async-channel"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
-dependencies = [
- "concurrent-queue",
- "event-listener-strategy",
- "futures-core",
- "pin-project-lite",
-]
-
-[[package]]
-name = "async-compression"
-version = "0.3.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a"
-dependencies = [
- "flate2",
- "futures-core",
- "memchr",
- "pin-project-lite",
- "tokio",
-]
-
-[[package]]
-name = "async-imap"
-version = "0.9.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98892ebee4c05fc66757e600a7466f0d9bfcde338f645d64add323789f26cb36"
-dependencies = [
- "async-channel 2.3.1",
- "base64 0.21.7",
- "bytes",
- "chrono",
- "futures",
- "imap-proto",
- "log",
- "nom",
- "once_cell",
- "pin-utils",
- "self_cell",
- "stop-token",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "async-mutex"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e"
-dependencies = [
- "event-listener 2.5.3",
-]
-
-[[package]]
-name = "async-native-tls"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9343dc5acf07e79ff82d0c37899f079db3534d99f189a1837c8e549c99405bec"
-dependencies = [
- "native-tls",
- "thiserror",
- "tokio",
- "url",
-]
-
-[[package]]
-name = "async-smtp"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "928ea96f04e1260036cb01f82c1e5dc7c3b478e7b9463c87712297784ce3cdc6"
-dependencies = [
- "anyhow",
- "base64 0.13.1",
- "futures",
- "hostname",
- "log",
- "nom",
- "pin-project",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "async-trait"
-version = "0.1.77"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "async_zip"
-version = "0.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2105142db9c6203b9dadc83b0553394589a6cb31b1449a3b46b42f47c3434d0"
-dependencies = [
- "async-compression",
- "crc32fast",
- "log",
- "pin-project",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "attohttpc"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d9a9bf8b79a749ee0b911b91b671cc2b6c670bdbc7e3dfd537576ddc94bb2a2"
-dependencies = [
- "http 0.2.12",
- "log",
- "url",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "axum"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf"
-dependencies = [
- "async-trait",
- "axum-core",
- "base64 0.21.7",
- "bytes",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "http-body-util",
- "hyper 1.2.0",
- "hyper-util",
- "itoa",
- "matchit",
- "memchr",
- "mime",
- "percent-encoding",
- "pin-project-lite",
- "rustversion",
- "serde",
- "serde_json",
- "serde_path_to_error",
- "serde_urlencoded",
- "sha1",
- "sync_wrapper 1.0.0",
- "tokio",
- "tokio-tungstenite",
- "tower",
- "tower-layer",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "axum-core"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3"
-dependencies = [
- "async-trait",
- "bytes",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "http-body-util",
- "mime",
- "pin-project-lite",
- "rustversion",
- "sync_wrapper 0.1.2",
- "tower-layer",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "backoff"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
-dependencies = [
- "getrandom 0.2.12",
- "instant",
- "rand 0.8.5",
-]
-
-[[package]]
-name = "backtrace"
-version = "0.3.72"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11"
-dependencies = [
- "addr2line",
- "cc",
- "cfg-if",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
-]
-
-[[package]]
-name = "base16ct"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
-
-[[package]]
-name = "base16ct"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
-
-[[package]]
-name = "base64"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
-
-[[package]]
-name = "base64"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
-
-[[package]]
-name = "base64"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-
-[[package]]
-name = "base64"
-version = "0.21.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
-
-[[package]]
-name = "base64"
-version = "0.22.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
-
-[[package]]
-name = "base64ct"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
-
-[[package]]
-name = "bincode"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "bitfield"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d7e60934ceec538daadb9d8432424ed043a904d8e0243f3c6446bce549a46ac"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
-
-[[package]]
-name = "bitvec"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c"
-dependencies = [
- "funty",
- "radium",
- "tap",
- "wyz",
-]
-
-[[package]]
-name = "blake3"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87"
-dependencies = [
- "arrayref",
- "arrayvec",
- "cc",
- "cfg-if",
- "constant_time_eq",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "block-padding"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "blowfish"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7"
-dependencies = [
- "byteorder",
- "cipher",
-]
-
-[[package]]
-name = "bounded-integer"
-version = "0.5.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78a6932c88f1d2c29533a3b8a5f5a2f84cc19c3339b431677c3160c5c2e6ca85"
-
-[[package]]
-name = "brotli"
-version = "6.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b"
-dependencies = [
- "alloc-no-stdlib",
- "alloc-stdlib",
- "brotli-decompressor",
-]
-
-[[package]]
-name = "brotli-decompressor"
-version = "4.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6221fe77a248b9117d431ad93761222e1cf8ff282d9d1d5d9f53d6299a1cf76"
-dependencies = [
- "alloc-no-stdlib",
- "alloc-stdlib",
-]
-
-[[package]]
-name = "bstr"
-version = "1.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
-dependencies = [
- "memchr",
- "serde",
-]
-
-[[package]]
-name = "buffer-redux"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c9f8ddd22e0a12391d1e7ada69ec3b0da1914f1cec39c5cf977143c5b2854f5"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.15.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b"
-
-[[package]]
-name = "bytemuck"
-version = "1.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
-
-[[package]]
-name = "byteorder"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
-
-[[package]]
-name = "bytes"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "camellia"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3264e2574e9ef2b53ce6f536dea83a69ac0bc600b762d1523ff83fe07230ce30"
-dependencies = [
- "byteorder",
- "cipher",
-]
-
-[[package]]
-name = "camino"
-version = "1.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "cargo-platform"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "cargo_metadata"
-version = "0.14.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa"
-dependencies = [
- "camino",
- "cargo-platform",
- "semver",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "cast"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
-
-[[package]]
-name = "cast5"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b07d673db1ccf000e90f54b819db9e75a8348d6eb056e9b8ab53231b7a9911"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.98"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f"
-
-[[package]]
-name = "cfb-mode"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "738b8d467867f80a71351933f70461f5b56f24d5c93e0cf216e59229c968d330"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "cfg_aliases"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
-
-[[package]]
-name = "chacha20"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818"
-dependencies = [
- "cfg-if",
- "cipher",
- "cpufeatures",
-]
-
-[[package]]
-name = "charset"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18e9079d1a12a2cc2bffb5db039c43661836ead4082120d5844f02555aca2d46"
-dependencies = [
- "base64 0.13.1",
- "encoding_rs",
-]
-
-[[package]]
-name = "chrono"
-version = "0.4.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
-dependencies = [
- "android-tzdata",
- "iana-time-zone",
- "js-sys",
- "num-traits",
- "serde",
- "wasm-bindgen",
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "ciborium"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
-dependencies = [
- "ciborium-io",
- "ciborium-ll",
- "serde",
-]
-
-[[package]]
-name = "ciborium-io"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
-
-[[package]]
-name = "ciborium-ll"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
-dependencies = [
- "ciborium-io",
- "half",
-]
-
-[[package]]
-name = "cipher"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
-dependencies = [
- "crypto-common",
- "inout",
- "zeroize",
-]
-
-[[package]]
-name = "clap"
-version = "4.4.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c"
-dependencies = [
- "clap_builder",
-]
-
-[[package]]
-name = "clap_builder"
-version = "4.4.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7"
-dependencies = [
- "anstyle",
- "clap_lex",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
-
-[[package]]
-name = "clipboard-win"
-version = "5.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12f9a0700e0127ba15d1d52dd742097f821cd9c65939303a44d970465040a297"
-dependencies = [
- "error-code",
-]
-
-[[package]]
-name = "cobs"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15"
-
-[[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "colorchoice"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
-
-[[package]]
-name = "concurrent-queue"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
-dependencies = [
- "crossbeam-utils",
-]
-
-[[package]]
-name = "const-oid"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
-
-[[package]]
-name = "const_format"
-version = "0.2.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673"
-dependencies = [
- "const_format_proc_macros",
-]
-
-[[package]]
-name = "const_format_proc_macros"
-version = "0.2.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "constant_time_eq"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2"
-
-[[package]]
-name = "convert_case"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
-
-[[package]]
-name = "convert_case"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb4a24b1aaf0fd0ce8b45161144d6f42cd91677fd5940fd431183eb023b3a2b8"
-
-[[package]]
-name = "core-foundation"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
-
-[[package]]
-name = "cpufeatures"
-version = "0.2.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "crc"
-version = "3.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636"
-dependencies = [
- "crc-catalog",
-]
-
-[[package]]
-name = "crc-catalog"
-version = "2.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
-
-[[package]]
-name = "crc24"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd121741cf3eb82c08dd3023eb55bf2665e5f60ec20f89760cf836ae4562e6a0"
-
-[[package]]
-name = "crc32fast"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "criterion"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
-dependencies = [
- "anes",
- "cast",
- "ciborium",
- "clap",
- "criterion-plot",
- "futures",
- "is-terminal",
- "itertools",
- "num-traits",
- "once_cell",
- "oorandom",
- "plotters",
- "rayon",
- "regex",
- "serde",
- "serde_derive",
- "serde_json",
- "tinytemplate",
- "tokio",
- "walkdir",
-]
-
-[[package]]
-name = "criterion-plot"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
-dependencies = [
- "cast",
- "itertools",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
-dependencies = [
- "crossbeam-epoch",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.9.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
-dependencies = [
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
-
-[[package]]
-name = "crunchy"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
-
-[[package]]
-name = "crypto-bigint"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef"
-dependencies = [
- "generic-array",
- "rand_core 0.6.4",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "crypto-bigint"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
-dependencies = [
- "generic-array",
- "rand_core 0.6.4",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "crypto-common"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
-dependencies = [
- "generic-array",
- "rand_core 0.6.4",
- "typenum",
-]
-
-[[package]]
-name = "crypto_box"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16182b4f39a82ec8a6851155cc4c0cda3065bb1db33651726a29e1951de0f009"
-dependencies = [
- "aead",
- "chacha20",
- "crypto_secretbox",
- "curve25519-dalek 4.1.2",
- "salsa20",
- "serdect",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "crypto_secretbox"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9d6cf87adf719ddf43a805e92c6870a531aedda35ff640442cbaf8674e141e1"
-dependencies = [
- "aead",
- "chacha20",
- "cipher",
- "generic-array",
- "poly1305",
- "salsa20",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "curve25519-dalek"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61"
-dependencies = [
- "byteorder",
- "digest 0.9.0",
- "rand_core 0.5.1",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "curve25519-dalek"
-version = "4.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "curve25519-dalek-derive",
- "digest 0.10.7",
- "fiat-crypto",
- "platforms",
- "rustc_version",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "curve25519-dalek-derive"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "darling"
-version = "0.13.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
-dependencies = [
- "darling_core 0.13.4",
- "darling_macro 0.13.4",
-]
-
-[[package]]
-name = "darling"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
-dependencies = [
- "darling_core 0.14.4",
- "darling_macro 0.14.4",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.13.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.13.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
-dependencies = [
- "darling_core 0.13.4",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
-dependencies = [
- "darling_core 0.14.4",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "dashmap"
-version = "5.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
-dependencies = [
- "cfg-if",
- "hashbrown",
- "lock_api",
- "once_cell",
- "parking_lot_core",
-]
-
-[[package]]
-name = "data-encoding"
-version = "2.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
-
-[[package]]
-name = "default-net"
-version = "0.14.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4898b43aed56499fad6b294d15b3e76a51df68079bf492e5daae38ca084e003"
-dependencies = [
- "dlopen2 0.4.1",
- "libc",
- "memalloc",
- "netlink-packet-core 0.5.0",
- "netlink-packet-route 0.15.0",
- "netlink-sys",
- "once_cell",
- "system-configuration 0.5.1",
- "windows 0.32.0",
-]
-
-[[package]]
-name = "deltachat"
-version = "1.140.2"
-dependencies = [
- "ansi_term",
- "anyhow",
- "async-broadcast",
- "async-channel 2.3.1",
- "async-imap",
- "async-native-tls",
- "async-smtp",
- "async_zip",
- "backtrace",
- "base64 0.22.1",
- "brotli",
- "chrono",
- "criterion",
- "deltachat-contact-tools",
- "deltachat-time",
- "deltachat_derive",
- "email",
- "encoded-words",
- "escaper",
- "fast-socks5",
- "fd-lock",
- "format-flowed",
- "futures",
- "futures-lite 2.3.0",
- "hex",
- "hickory-resolver",
- "humansize",
- "image",
- "iroh",
- "iroh-gossip",
- "iroh-net",
- "kamadak-exif",
- "lettre_email",
- "libc",
- "log",
- "mailparse",
- "mime",
- "num-derive",
- "num-traits",
- "num_cpus",
- "once_cell",
- "parking_lot",
- "percent-encoding",
- "pgp",
- "pretty_assertions",
- "proptest",
- "qrcodegen",
- "quick-xml",
- "quinn",
- "quoted_printable",
- "rand 0.8.5",
- "ratelimit",
- "regex",
- "reqwest 0.11.27",
- "rusqlite",
- "rust-hsluv",
- "sanitize-filename",
- "serde",
- "serde_json",
- "sha-1",
- "sha2 0.10.8",
- "smallvec",
- "strum",
- "strum_macros",
- "tagger",
- "tempfile",
- "testdir",
- "textwrap",
- "thiserror",
- "tokio",
- "tokio-io-timeout",
- "tokio-stream",
- "tokio-tar",
- "tokio-util",
- "toml",
- "url",
- "uuid",
-]
-
-[[package]]
-name = "deltachat-contact-tools"
-version = "0.0.0"
-dependencies = [
- "anyhow",
- "chrono",
- "once_cell",
- "regex",
- "rusqlite",
-]
-
-[[package]]
-name = "deltachat-jsonrpc"
-version = "1.140.2"
-dependencies = [
- "anyhow",
- "async-channel 2.3.1",
- "axum",
- "base64 0.22.1",
- "deltachat",
- "deltachat-contact-tools",
- "env_logger",
- "futures",
- "log",
- "num-traits",
- "sanitize-filename",
- "schemars",
- "serde",
- "serde_json",
- "tempfile",
- "tokio",
- "typescript-type-def",
- "walkdir",
- "yerpc",
-]
-
-[[package]]
-name = "deltachat-repl"
-version = "1.140.2"
-dependencies = [
- "ansi_term",
- "anyhow",
- "deltachat",
- "dirs",
- "log",
- "rusqlite",
- "rustyline",
- "tokio",
- "tracing-subscriber",
-]
-
-[[package]]
-name = "deltachat-rpc-server"
-version = "1.140.2"
-dependencies = [
- "anyhow",
- "deltachat",
- "deltachat-jsonrpc",
- "futures-lite 2.3.0",
- "log",
- "serde",
- "serde_json",
- "tokio",
- "tokio-util",
- "tracing-subscriber",
- "yerpc",
-]
-
-[[package]]
-name = "deltachat-time"
-version = "1.0.0"
-
-[[package]]
-name = "deltachat_derive"
-version = "2.0.0"
-dependencies = [
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "deltachat_ffi"
-version = "1.140.2"
-dependencies = [
- "anyhow",
- "deltachat",
- "deltachat-jsonrpc",
- "human-panic",
- "libc",
- "num-traits",
- "once_cell",
- "rand 0.8.5",
- "serde_json",
- "thiserror",
- "tokio",
- "yerpc",
-]
-
-[[package]]
-name = "der"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
-dependencies = [
- "const-oid",
- "der_derive 0.6.1",
- "pem-rfc7468 0.6.0",
- "zeroize",
-]
-
-[[package]]
-name = "der"
-version = "0.7.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
-dependencies = [
- "const-oid",
- "der_derive 0.7.2",
- "pem-rfc7468 0.7.0",
- "zeroize",
-]
-
-[[package]]
-name = "der-parser"
-version = "8.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e"
-dependencies = [
- "asn1-rs 0.5.2",
- "displaydoc",
- "nom",
- "num-bigint",
- "num-traits",
- "rusticata-macros",
-]
-
-[[package]]
-name = "der-parser"
-version = "9.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553"
-dependencies = [
- "asn1-rs 0.6.1",
- "displaydoc",
- "nom",
- "num-bigint",
- "num-traits",
- "rusticata-macros",
-]
-
-[[package]]
-name = "der_derive"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ef71ddb5b3a1f53dee24817c8f70dfa1cb29e804c18d88c228d4bc9c86ee3b9"
-dependencies = [
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "der_derive"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fe87ce4529967e0ba1dcf8450bab64d97dfd5010a6256187ffe2e43e6f0e049"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "deranged"
-version = "0.3.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
-dependencies = [
- "powerfmt",
- "serde",
-]
-
-[[package]]
-name = "derive_builder"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8"
-dependencies = [
- "derive_builder_macro",
-]
-
-[[package]]
-name = "derive_builder_core"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f"
-dependencies = [
- "darling 0.14.4",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "derive_builder_macro"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e"
-dependencies = [
- "derive_builder_core",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "derive_more"
-version = "0.99.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
-dependencies = [
- "convert_case 0.4.0",
- "proc-macro2",
- "quote",
- "rustc_version",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "derive_more"
-version = "1.0.0-beta.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7abbfc297053be59290e3152f8cbcd52c8642e0728b69ee187d991d4c1af08d"
-dependencies = [
- "derive_more-impl",
-]
-
-[[package]]
-name = "derive_more-impl"
-version = "1.0.0-beta.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bba3e9872d7c58ce7ef0fcf1844fcc3e23ef2a58377b50df35dd98e42a5726e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
- "unicode-xid",
-]
-
-[[package]]
-name = "des"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "diff"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8"
-
-[[package]]
-name = "digest"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "digest"
-version = "0.10.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
-dependencies = [
- "block-buffer 0.10.4",
- "const-oid",
- "crypto-common",
- "subtle",
-]
-
-[[package]]
-name = "dirs"
-version = "5.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-next"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
-dependencies = [
- "cfg-if",
- "dirs-sys-next",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
-dependencies = [
- "libc",
- "option-ext",
- "redox_users",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
-name = "displaydoc"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "dlopen2"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b121caccfc363e4d9a4589528f3bef7c71b83c6ed01c8dc68cbeeb7fd29ec698"
-dependencies = [
- "dlopen2_derive",
- "libc",
- "once_cell",
- "winapi",
-]
-
-[[package]]
-name = "dlopen2"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa"
-dependencies = [
- "libc",
- "once_cell",
- "winapi",
-]
-
-[[package]]
-name = "dlopen2_derive"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a09ac8bb8c16a282264c379dffba707b9c998afc7506009137f3c6136888078"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "dsa"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48bc224a9084ad760195584ce5abb3c2c34a225fa312a128ad245a6b412b7689"
-dependencies = [
- "digest 0.10.7",
- "num-bigint-dig",
- "num-traits",
- "pkcs8 0.10.2",
- "rfc6979 0.4.0",
- "sha2 0.10.8",
- "signature 2.2.0",
- "zeroize",
-]
-
-[[package]]
-name = "dtoa"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
-
-[[package]]
-name = "duct"
-version = "0.13.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4ab5718d1224b63252cd0c6f74f6480f9ffeb117438a2e0f5cf6d9a4798929c"
-dependencies = [
- "libc",
- "once_cell",
- "os_pipe",
- "shared_child",
-]
-
-[[package]]
-name = "dyn-clone"
-version = "1.0.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
-
-[[package]]
-name = "ecdsa"
-version = "0.14.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
-dependencies = [
- "der 0.6.1",
- "elliptic-curve 0.12.3",
- "rfc6979 0.3.1",
- "signature 1.6.4",
-]
-
-[[package]]
-name = "ecdsa"
-version = "0.16.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
-dependencies = [
- "der 0.7.8",
- "digest 0.10.7",
- "elliptic-curve 0.13.8",
- "rfc6979 0.4.0",
- "signature 2.2.0",
- "spki 0.7.3",
-]
-
-[[package]]
-name = "ed25519"
-version = "1.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7"
-dependencies = [
- "serde",
- "signature 1.6.4",
-]
-
-[[package]]
-name = "ed25519"
-version = "2.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
-dependencies = [
- "pkcs8 0.10.2",
- "serde",
- "signature 2.2.0",
-]
-
-[[package]]
-name = "ed25519-dalek"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
-dependencies = [
- "curve25519-dalek 3.2.0",
- "ed25519 1.5.3",
- "rand 0.7.3",
- "serde",
- "serde_bytes",
- "sha2 0.9.9",
- "zeroize",
-]
-
-[[package]]
-name = "ed25519-dalek"
-version = "2.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871"
-dependencies = [
- "curve25519-dalek 4.1.2",
- "ed25519 2.2.3",
- "rand_core 0.6.4",
- "serde",
- "sha2 0.10.8",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "educe"
-version = "0.4.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f0042ff8246a363dbe77d2ceedb073339e85a804b9a47636c6e016a9a32c05f"
-dependencies = [
- "enum-ordinalize",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "either"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
-
-[[package]]
-name = "elliptic-curve"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
-dependencies = [
- "base16ct 0.1.1",
- "crypto-bigint 0.4.9",
- "der 0.6.1",
- "digest 0.10.7",
- "ff 0.12.1",
- "generic-array",
- "group 0.12.1",
- "rand_core 0.6.4",
- "sec1 0.3.0",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "elliptic-curve"
-version = "0.13.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
-dependencies = [
- "base16ct 0.2.0",
- "crypto-bigint 0.5.5",
- "digest 0.10.7",
- "ff 0.13.0",
- "generic-array",
- "group 0.13.0",
- "hkdf",
- "pem-rfc7468 0.7.0",
- "pkcs8 0.10.2",
- "rand_core 0.6.4",
- "sec1 0.7.3",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "email"
-version = "0.0.20"
-source = "git+https://github.com/deltachat/rust-email?branch=master#5179cd68db44101ee3d3df7bfef96f014507352b"
-dependencies = [
- "base64 0.11.0",
- "chrono",
- "encoded-words",
- "encoding",
- "lazy_static",
- "rand 0.7.3",
- "version_check",
-]
-
-[[package]]
-name = "embedded-io"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced"
-
-[[package]]
-name = "encoded-words"
-version = "0.2.0"
-source = "git+https://github.com/async-email/encoded-words?branch=master#d55366b36f96e383f39c432aedce42ee8b43f796"
-dependencies = [
- "base64 0.12.3",
- "charset",
- "encoding_rs",
- "hex",
- "lazy_static",
- "regex",
- "thiserror",
-]
-
-[[package]]
-name = "encoding"
-version = "0.2.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"
-dependencies = [
- "encoding-index-japanese",
- "encoding-index-korean",
- "encoding-index-simpchinese",
- "encoding-index-singlebyte",
- "encoding-index-tradchinese",
-]
-
-[[package]]
-name = "encoding-index-japanese"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-korean"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-simpchinese"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-singlebyte"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-tradchinese"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding_index_tests"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "endian-type"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d"
-
-[[package]]
-name = "entities"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5320ae4c3782150d900b79807611a59a99fc9a1d61d686faafc24b93fc8d7ca"
-
-[[package]]
-name = "enum-as-inner"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a"
-dependencies = [
- "heck",
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "enum-ordinalize"
-version = "3.1.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bf1fa3f06bbff1ea5b1a9c7b14aa992a39657db60a2759457328d7e058f49ee"
-dependencies = [
- "num-bigint",
- "num-traits",
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "enumflags2"
-version = "0.7.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
-dependencies = [
- "enumflags2_derive",
-]
-
-[[package]]
-name = "enumflags2_derive"
-version = "0.7.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "env_filter"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea"
-dependencies = [
- "log",
- "regex",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.11.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
-dependencies = [
- "anstream",
- "anstyle",
- "env_filter",
- "humantime",
- "log",
-]
-
-[[package]]
-name = "equivalent"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
-
-[[package]]
-name = "erased-serde"
-version = "0.3.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "erased_set"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76a5aa24577083f8190ad401e376b55887c7cd9083ae95d83ceec5d28ea78125"
-
-[[package]]
-name = "errno"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
-dependencies = [
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "error-code"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b"
-
-[[package]]
-name = "escaper"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a53eb97b7349ba1bdb31839eceafe9aaae8f1d8d944dc589b67fb0b26e1c1666"
-dependencies = [
- "entities",
-]
-
-[[package]]
-name = "event-listener"
-version = "2.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
-
-[[package]]
-name = "event-listener"
-version = "4.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
-dependencies = [
- "concurrent-queue",
- "parking",
- "pin-project-lite",
-]
-
-[[package]]
-name = "event-listener"
-version = "5.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
-dependencies = [
- "concurrent-queue",
- "parking",
- "pin-project-lite",
-]
-
-[[package]]
-name = "event-listener-strategy"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
-dependencies = [
- "event-listener 5.2.0",
- "pin-project-lite",
-]
-
-[[package]]
-name = "fallible-iterator"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
-
-[[package]]
-name = "fallible-streaming-iterator"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
-
-[[package]]
-name = "fast-socks5"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f89f36d4ee12370d30d57b16c7e190950a1a916e7dbbb5fd5a412f5ef913fe84"
-dependencies = [
- "anyhow",
- "async-trait",
- "log",
- "thiserror",
- "tokio",
- "tokio-stream",
-]
-
-[[package]]
-name = "fast_chemail"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "495a39d30d624c2caabe6312bfead73e7717692b44e0b32df168c275a2e8e9e4"
-dependencies = [
- "ascii_utils",
-]
-
-[[package]]
-name = "fastrand"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "fastrand"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
-
-[[package]]
-name = "fd-lock"
-version = "4.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947"
-dependencies = [
- "cfg-if",
- "rustix",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "fdeflate"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645"
-dependencies = [
- "simd-adler32",
-]
-
-[[package]]
-name = "ff"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160"
-dependencies = [
- "rand_core 0.6.4",
- "subtle",
-]
-
-[[package]]
-name = "ff"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
-dependencies = [
- "rand_core 0.6.4",
- "subtle",
-]
-
-[[package]]
-name = "fiat-crypto"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382"
-
-[[package]]
-name = "filetime"
-version = "0.2.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall 0.4.1",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "flate2"
-version = "1.0.28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
-dependencies = [
- "crc32fast",
- "miniz_oxide",
-]
-
-[[package]]
-name = "flume"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
-dependencies = [
- "futures-core",
- "futures-sink",
- "nanorand",
- "spin 0.9.8",
-]
-
-[[package]]
-name = "fnv"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-[[package]]
-name = "foreign-types"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared",
-]
-
-[[package]]
-name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "form_urlencoded"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
-dependencies = [
- "percent-encoding",
-]
-
-[[package]]
-name = "format-flowed"
-version = "1.0.0"
-
-[[package]]
-name = "funty"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c"
-
-[[package]]
-name = "futures"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-buffered"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02dcae03ee5afa5ea17b1aebc793806b8ddfc6dc500e0b8e8e1eb30b9dad22c0"
-dependencies = [
- "futures-core",
- "futures-util",
- "pin-project-lite",
-]
-
-[[package]]
-name = "futures-channel"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
-dependencies = [
- "futures-core",
- "futures-sink",
-]
-
-[[package]]
-name = "futures-concurrency"
-version = "7.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51ee14e256b9143bfafbf2fddeede6f396650bacf95d06fc1b3f2b503df129a0"
-dependencies = [
- "bitvec",
- "futures-core",
- "futures-lite 1.13.0",
- "pin-project",
- "slab",
- "smallvec",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
-
-[[package]]
-name = "futures-executor"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-io"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
-
-[[package]]
-name = "futures-lite"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
-dependencies = [
- "fastrand 1.9.0",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
-
-[[package]]
-name = "futures-lite"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
-dependencies = [
- "fastrand 2.0.1",
- "futures-core",
- "futures-io",
- "parking",
- "pin-project-lite",
-]
-
-[[package]]
-name = "futures-macro"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "futures-sink"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
-
-[[package]]
-name = "futures-task"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
-
-[[package]]
-name = "futures-timer"
-version = "3.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24"
-
-[[package]]
-name = "futures-util"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-macro",
- "futures-sink",
- "futures-task",
- "memchr",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "genawaiter"
-version = "0.99.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c86bd0361bcbde39b13475e6e36cb24c329964aa2611be285289d1e4b751c1a0"
-dependencies = [
- "futures-core",
- "genawaiter-macro",
-]
-
-[[package]]
-name = "genawaiter-macro"
-version = "0.99.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b32dfe1fdfc0bbde1f22a5da25355514b5e450c33a6af6770884c8750aedfbc"
-
-[[package]]
-name = "generic-array"
-version = "0.14.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
-dependencies = [
- "typenum",
- "version_check",
- "zeroize",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.1.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
-dependencies = [
- "cfg-if",
- "js-sys",
- "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "gif"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
-dependencies = [
- "color_quant",
- "weezl",
-]
-
-[[package]]
-name = "gimli"
-version = "0.29.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd"
-
-[[package]]
-name = "glob"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
-
-[[package]]
-name = "governor"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b"
-dependencies = [
- "cfg-if",
- "dashmap",
- "futures",
- "futures-timer",
- "no-std-compat",
- "nonzero_ext",
- "parking_lot",
- "portable-atomic",
- "quanta",
- "rand 0.8.5",
- "smallvec",
- "spinning_top",
-]
-
-[[package]]
-name = "group"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
-dependencies = [
- "ff 0.12.1",
- "rand_core 0.6.4",
- "subtle",
-]
-
-[[package]]
-name = "group"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
-dependencies = [
- "ff 0.13.0",
- "rand_core 0.6.4",
- "subtle",
-]
-
-[[package]]
-name = "h2"
-version = "0.3.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
-dependencies = [
- "bytes",
- "fnv",
- "futures-core",
- "futures-sink",
- "futures-util",
- "http 0.2.12",
- "indexmap",
- "slab",
- "tokio",
- "tokio-util",
- "tracing",
-]
-
-[[package]]
-name = "half"
-version = "2.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5eceaaeec696539ddaf7b333340f1af35a5aa87ae3e4f3ead0532f72affab2e"
-dependencies = [
- "cfg-if",
- "crunchy",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
-dependencies = [
- "ahash",
- "allocator-api2",
-]
-
-[[package]]
-name = "hashlink"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "692eaaf7f7607518dd3cef090f1474b61edc5301d8012f09579920df68b725ee"
-dependencies = [
- "hashbrown",
-]
-
-[[package]]
-name = "heck"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-
-[[package]]
-name = "hickory-proto"
-version = "0.24.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "091a6fbccf4860009355e3efc52ff4acf37a63489aad7435372d44ceeb6fbbcf"
-dependencies = [
- "async-trait",
- "cfg-if",
- "data-encoding",
- "enum-as-inner",
- "futures-channel",
- "futures-io",
- "futures-util",
- "idna 0.4.0",
- "ipnet",
- "once_cell",
- "rand 0.8.5",
- "thiserror",
- "tinyvec",
- "tokio",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "hickory-resolver"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28757f23aa75c98f254cf0405e6d8c25b831b32921b050a66692427679b1f243"
-dependencies = [
- "cfg-if",
- "futures-util",
- "hickory-proto",
- "ipconfig",
- "lru-cache",
- "once_cell",
- "parking_lot",
- "rand 0.8.5",
- "resolv-conf",
- "smallvec",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "hkdf"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
-dependencies = [
- "hmac",
-]
-
-[[package]]
-name = "hmac"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
-dependencies = [
- "digest 0.10.7",
-]
-
-[[package]]
-name = "hmac-sha1"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b05da5b9e5d4720bfb691eebb2b9d42da3570745da71eac8a1f5bb7e59aab88"
-dependencies = [
- "hmac",
- "sha1",
-]
-
-[[package]]
-name = "hmac-sha256"
-version = "1.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3688e69b38018fec1557254f64c8dc2cc8ec502890182f395dbb0aa997aa5735"
-
-[[package]]
-name = "home"
-version = "0.5.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
-dependencies = [
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "hostname"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867"
-dependencies = [
- "libc",
- "match_cfg",
- "winapi",
-]
-
-[[package]]
-name = "hostname-validator"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f558a64ac9af88b5ba400d99b579451af0d39c6d360980045b91aac966d705e2"
-
-[[package]]
-name = "http"
-version = "0.2.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
-dependencies = [
- "bytes",
- "fnv",
- "itoa",
-]
-
-[[package]]
-name = "http"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
-dependencies = [
- "bytes",
- "fnv",
- "itoa",
-]
-
-[[package]]
-name = "http-body"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
-dependencies = [
- "bytes",
- "http 0.2.12",
- "pin-project-lite",
-]
-
-[[package]]
-name = "http-body"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
-dependencies = [
- "bytes",
- "http 1.1.0",
-]
-
-[[package]]
-name = "http-body-util"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840"
-dependencies = [
- "bytes",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "pin-project-lite",
-]
-
-[[package]]
-name = "httparse"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
-
-[[package]]
-name = "httpdate"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
-
-[[package]]
-name = "human-panic"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4c5d0e9120f6bca6120d142c7ede1ba376dd6bf276d69dd3dbe6cbeb7824179"
-dependencies = [
- "backtrace",
- "os_info",
- "serde",
- "serde_derive",
- "toml",
- "uuid",
-]
-
-[[package]]
-name = "humansize"
-version = "2.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7"
-dependencies = [
- "libm",
-]
-
-[[package]]
-name = "humantime"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
-
-[[package]]
-name = "hyper"
-version = "0.14.28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
-dependencies = [
- "bytes",
- "futures-channel",
- "futures-core",
- "futures-util",
- "h2",
- "http 0.2.12",
- "http-body 0.4.6",
- "httparse",
- "httpdate",
- "itoa",
- "pin-project-lite",
- "socket2",
- "tokio",
- "tower-service",
- "tracing",
- "want",
-]
-
-[[package]]
-name = "hyper"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
-dependencies = [
- "bytes",
- "futures-channel",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "httparse",
- "httpdate",
- "itoa",
- "pin-project-lite",
- "smallvec",
- "tokio",
- "want",
-]
-
-[[package]]
-name = "hyper-rustls"
-version = "0.24.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
-dependencies = [
- "futures-util",
- "http 0.2.12",
- "hyper 0.14.28",
- "rustls 0.21.11",
- "tokio",
- "tokio-rustls 0.24.1",
-]
-
-[[package]]
-name = "hyper-rustls"
-version = "0.26.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c"
-dependencies = [
- "futures-util",
- "http 1.1.0",
- "hyper 1.2.0",
- "hyper-util",
- "rustls 0.22.4",
- "rustls-pki-types",
- "tokio",
- "tokio-rustls 0.25.0",
- "tower-service",
-]
-
-[[package]]
-name = "hyper-tls"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
-dependencies = [
- "bytes",
- "hyper 0.14.28",
- "native-tls",
- "tokio",
- "tokio-native-tls",
-]
-
-[[package]]
-name = "hyper-util"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
-dependencies = [
- "bytes",
- "futures-channel",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "hyper 1.2.0",
- "pin-project-lite",
- "socket2",
- "tokio",
- "tower",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "iana-time-zone"
-version = "0.1.60"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
-dependencies = [
- "android_system_properties",
- "core-foundation-sys",
- "iana-time-zone-haiku",
- "js-sys",
- "wasm-bindgen",
- "windows-core 0.52.0",
-]
-
-[[package]]
-name = "iana-time-zone-haiku"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "idea"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "075557004419d7f2031b8bb7f44bb43e55a83ca7b63076a8fb8fe75753836477"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "ident_case"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
-
-[[package]]
-name = "idna"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "idna"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "igd-next"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "064d90fec10d541084e7b39ead8875a5a80d9114a2b18791565253bae25f49e4"
-dependencies = [
- "async-trait",
- "attohttpc",
- "bytes",
- "futures",
- "http 0.2.12",
- "hyper 0.14.28",
- "log",
- "rand 0.8.5",
- "tokio",
- "url",
- "xmltree",
-]
-
-[[package]]
-name = "image"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd54d660e773627692c524beaad361aca785a4f9f5730ce91f42aabe5bce3d11"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "gif",
- "image-webp",
- "num-traits",
- "png",
- "zune-core",
- "zune-jpeg",
-]
-
-[[package]]
-name = "image-webp"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a84a25dcae3ac487bc24ef280f9e20c79c9b1a3e5e32cbed3041d1c514aa87c"
-dependencies = [
- "byteorder",
- "thiserror",
-]
-
-[[package]]
-name = "imap-proto"
-version = "0.16.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de555d9526462b6f9ece826a26fb7c67eca9a0245bd9ff84fa91972a5d5d8856"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "indexmap"
-version = "2.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
-dependencies = [
- "equivalent",
- "hashbrown",
-]
-
-[[package]]
-name = "inout"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "ipconfig"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f"
-dependencies = [
- "socket2",
- "widestring",
- "windows-sys 0.48.0",
- "winreg 0.50.0",
-]
-
-[[package]]
-name = "ipnet"
-version = "2.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
-
-[[package]]
-name = "iroh"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85075391dcb8491a4939266334b28601052d418b37d20b33c58ffb5776adc912"
-dependencies = [
- "abao",
- "anyhow",
- "base64 0.21.7",
- "blake3",
- "bytes",
- "default-net",
- "der 0.6.1",
- "derive_more 0.99.17",
- "dirs-next",
- "ed25519-dalek 1.0.1",
- "futures",
- "hex",
- "num_cpus",
- "portable-atomic",
- "postcard",
- "quic-rpc",
- "quinn",
- "rand 0.7.3",
- "rcgen 0.10.0",
- "ring 0.16.20",
- "rustls 0.21.11",
- "rustls-webpki 0.101.7",
- "serde",
- "serde-error",
- "ssh-key 0.5.1",
- "tempfile",
- "thiserror",
- "tokio",
- "tokio-stream",
- "tokio-util",
- "tracing",
- "tracing-futures",
- "tracing-subscriber",
- "walkdir",
- "x509-parser 0.14.0",
- "zeroize",
-]
-
-[[package]]
-name = "iroh-base"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1be0b442ed44d20905cf77c673169906c883e05c829e3fb303b131e925139fc"
-dependencies = [
- "aead",
- "anyhow",
- "crypto_box",
- "data-encoding",
- "derive_more 1.0.0-beta.6",
- "ed25519-dalek 2.1.1",
- "getrandom 0.2.12",
- "hex",
- "iroh-blake3",
- "once_cell",
- "postcard",
- "rand 0.8.5",
- "rand_core 0.6.4",
- "serde",
- "serde-error",
- "ssh-key 0.6.6",
- "thiserror",
- "ttl_cache",
- "url",
- "zeroize",
-]
-
-[[package]]
-name = "iroh-blake3"
-version = "1.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efbba31f40a650f58fa28dd585a8ca76d8ae3ba63aacab4c8269004a0c803930"
-dependencies = [
- "arrayref",
- "arrayvec",
- "cc",
- "cfg-if",
- "constant_time_eq",
-]
-
-[[package]]
-name = "iroh-gossip"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "857aa77a0b29283edf99224bd12cd739684c5873e639b85adb38b8d1d777162d"
-dependencies = [
- "anyhow",
- "bytes",
- "derive_more 1.0.0-beta.6",
- "ed25519-dalek 2.1.1",
- "futures-lite 2.3.0",
- "genawaiter",
- "indexmap",
- "iroh-base",
- "iroh-blake3",
- "iroh-metrics",
- "iroh-net",
- "postcard",
- "rand 0.8.5",
- "rand_core 0.6.4",
- "serde",
- "tokio",
- "tokio-util",
- "tracing",
-]
-
-[[package]]
-name = "iroh-metrics"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd54b9cf342b2618efc8d3ff6cdcd083fa5a2cf6cc78bb473bd32e228eabb40e"
-dependencies = [
- "anyhow",
- "erased_set",
- "http-body-util",
- "hyper 1.2.0",
- "hyper-util",
- "once_cell",
- "prometheus-client",
- "reqwest 0.12.4",
- "serde",
- "struct_iterable",
- "time 0.3.34",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "iroh-net"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a744000e6c5704479eeb4751eb23b9b8e7e56a0fc484beb8831694fc93e378f"
-dependencies = [
- "aead",
- "anyhow",
- "axum",
- "backoff",
- "base64 0.22.1",
- "bytes",
- "der 0.7.8",
- "derive_more 1.0.0-beta.6",
- "duct",
- "flume",
- "futures-buffered",
- "futures-concurrency",
- "futures-lite 2.3.0",
- "futures-sink",
- "futures-util",
- "governor",
- "hex",
- "hickory-proto",
- "hickory-resolver",
- "hostname",
- "http 1.1.0",
- "http-body-util",
- "hyper 1.2.0",
- "hyper-util",
- "igd-next",
- "iroh-base",
- "iroh-metrics",
- "iroh-quinn",
- "iroh-quinn-proto",
- "iroh-quinn-udp",
- "libc",
- "netdev",
- "netlink-packet-core 0.7.0",
- "netlink-packet-route 0.17.1",
- "netlink-sys",
- "num_enum",
- "once_cell",
- "parking_lot",
- "pin-project",
- "pkarr",
- "postcard",
- "rand 0.8.5",
- "rand_core 0.6.4",
- "rcgen 0.12.1",
- "reqwest 0.12.4",
- "ring 0.17.8",
- "rtnetlink",
- "rustls 0.21.11",
- "rustls-webpki 0.101.7",
- "serde",
- "smallvec",
- "socket2",
- "strum",
- "stun-rs",
- "surge-ping",
- "thiserror",
- "time 0.3.34",
- "tokio",
- "tokio-rustls 0.24.1",
- "tokio-rustls-acme",
- "tokio-util",
- "tracing",
- "url",
- "watchable",
- "webpki-roots 0.25.4",
- "windows 0.51.1",
- "wmi",
- "x509-parser 0.15.1",
- "z32",
-]
-
-[[package]]
-name = "iroh-quinn"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "906875956feb75d3d41d708ddaffeb11fdb10cd05f23efbcb17600037e411779"
-dependencies = [
- "bytes",
- "iroh-quinn-proto",
- "iroh-quinn-udp",
- "pin-project-lite",
- "rustc-hash",
- "rustls 0.21.11",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "iroh-quinn-proto"
-version = "0.10.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6bf92478805e67f2320459285496e1137edf5171411001a0d4d85f9bbafb792"
-dependencies = [
- "bytes",
- "rand 0.8.5",
- "ring 0.17.8",
- "rustc-hash",
- "rustls 0.21.11",
- "rustls-native-certs",
- "slab",
- "thiserror",
- "tinyvec",
- "tracing",
-]
-
-[[package]]
-name = "iroh-quinn-udp"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edc7915b3a31f08ee0bc02f73f4d61a5d5be146a1081ef7f70622a11627fd314"
-dependencies = [
- "bytes",
- "libc",
- "socket2",
- "tracing",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
-dependencies = [
- "hermit-abi",
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "iter-read"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a598c1abae8e3456ebda517868b254b6bc2a9bb6501ffd5b9d0875bf332e048b"
-
-[[package]]
-name = "itertools"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
-
-[[package]]
-name = "js-sys"
-version = "0.3.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "k256"
-version = "0.13.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b"
-dependencies = [
- "cfg-if",
- "ecdsa 0.16.9",
- "elliptic-curve 0.13.8",
- "once_cell",
- "sha2 0.10.8",
- "signature 2.2.0",
-]
-
-[[package]]
-name = "kamadak-exif"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef4fc70d0ab7e5b6bafa30216a6b48705ea964cdfc29c050f2412295eba58077"
-dependencies = [
- "mutate_once",
-]
-
-[[package]]
-name = "keccak"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654"
-dependencies = [
- "cpufeatures",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-dependencies = [
- "spin 0.5.2",
-]
-
-[[package]]
-name = "lettre"
-version = "0.9.2"
-source = "git+https://github.com/deltachat/lettre?branch=master#2ffdb5347f1255b4aed51cf87cda1f8207160f36"
-dependencies = [
- "fast_chemail",
- "log",
-]
-
-[[package]]
-name = "lettre_email"
-version = "0.9.2"
-source = "git+https://github.com/deltachat/lettre?branch=master#2ffdb5347f1255b4aed51cf87cda1f8207160f36"
-dependencies = [
- "base64 0.11.0",
- "email",
- "lazy_static",
- "lettre",
- "mime",
- "regex",
- "time 0.1.45",
- "uuid",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.155"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
-
-[[package]]
-name = "libm"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
-
-[[package]]
-name = "libredox"
-version = "0.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
-dependencies = [
- "bitflags 2.4.2",
- "libc",
- "redox_syscall 0.4.1",
-]
-
-[[package]]
-name = "libsqlite3-sys"
-version = "0.28.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f"
-dependencies = [
- "cc",
- "openssl-sys",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "linked-hash-map"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.4.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
-
-[[package]]
-name = "lock_api"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "log"
-version = "0.4.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
-
-[[package]]
-name = "lru-cache"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c"
-dependencies = [
- "linked-hash-map",
-]
-
-[[package]]
-name = "mailparse"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3da03d5980411a724e8aaf7b61a7b5e386ec55a7fb49ee3d0ff79efc7e5e7c7e"
-dependencies = [
- "charset",
- "data-encoding",
- "quoted_printable",
-]
-
-[[package]]
-name = "match_cfg"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
-
-[[package]]
-name = "matchers"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
-dependencies = [
- "regex-automata 0.1.10",
-]
-
-[[package]]
-name = "matchit"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
-
-[[package]]
-name = "md-5"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
-dependencies = [
- "cfg-if",
- "digest 0.10.7",
-]
-
-[[package]]
-name = "md5"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771"
-
-[[package]]
-name = "memalloc"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df39d232f5c40b0891c10216992c2f250c054105cb1e56f0fc9032db6203ecc1"
-
-[[package]]
-name = "memchr"
-version = "2.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
-
-[[package]]
-name = "mime"
-version = "0.3.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
-dependencies = [
- "adler",
- "simd-adler32",
-]
-
-[[package]]
-name = "mio"
-version = "0.8.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
-dependencies = [
- "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "mutate_once"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b"
-
-[[package]]
-name = "nanorand"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
-dependencies = [
- "getrandom 0.2.12",
-]
-
-[[package]]
-name = "native-tls"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
-dependencies = [
- "lazy_static",
- "libc",
- "log",
- "openssl",
- "openssl-probe",
- "openssl-sys",
- "schannel",
- "security-framework",
- "security-framework-sys",
- "tempfile",
-]
-
-[[package]]
-name = "netdev"
-version = "0.25.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb353f5a5a852d5cc779c1c80bec0bd14a696ef832f3a761cb10091802c37109"
-dependencies = [
- "dlopen2 0.5.0",
- "libc",
- "memalloc",
- "netlink-packet-core 0.7.0",
- "netlink-packet-route 0.17.1",
- "netlink-sys",
- "once_cell",
- "system-configuration 0.6.0",
- "windows 0.54.0",
-]
-
-[[package]]
-name = "netlink-packet-core"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e5cf0b54effda4b91615c40ff0fd12d0d4c9a6e0f5116874f03941792ff535a"
-dependencies = [
- "anyhow",
- "byteorder",
- "libc",
- "netlink-packet-utils",
-]
-
-[[package]]
-name = "netlink-packet-core"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72724faf704479d67b388da142b186f916188505e7e0b26719019c525882eda4"
-dependencies = [
- "anyhow",
- "byteorder",
- "netlink-packet-utils",
-]
-
-[[package]]
-name = "netlink-packet-route"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea993e32c77d87f01236c38f572ecb6c311d592e56a06262a007fd2a6e31253c"
-dependencies = [
- "anyhow",
- "bitflags 1.3.2",
- "byteorder",
- "libc",
- "netlink-packet-core 0.5.0",
- "netlink-packet-utils",
-]
-
-[[package]]
-name = "netlink-packet-route"
-version = "0.17.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053998cea5a306971f88580d0829e90f270f940befd7cf928da179d4187a5a66"
-dependencies = [
- "anyhow",
- "bitflags 1.3.2",
- "byteorder",
- "libc",
- "netlink-packet-core 0.7.0",
- "netlink-packet-utils",
-]
-
-[[package]]
-name = "netlink-packet-utils"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ede8a08c71ad5a95cdd0e4e52facd37190977039a4704eb82a283f713747d34"
-dependencies = [
- "anyhow",
- "byteorder",
- "paste",
- "thiserror",
-]
-
-[[package]]
-name = "netlink-proto"
-version = "0.11.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b33524dc0968bfad349684447bfce6db937a9ac3332a1fe60c0c5a5ce63f21"
-dependencies = [
- "bytes",
- "futures",
- "log",
- "netlink-packet-core 0.7.0",
- "netlink-sys",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "netlink-sys"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6471bf08e7ac0135876a9581bf3217ef0333c191c128d34878079f42ee150411"
-dependencies = [
- "bytes",
- "futures",
- "libc",
- "log",
- "tokio",
-]
-
-[[package]]
-name = "nibble_vec"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43"
-dependencies = [
- "smallvec",
-]
-
-[[package]]
-name = "nix"
-version = "0.26.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
-dependencies = [
- "bitflags 1.3.2",
- "cfg-if",
- "libc",
-]
-
-[[package]]
-name = "nix"
-version = "0.28.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
-dependencies = [
- "bitflags 2.4.2",
- "cfg-if",
- "cfg_aliases",
- "libc",
-]
-
-[[package]]
-name = "no-std-compat"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c"
-
-[[package]]
-name = "no-std-net"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43794a0ace135be66a25d3ae77d41b91615fb68ae937f904090203e81f755b65"
-
-[[package]]
-name = "nom"
-version = "7.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "nonzero_ext"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21"
-
-[[package]]
-name = "ntapi"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "nu-ansi-term"
-version = "0.46.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
-dependencies = [
- "overload",
- "winapi",
-]
-
-[[package]]
-name = "num-bigint"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-bigint-dig"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
-dependencies = [
- "byteorder",
- "lazy_static",
- "libm",
- "num-integer",
- "num-iter",
- "num-traits",
- "rand 0.8.5",
- "serde",
- "smallvec",
- "zeroize",
-]
-
-[[package]]
-name = "num-conv"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
-
-[[package]]
-name = "num-derive"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.46"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
-dependencies = [
- "num-traits",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
-dependencies = [
- "autocfg",
- "libm",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "num_enum"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
-dependencies = [
- "num_enum_derive",
-]
-
-[[package]]
-name = "num_enum_derive"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "object"
-version = "0.35.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "oid-registry"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff"
-dependencies = [
- "asn1-rs 0.5.2",
-]
-
-[[package]]
-name = "oid-registry"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c958dd45046245b9c3c2547369bb634eb461670b2e7e0de552905801a648d1d"
-dependencies = [
- "asn1-rs 0.6.1",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
-
-[[package]]
-name = "oorandom"
-version = "11.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
-
-[[package]]
-name = "opaque-debug"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
-
-[[package]]
-name = "openssl"
-version = "0.10.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
-dependencies = [
- "bitflags 2.4.2",
- "cfg-if",
- "foreign-types",
- "libc",
- "once_cell",
- "openssl-macros",
- "openssl-sys",
-]
-
-[[package]]
-name = "openssl-macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "openssl-probe"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
-
-[[package]]
-name = "openssl-src"
-version = "300.3.0+3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eba8804a1c5765b18c4b3f907e6897ebabeedebc9830e1a0046c4a4cf44663e1"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "openssl-sys"
-version = "0.9.102"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
-dependencies = [
- "cc",
- "libc",
- "openssl-src",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "option-ext"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
-
-[[package]]
-name = "os_info"
-version = "3.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "006e42d5b888366f1880eda20371fedde764ed2213dc8496f49622fa0c99cd5e"
-dependencies = [
- "log",
- "serde",
- "winapi",
-]
-
-[[package]]
-name = "os_pipe"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9"
-dependencies = [
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "overload"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
-
-[[package]]
-name = "p256"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594"
-dependencies = [
- "ecdsa 0.14.8",
- "elliptic-curve 0.12.3",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "p256"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
-dependencies = [
- "ecdsa 0.16.9",
- "elliptic-curve 0.13.8",
- "primeorder",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "p384"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa"
-dependencies = [
- "ecdsa 0.14.8",
- "elliptic-curve 0.12.3",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "p384"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209"
-dependencies = [
- "ecdsa 0.16.9",
- "elliptic-curve 0.13.8",
- "primeorder",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "p521"
-version = "0.13.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2"
-dependencies = [
- "base16ct 0.2.0",
- "ecdsa 0.16.9",
- "elliptic-curve 0.13.8",
- "primeorder",
- "rand_core 0.6.4",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "parking"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
-
-[[package]]
-name = "parking_lot"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
-dependencies = [
- "lock_api",
- "parking_lot_core",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.9.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall 0.4.1",
- "smallvec",
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "paste"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
-
-[[package]]
-name = "pem"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8"
-dependencies = [
- "base64 0.13.1",
-]
-
-[[package]]
-name = "pem"
-version = "3.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae"
-dependencies = [
- "base64 0.22.1",
- "serde",
-]
-
-[[package]]
-name = "pem-rfc7468"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac"
-dependencies = [
- "base64ct",
-]
-
-[[package]]
-name = "pem-rfc7468"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
-dependencies = [
- "base64ct",
-]
-
-[[package]]
-name = "percent-encoding"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
-
-[[package]]
-name = "pest"
-version = "2.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8"
-dependencies = [
- "memchr",
- "thiserror",
- "ucd-trie",
-]
-
-[[package]]
-name = "pest_derive"
-version = "2.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26293c9193fbca7b1a3bf9b79dc1e388e927e6cacaa78b4a3ab705a1d3d41459"
-dependencies = [
- "pest",
- "pest_generator",
-]
-
-[[package]]
-name = "pest_generator"
-version = "2.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ec22af7d3fb470a85dd2ca96b7c577a1eb4ef6f1683a9fe9a8c16e136c04687"
-dependencies = [
- "pest",
- "pest_meta",
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "pest_meta"
-version = "2.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7a240022f37c361ec1878d646fc5b7d7c4d28d5946e1a80ad5a7a4f4ca0bdcd"
-dependencies = [
- "once_cell",
- "pest",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "pgp"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "031fa1e28c4cb54c90502ef0642a44ef10ec8349349ebe6372089f1b1ef4f297"
-dependencies = [
- "aes",
- "base64 0.21.7",
- "bitfield",
- "block-padding",
- "blowfish",
- "bstr",
- "buffer-redux",
- "byteorder",
- "camellia",
- "cast5",
- "cfb-mode",
- "chrono",
- "cipher",
- "const-oid",
- "crc24",
- "curve25519-dalek 4.1.2",
- "derive_builder",
- "des",
- "digest 0.10.7",
- "dsa",
- "ed25519-dalek 2.1.1",
- "elliptic-curve 0.13.8",
- "flate2",
- "generic-array",
- "hex",
- "idea",
- "iter-read",
- "k256",
- "log",
- "md-5",
- "nom",
- "num-bigint-dig",
- "num-traits",
- "num_enum",
- "p256 0.13.2",
- "p384 0.13.0",
- "rand 0.8.5",
- "ripemd",
- "rsa 0.9.6",
- "sha1",
- "sha2 0.10.8",
- "sha3",
- "signature 2.2.0",
- "smallvec",
- "thiserror",
- "twofish",
- "x25519-dalek",
- "zeroize",
-]
-
-[[package]]
-name = "pin-project"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
-dependencies = [
- "pin-project-internal",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "pkarr"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "242ae92dfb9d2ba3aaa9caf4723e72043bc50729ad05a763771771ba03196ffb"
-dependencies = [
- "bytes",
- "ed25519-dalek 2.1.1",
- "rand 0.8.5",
- "reqwest 0.11.27",
- "self_cell",
- "simple-dns",
- "thiserror",
- "url",
- "z32",
-]
-
-[[package]]
-name = "pkcs1"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eff33bdbdfc54cc98a2eca766ebdec3e1b8fb7387523d5c9c9a2891da856f719"
-dependencies = [
- "der 0.6.1",
- "pkcs8 0.9.0",
- "spki 0.6.0",
- "zeroize",
-]
-
-[[package]]
-name = "pkcs1"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
-dependencies = [
- "der 0.7.8",
- "pkcs8 0.10.2",
- "spki 0.7.3",
-]
-
-[[package]]
-name = "pkcs8"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba"
-dependencies = [
- "der 0.6.1",
- "spki 0.6.0",
-]
-
-[[package]]
-name = "pkcs8"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
-dependencies = [
- "der 0.7.8",
- "spki 0.7.3",
-]
-
-[[package]]
-name = "pkg-config"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
-
-[[package]]
-name = "platforms"
-version = "3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c"
-
-[[package]]
-name = "plotters"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45"
-dependencies = [
- "num-traits",
- "plotters-backend",
- "plotters-svg",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "plotters-backend"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609"
-
-[[package]]
-name = "plotters-svg"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab"
-dependencies = [
- "plotters-backend",
-]
-
-[[package]]
-name = "pnet_base"
-version = "0.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe4cf6fb3ab38b68d01ab2aea03ed3d1132b4868fa4e06285f29f16da01c5f4c"
-dependencies = [
- "no-std-net",
-]
-
-[[package]]
-name = "pnet_macros"
-version = "0.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "688b17499eee04a0408aca0aa5cba5fc86401d7216de8a63fdf7a4c227871804"
-dependencies = [
- "proc-macro2",
- "quote",
- "regex",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "pnet_macros_support"
-version = "0.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eea925b72f4bd37f8eab0f221bbe4c78b63498350c983ffa9dd4bcde7e030f56"
-dependencies = [
- "pnet_base",
-]
-
-[[package]]
-name = "pnet_packet"
-version = "0.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a005825396b7fe7a38a8e288dbc342d5034dac80c15212436424fef8ea90ba"
-dependencies = [
- "glob",
- "pnet_base",
- "pnet_macros",
- "pnet_macros_support",
-]
-
-[[package]]
-name = "png"
-version = "0.17.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
-dependencies = [
- "bitflags 1.3.2",
- "crc32fast",
- "fdeflate",
- "flate2",
- "miniz_oxide",
-]
-
-[[package]]
-name = "poly1305"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf"
-dependencies = [
- "cpufeatures",
- "opaque-debug",
- "universal-hash",
-]
-
-[[package]]
-name = "portable-atomic"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
-
-[[package]]
-name = "postcard"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8"
-dependencies = [
- "cobs",
- "const_format",
- "embedded-io",
- "postcard-derive",
- "serde",
-]
-
-[[package]]
-name = "postcard-derive"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc4b01218787dd4420daf63875163a787a78294ad48a24e9f6fa8c6507759a79"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "powerfmt"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
-
-[[package]]
-name = "precis-core"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d73e9dd26361c32e7cd13d1032bb01c4e26a23287274e8a4e2f228cf2c9ff77b"
-dependencies = [
- "precis-tools",
- "ucd-parse",
- "unicode-normalization",
-]
-
-[[package]]
-name = "precis-profiles"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bde4bd6624c60cb0abe2bea1dbdbb9085f629a853861e64df4abb099f8076ad4"
-dependencies = [
- "lazy_static",
- "precis-core",
- "precis-tools",
- "unicode-normalization",
-]
-
-[[package]]
-name = "precis-tools"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d07ecadec70b0f560f09abf815ae0ee1a940d38d2354c938ba7229ac7c9f5f52"
-dependencies = [
- "lazy_static",
- "regex",
- "ucd-parse",
-]
-
-[[package]]
-name = "pretty_assertions"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66"
-dependencies = [
- "diff",
- "yansi",
-]
-
-[[package]]
-name = "primeorder"
-version = "0.13.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
-dependencies = [
- "elliptic-curve 0.13.8",
-]
-
-[[package]]
-name = "proc-macro-crate"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
-dependencies = [
- "toml_edit 0.21.1",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.85"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "prometheus-client"
-version = "0.22.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1ca959da22a332509f2a73ae9e5f23f9dcfc31fd3a54d71f159495bd5909baa"
-dependencies = [
- "dtoa",
- "itoa",
- "parking_lot",
- "prometheus-client-derive-encode",
-]
-
-[[package]]
-name = "prometheus-client-derive-encode"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "proptest"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf"
-dependencies = [
- "bitflags 2.4.2",
- "lazy_static",
- "num-traits",
- "rand 0.8.5",
- "rand_chacha 0.3.1",
- "rand_xorshift",
- "regex-syntax 0.8.2",
- "unarray",
-]
-
-[[package]]
-name = "qrcodegen"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4339fc7a1021c9c1621d87f5e3505f2805c8c105420ba2f2a4df86814590c142"
-
-[[package]]
-name = "quanta"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5"
-dependencies = [
- "crossbeam-utils",
- "libc",
- "once_cell",
- "raw-cpuid",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "web-sys",
- "winapi",
-]
-
-[[package]]
-name = "quic-rpc"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1428fcf30c17a159ff10c1f3c69fca92fd7cfa11e9fef7d573f3c6f0da3b5920"
-dependencies = [
- "bincode",
- "educe",
- "flume",
- "futures",
- "pin-project",
- "quinn",
- "serde",
- "tokio",
- "tokio-serde",
- "tokio-util",
- "tracing",
-]
-
-[[package]]
-name = "quick-error"
-version = "1.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-
-[[package]]
-name = "quick-xml"
-version = "0.31.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "quinn"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cc2c5017e4b43d5995dcea317bc46c1e09404c0a9664d2908f7f02dfe943d75"
-dependencies = [
- "bytes",
- "pin-project-lite",
- "quinn-proto",
- "quinn-udp",
- "rustc-hash",
- "rustls 0.21.11",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "quinn-proto"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "141bf7dfde2fbc246bfd3fe12f2455aa24b0fbd9af535d8c86c7bd1381ff2b1a"
-dependencies = [
- "bytes",
- "rand 0.8.5",
- "ring 0.16.20",
- "rustc-hash",
- "rustls 0.21.11",
- "rustls-native-certs",
- "slab",
- "thiserror",
- "tinyvec",
- "tracing",
-]
-
-[[package]]
-name = "quinn-udp"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "055b4e778e8feb9f93c4e439f71dc2156ef13360b432b799e179a8c4cdf0b1d7"
-dependencies = [
- "bytes",
- "libc",
- "socket2",
- "tracing",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.36"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "quoted-string-parser"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dc75379cdb451d001f1cb667a9f74e8b355e9df84cc5193513cbe62b96fc5e9"
-dependencies = [
- "pest",
- "pest_derive",
-]
-
-[[package]]
-name = "quoted_printable"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79ec282e887b434b68c18fe5c121d38e72a5cf35119b59e54ec5b992ea9c8eb0"
-
-[[package]]
-name = "radium"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
-
-[[package]]
-name = "radix_trie"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd"
-dependencies = [
- "endian-type",
- "nibble_vec",
-]
-
-[[package]]
-name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-dependencies = [
- "getrandom 0.1.16",
- "libc",
- "rand_chacha 0.2.2",
- "rand_core 0.5.1",
- "rand_hc",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha 0.3.1",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.16",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom 0.2.12",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_xorshift"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f"
-dependencies = [
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "ratelimit"
-version = "1.0.0"
-
-[[package]]
-name = "raw-cpuid"
-version = "11.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e29830cbb1290e404f24c73af91c5d8d631ce7e128691e9477556b540cd01ecd"
-dependencies = [
- "bitflags 2.4.2",
-]
-
-[[package]]
-name = "rayon"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd"
-dependencies = [
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
-dependencies = [
- "crossbeam-deque",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "rcgen"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b"
-dependencies = [
- "pem 1.1.1",
- "ring 0.16.20",
- "time 0.3.34",
- "yasna",
-]
-
-[[package]]
-name = "rcgen"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48406db8ac1f3cbc7dcdb56ec355343817958a356ff430259bb07baf7607e1e1"
-dependencies = [
- "pem 3.0.4",
- "ring 0.17.8",
- "time 0.3.34",
- "yasna",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
-dependencies = [
- "getrandom 0.2.12",
- "libredox",
- "thiserror",
-]
-
-[[package]]
-name = "regex"
-version = "1.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-automata 0.4.6",
- "regex-syntax 0.8.2",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-dependencies = [
- "regex-syntax 0.6.29",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax 0.8.2",
-]
-
-[[package]]
-name = "regex-lite"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e"
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
-
-[[package]]
-name = "regex-syntax"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
-
-[[package]]
-name = "reqwest"
-version = "0.11.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
-dependencies = [
- "base64 0.21.7",
- "bytes",
- "encoding_rs",
- "futures-core",
- "futures-util",
- "h2",
- "http 0.2.12",
- "http-body 0.4.6",
- "hyper 0.14.28",
- "hyper-rustls 0.24.2",
- "hyper-tls",
- "ipnet",
- "js-sys",
- "log",
- "mime",
- "native-tls",
- "once_cell",
- "percent-encoding",
- "pin-project-lite",
- "rustls 0.21.11",
- "rustls-pemfile 1.0.4",
- "serde",
- "serde_json",
- "serde_urlencoded",
- "sync_wrapper 0.1.2",
- "system-configuration 0.5.1",
- "tokio",
- "tokio-native-tls",
- "tokio-rustls 0.24.1",
- "tower-service",
- "url",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "webpki-roots 0.25.4",
- "winreg 0.50.0",
-]
-
-[[package]]
-name = "reqwest"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
-dependencies = [
- "base64 0.22.1",
- "bytes",
- "futures-core",
- "futures-util",
- "http 1.1.0",
- "http-body 1.0.0",
- "http-body-util",
- "hyper 1.2.0",
- "hyper-rustls 0.26.0",
- "hyper-util",
- "ipnet",
- "js-sys",
- "log",
- "mime",
- "once_cell",
- "percent-encoding",
- "pin-project-lite",
- "rustls 0.22.4",
- "rustls-pemfile 2.1.2",
- "rustls-pki-types",
- "serde",
- "serde_json",
- "serde_urlencoded",
- "sync_wrapper 0.1.2",
- "tokio",
- "tokio-rustls 0.25.0",
- "tower-service",
- "url",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "webpki-roots 0.26.1",
- "winreg 0.52.0",
-]
-
-[[package]]
-name = "resolv-conf"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00"
-dependencies = [
- "hostname",
- "quick-error",
-]
-
-[[package]]
-name = "rfc6979"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb"
-dependencies = [
- "crypto-bigint 0.4.9",
- "hmac",
- "zeroize",
-]
-
-[[package]]
-name = "rfc6979"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
-dependencies = [
- "hmac",
- "subtle",
-]
-
-[[package]]
-name = "ring"
-version = "0.16.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
-dependencies = [
- "cc",
- "libc",
- "once_cell",
- "spin 0.5.2",
- "untrusted 0.7.1",
- "web-sys",
- "winapi",
-]
-
-[[package]]
-name = "ring"
-version = "0.17.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
-dependencies = [
- "cc",
- "cfg-if",
- "getrandom 0.2.12",
- "libc",
- "spin 0.9.8",
- "untrusted 0.9.0",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "ripemd"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f"
-dependencies = [
- "digest 0.10.7",
-]
-
-[[package]]
-name = "rsa"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "094052d5470cbcef561cb848a7209968c9f12dfa6d668f4bca048ac5de51099c"
-dependencies = [
- "byteorder",
- "digest 0.10.7",
- "num-bigint-dig",
- "num-integer",
- "num-iter",
- "num-traits",
- "pkcs1 0.4.1",
- "pkcs8 0.9.0",
- "rand_core 0.6.4",
- "signature 1.6.4",
- "smallvec",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "rsa"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
-dependencies = [
- "const-oid",
- "digest 0.10.7",
- "num-bigint-dig",
- "num-integer",
- "num-traits",
- "pkcs1 0.7.5",
- "pkcs8 0.10.2",
- "rand_core 0.6.4",
- "sha2 0.10.8",
- "signature 2.2.0",
- "spki 0.7.3",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "rtnetlink"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a552eb82d19f38c3beed3f786bd23aa434ceb9ac43ab44419ca6d67a7e186c0"
-dependencies = [
- "futures",
- "log",
- "netlink-packet-core 0.7.0",
- "netlink-packet-route 0.17.1",
- "netlink-packet-utils",
- "netlink-proto",
- "netlink-sys",
- "nix 0.26.4",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "rusqlite"
-version = "0.31.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b838eba278d213a8beaf485bd313fd580ca4505a00d5871caeb1457c55322cae"
-dependencies = [
- "bitflags 2.4.2",
- "fallible-iterator",
- "fallible-streaming-iterator",
- "hashlink",
- "libsqlite3-sys",
- "smallvec",
-]
-
-[[package]]
-name = "rust-hsluv"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efe2374f2385cdd8755a446f80b2a646de603c9d8539ca38734879b5c71e378b"
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
-
-[[package]]
-name = "rustc-hash"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
-
-[[package]]
-name = "rustc_version"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
-dependencies = [
- "semver",
-]
-
-[[package]]
-name = "rusticata-macros"
-version = "4.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
-dependencies = [
- "bitflags 2.4.2",
- "errno",
- "libc",
- "linux-raw-sys",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "rustls"
-version = "0.21.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4"
-dependencies = [
- "log",
- "ring 0.17.8",
- "rustls-webpki 0.101.7",
- "sct",
-]
-
-[[package]]
-name = "rustls"
-version = "0.22.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
-dependencies = [
- "log",
- "ring 0.17.8",
- "rustls-pki-types",
- "rustls-webpki 0.102.4",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "rustls-native-certs"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
-dependencies = [
- "openssl-probe",
- "rustls-pemfile 1.0.4",
- "schannel",
- "security-framework",
-]
-
-[[package]]
-name = "rustls-pemfile"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
-dependencies = [
- "base64 0.21.7",
-]
-
-[[package]]
-name = "rustls-pemfile"
-version = "2.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
-dependencies = [
- "base64 0.22.1",
- "rustls-pki-types",
-]
-
-[[package]]
-name = "rustls-pki-types"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d"
-
-[[package]]
-name = "rustls-webpki"
-version = "0.101.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
-dependencies = [
- "ring 0.17.8",
- "untrusted 0.9.0",
-]
-
-[[package]]
-name = "rustls-webpki"
-version = "0.102.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e"
-dependencies = [
- "ring 0.17.8",
- "rustls-pki-types",
- "untrusted 0.9.0",
-]
-
-[[package]]
-name = "rustversion"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
-
-[[package]]
-name = "rustyline"
-version = "14.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7803e8936da37efd9b6d4478277f4b2b9bb5cdb37a113e8d63222e58da647e63"
-dependencies = [
- "bitflags 2.4.2",
- "cfg-if",
- "clipboard-win",
- "fd-lock",
- "home",
- "libc",
- "log",
- "memchr",
- "nix 0.28.0",
- "radix_trie",
- "unicode-segmentation",
- "unicode-width",
- "utf8parse",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
-
-[[package]]
-name = "salsa20"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "sanitize-filename"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ed72fbaf78e6f2d41744923916966c4fbe3d7c74e3037a8ee482f1115572603"
-dependencies = [
- "lazy_static",
- "regex",
-]
-
-[[package]]
-name = "schannel"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
-dependencies = [
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "schemars"
-version = "0.8.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92"
-dependencies = [
- "dyn-clone",
- "schemars_derive",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "schemars_derive"
-version = "0.8.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e"
-dependencies = [
- "proc-macro2",
- "quote",
- "serde_derive_internals",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "scopeguard"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
-
-[[package]]
-name = "sct"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
-dependencies = [
- "ring 0.17.8",
- "untrusted 0.9.0",
-]
-
-[[package]]
-name = "sec1"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
-dependencies = [
- "base16ct 0.1.1",
- "der 0.6.1",
- "generic-array",
- "pkcs8 0.9.0",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "sec1"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
-dependencies = [
- "base16ct 0.2.0",
- "der 0.7.8",
- "generic-array",
- "pkcs8 0.10.2",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "security-framework"
-version = "2.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
-]
-
-[[package]]
-name = "security-framework-sys"
-version = "2.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "self_cell"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58bf37232d3bb9a2c4e641ca2a11d83b5062066f88df7fed36c28772046d65ba"
-
-[[package]]
-name = "semver"
-version = "1.0.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "serde"
-version = "1.0.203"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde-error"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e988182713aeed6a619a88bca186f6d6407483485ffe44c869ee264f8eabd13f"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "serde_bytes"
-version = "0.11.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.203"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "serde_derive_internals"
-version = "0.29.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.117"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_path_to_error"
-version = "0.1.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c"
-dependencies = [
- "itoa",
- "serde",
-]
-
-[[package]]
-name = "serde_spanned"
-version = "0.6.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "serde_urlencoded"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
-dependencies = [
- "form_urlencoded",
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serdect"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177"
-dependencies = [
- "base16ct 0.2.0",
- "serde",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.7",
-]
-
-[[package]]
-name = "sha1"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.7",
-]
-
-[[package]]
-name = "sha2"
-version = "0.9.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
-dependencies = [
- "block-buffer 0.9.0",
- "cfg-if",
- "cpufeatures",
- "digest 0.9.0",
- "opaque-debug",
-]
-
-[[package]]
-name = "sha2"
-version = "0.10.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.7",
-]
-
-[[package]]
-name = "sha3"
-version = "0.10.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60"
-dependencies = [
- "digest 0.10.7",
- "keccak",
-]
-
-[[package]]
-name = "sharded-slab"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
-name = "shared_child"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0d94659ad3c2137fef23ae75b03d5241d633f8acded53d672decfa0e6e0caef"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "signal-hook-registry"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "signature"
-version = "1.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
-dependencies = [
- "digest 0.10.7",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "signature"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
-dependencies = [
- "digest 0.10.7",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "simd-adler32"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
-
-[[package]]
-name = "simple-dns"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01607fe2e61894468c6dc0b26103abb073fb08b79a3d9e4b6d76a1a341549958"
-dependencies = [
- "bitflags 2.4.2",
-]
-
-[[package]]
-name = "slab"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
-
-[[package]]
-name = "smawk"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
-
-[[package]]
-name = "socket2"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
-dependencies = [
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "spin"
-version = "0.9.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
-dependencies = [
- "lock_api",
-]
-
-[[package]]
-name = "spinning_top"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96d2d1d716fb500937168cc09353ffdc7a012be8475ac7308e1bdf0e3923300"
-dependencies = [
- "lock_api",
-]
-
-[[package]]
-name = "spki"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b"
-dependencies = [
- "base64ct",
- "der 0.6.1",
-]
-
-[[package]]
-name = "spki"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
-dependencies = [
- "base64ct",
- "der 0.7.8",
-]
-
-[[package]]
-name = "ssh-cipher"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "caac132742f0d33c3af65bfcde7f6aa8f62f0e991d80db99149eb9d44708784f"
-dependencies = [
- "cipher",
- "ssh-encoding 0.2.0",
-]
-
-[[package]]
-name = "ssh-encoding"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19cfdc32e0199062113edf41f344fbf784b8205a94600233c84eb838f45191e1"
-dependencies = [
- "base64ct",
- "pem-rfc7468 0.6.0",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "ssh-encoding"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb9242b9ef4108a78e8cd1a2c98e193ef372437f8c22be363075233321dd4a15"
-dependencies = [
- "base64ct",
- "pem-rfc7468 0.7.0",
- "sha2 0.10.8",
-]
-
-[[package]]
-name = "ssh-key"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "288d8f5562af5a3be4bda308dd374b2c807b940ac370b5efa1c99311da91d9a1"
-dependencies = [
- "ed25519-dalek 1.0.1",
- "p256 0.11.1",
- "p384 0.11.2",
- "rand_core 0.6.4",
- "rsa 0.7.2",
- "sec1 0.3.0",
- "sha2 0.10.8",
- "signature 1.6.4",
- "ssh-encoding 0.1.0",
- "zeroize",
-]
-
-[[package]]
-name = "ssh-key"
-version = "0.6.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca9b366a80cf18bb6406f4cf4d10aebfb46140a8c0c33f666a144c5c76ecbafc"
-dependencies = [
- "ed25519-dalek 2.1.1",
- "p256 0.13.2",
- "p384 0.13.0",
- "p521",
- "rand_core 0.6.4",
- "rsa 0.9.6",
- "sec1 0.7.3",
- "sha2 0.10.8",
- "signature 2.2.0",
- "ssh-cipher",
- "ssh-encoding 0.2.0",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "stop-token"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af91f480ee899ab2d9f8435bfdfc14d08a5754bd9d3fef1f1a1c23336aad6c8b"
-dependencies = [
- "async-channel 1.9.0",
- "cfg-if",
- "futures-core",
- "pin-project-lite",
-]
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "struct_iterable"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "849a064c6470a650b72e41fa6c057879b68f804d113af92900f27574828e7712"
-dependencies = [
- "struct_iterable_derive",
- "struct_iterable_internal",
-]
-
-[[package]]
-name = "struct_iterable_derive"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bb939ce88a43ea4e9d012f2f6b4cc789deb2db9d47bad697952a85d6978662c"
-dependencies = [
- "erased-serde",
- "proc-macro2",
- "quote",
- "struct_iterable_internal",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "struct_iterable_internal"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9426b2a0c03e6cc2ea8dbc0168dbbf943f88755e409fb91bcb8f6a268305f4a"
-
-[[package]]
-name = "strum"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
-dependencies = [
- "strum_macros",
-]
-
-[[package]]
-name = "strum_macros"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
-dependencies = [
- "heck",
- "proc-macro2",
- "quote",
- "rustversion",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "stun-rs"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0adebf9fb8fba5c39ee34092b0383f247e4d1255b98fcffec94b4b797b85b677"
-dependencies = [
- "base64 0.22.1",
- "bounded-integer",
- "byteorder",
- "crc",
- "enumflags2",
- "fallible-iterator",
- "hmac-sha1",
- "hmac-sha256",
- "hostname-validator",
- "lazy_static",
- "md5",
- "paste",
- "precis-core",
- "precis-profiles",
- "quoted-string-parser",
- "rand 0.8.5",
-]
-
-[[package]]
-name = "subtle"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
-
-[[package]]
-name = "surge-ping"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efbf95ce4c7c5b311d2ce3f088af2b93edef0f09727fa50fbe03c7a979afce77"
-dependencies = [
- "hex",
- "parking_lot",
- "pnet_packet",
- "rand 0.8.5",
- "socket2",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.66"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "sync_wrapper"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
-
-[[package]]
-name = "sync_wrapper"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "384595c11a4e2969895cad5a8c4029115f5ab956a9e5ef4de79d11a426e5f20c"
-
-[[package]]
-name = "synstructure"
-version = "0.12.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "unicode-xid",
-]
-
-[[package]]
-name = "synstructure"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "sysinfo"
-version = "0.26.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c18a6156d1f27a9592ee18c1a846ca8dd5c258b7179fc193ae87c74ebb666f5"
-dependencies = [
- "cfg-if",
- "core-foundation-sys",
- "libc",
- "ntapi",
- "once_cell",
- "winapi",
-]
-
-[[package]]
-name = "system-configuration"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "system-configuration-sys 0.5.0",
-]
-
-[[package]]
-name = "system-configuration"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bc6ee10a9b4fcf576e9b0819d95ec16f4d2c02d39fd83ac1c8789785c4a42"
-dependencies = [
- "bitflags 2.4.2",
- "core-foundation",
- "system-configuration-sys 0.6.0",
-]
-
-[[package]]
-name = "system-configuration-sys"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "system-configuration-sys"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "tagger"
-version = "4.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "094c9f64d6de9a8506b1e49b63a29333b37ed9e821ee04be694d431b3264c3c5"
-
-[[package]]
-name = "tap"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
-
-[[package]]
-name = "tempfile"
-version = "3.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
-dependencies = [
- "cfg-if",
- "fastrand 2.0.1",
- "rustix",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "testdir"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee79e927b64d193f5abb60d20a0eb56be0ee5a242fdeb8ce3bf054177006de52"
-dependencies = [
- "anyhow",
- "backtrace",
- "cargo_metadata",
- "once_cell",
- "sysinfo",
- "whoami",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.16.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
-dependencies = [
- "smawk",
- "unicode-linebreak",
- "unicode-width",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.61"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.61"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "thread_local"
-version = "1.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
-dependencies = [
- "cfg-if",
- "once_cell",
-]
-
-[[package]]
-name = "time"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
-dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
-]
-
-[[package]]
-name = "time"
-version = "0.3.34"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
-dependencies = [
- "deranged",
- "itoa",
- "num-conv",
- "powerfmt",
- "serde",
- "time-core",
- "time-macros",
-]
-
-[[package]]
-name = "time-core"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
-
-[[package]]
-name = "time-macros"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
-dependencies = [
- "num-conv",
- "time-core",
-]
-
-[[package]]
-name = "tinytemplate"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "tinyvec"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
-dependencies = [
- "tinyvec_macros",
-]
-
-[[package]]
-name = "tinyvec_macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
-
-[[package]]
-name = "tokio"
-version = "1.38.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a"
-dependencies = [
- "backtrace",
- "bytes",
- "libc",
- "mio",
- "num_cpus",
- "parking_lot",
- "pin-project-lite",
- "signal-hook-registry",
- "socket2",
- "tokio-macros",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "tokio-io-timeout"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf"
-dependencies = [
- "pin-project-lite",
- "tokio",
-]
-
-[[package]]
-name = "tokio-macros"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "tokio-native-tls"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
-dependencies = [
- "native-tls",
- "tokio",
-]
-
-[[package]]
-name = "tokio-rustls"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
-dependencies = [
- "rustls 0.21.11",
- "tokio",
-]
-
-[[package]]
-name = "tokio-rustls"
-version = "0.25.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
-dependencies = [
- "rustls 0.22.4",
- "rustls-pki-types",
- "tokio",
-]
-
-[[package]]
-name = "tokio-rustls-acme"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ebc06d846f8367f24c3a8882328707d1a5e507ef4f40943723ddbe2c17b9f24"
-dependencies = [
- "async-trait",
- "base64 0.21.7",
- "chrono",
- "futures",
- "log",
- "num-bigint",
- "pem 3.0.4",
- "proc-macro2",
- "rcgen 0.12.1",
- "reqwest 0.11.27",
- "ring 0.17.8",
- "rustls 0.21.11",
- "serde",
- "serde_json",
- "thiserror",
- "tokio",
- "tokio-rustls 0.24.1",
- "url",
- "webpki-roots 0.25.4",
- "x509-parser 0.16.0",
-]
-
-[[package]]
-name = "tokio-serde"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "911a61637386b789af998ee23f50aa30d5fd7edcec8d6d3dedae5e5815205466"
-dependencies = [
- "bincode",
- "bytes",
- "educe",
- "futures-core",
- "futures-sink",
- "pin-project",
- "serde",
-]
-
-[[package]]
-name = "tokio-stream"
-version = "0.1.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
-dependencies = [
- "futures-core",
- "pin-project-lite",
- "tokio",
-]
-
-[[package]]
-name = "tokio-tar"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5714c010ca3e5c27114c1cdeb9d14641ace49874aa5626d7149e47aedace75"
-dependencies = [
- "filetime",
- "futures-core",
- "libc",
- "redox_syscall 0.3.5",
- "tokio",
- "tokio-stream",
- "xattr",
-]
-
-[[package]]
-name = "tokio-tungstenite"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
-dependencies = [
- "futures-util",
- "log",
- "tokio",
- "tungstenite",
-]
-
-[[package]]
-name = "tokio-util"
-version = "0.7.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1"
-dependencies = [
- "bytes",
- "futures-core",
- "futures-sink",
- "pin-project-lite",
- "tokio",
-]
-
-[[package]]
-name = "toml"
-version = "0.8.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba"
-dependencies = [
- "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit 0.22.13",
-]
-
-[[package]]
-name = "toml_datetime"
-version = "0.6.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.21.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
-dependencies = [
- "indexmap",
- "toml_datetime",
- "winnow 0.5.40",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.22.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c"
-dependencies = [
- "indexmap",
- "serde",
- "serde_spanned",
- "toml_datetime",
- "winnow 0.6.5",
-]
-
-[[package]]
-name = "tower"
-version = "0.4.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
-dependencies = [
- "futures-core",
- "futures-util",
- "pin-project",
- "pin-project-lite",
- "tokio",
- "tower-layer",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "tower-layer"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
-
-[[package]]
-name = "tower-service"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
-
-[[package]]
-name = "tracing"
-version = "0.1.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
-dependencies = [
- "log",
- "pin-project-lite",
- "tracing-attributes",
- "tracing-core",
-]
-
-[[package]]
-name = "tracing-attributes"
-version = "0.1.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "tracing-core"
-version = "0.1.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
-dependencies = [
- "once_cell",
- "valuable",
-]
-
-[[package]]
-name = "tracing-futures"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
-dependencies = [
- "pin-project",
- "tracing",
-]
-
-[[package]]
-name = "tracing-log"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
-dependencies = [
- "log",
- "once_cell",
- "tracing-core",
-]
-
-[[package]]
-name = "tracing-subscriber"
-version = "0.3.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
-dependencies = [
- "matchers",
- "nu-ansi-term",
- "once_cell",
- "regex",
- "sharded-slab",
- "smallvec",
- "thread_local",
- "tracing",
- "tracing-core",
- "tracing-log",
-]
-
-[[package]]
-name = "try-lock"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
-
-[[package]]
-name = "ttl_cache"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4189890526f0168710b6ee65ceaedf1460c48a14318ceec933cb26baa492096a"
-dependencies = [
- "linked-hash-map",
-]
-
-[[package]]
-name = "tungstenite"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
-dependencies = [
- "byteorder",
- "bytes",
- "data-encoding",
- "http 1.1.0",
- "httparse",
- "log",
- "rand 0.8.5",
- "sha1",
- "thiserror",
- "url",
- "utf-8",
-]
-
-[[package]]
-name = "twofish"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a78e83a30223c757c3947cd144a31014ff04298d8719ae10d03c31c0448c8013"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "typenum"
-version = "1.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
-
-[[package]]
-name = "typescript-type-def"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19d9560109be8840693dcb09ed745851f3713bee7b23534b8cab65b7ff9383f1"
-dependencies = [
- "serde_json",
- "typescript-type-def-derive",
-]
-
-[[package]]
-name = "typescript-type-def-derive"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2835fe6badda3e20a012d19d6593ded0fc11f659d5d5152394061ffbb03b4b04"
-dependencies = [
- "darling 0.13.4",
- "ident_case",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "ucd-parse"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06ff81122fcbf4df4c1660b15f7e3336058e7aec14437c9f85c6b31a0f279b9"
-dependencies = [
- "regex-lite",
-]
-
-[[package]]
-name = "ucd-trie"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9"
-
-[[package]]
-name = "unarray"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94"
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
-
-[[package]]
-name = "unicode-linebreak"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-segmentation"
-version = "1.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
-
-[[package]]
-name = "universal-hash"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
-dependencies = [
- "crypto-common",
- "subtle",
-]
-
-[[package]]
-name = "untrusted"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
-
-[[package]]
-name = "untrusted"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
-
-[[package]]
-name = "url"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
-dependencies = [
- "form_urlencoded",
- "idna 0.5.0",
- "percent-encoding",
- "serde",
-]
-
-[[package]]
-name = "utf-8"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
-
-[[package]]
-name = "utf8parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
-
-[[package]]
-name = "uuid"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
-dependencies = [
- "getrandom 0.2.12",
- "serde",
-]
-
-[[package]]
-name = "valuable"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
-
-[[package]]
-name = "vcpkg"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "waker-fn"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
-
-[[package]]
-name = "walkdir"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
-dependencies = [
- "same-file",
- "winapi-util",
-]
-
-[[package]]
-name = "want"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
-dependencies = [
- "try-lock",
-]
-
-[[package]]
-name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasite"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn 2.0.66",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-futures"
-version = "0.4.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
-dependencies = [
- "cfg-if",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
-
-[[package]]
-name = "watchable"
-version = "1.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45b42a2f611916b5965120a9cde2b60f2db4454826dd9ad5e6f47c24a5b3b259"
-dependencies = [
- "event-listener 4.0.3",
- "futures-util",
- "parking_lot",
- "thiserror",
-]
-
-[[package]]
-name = "web-sys"
-version = "0.3.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "webpki-roots"
-version = "0.25.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
-
-[[package]]
-name = "webpki-roots"
-version = "0.26.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
-dependencies = [
- "rustls-pki-types",
-]
-
-[[package]]
-name = "weezl"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
-
-[[package]]
-name = "whoami"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fec781d48b41f8163426ed18e8fc2864c12937df9ce54c88ede7bd47270893e"
-dependencies = [
- "redox_syscall 0.4.1",
- "wasite",
- "web-sys",
-]
-
-[[package]]
-name = "widestring"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbedf6db9096bc2364adce0ae0aa636dcd89f3c3f2cd67947062aaf0ca2a10ec"
-dependencies = [
- "windows_aarch64_msvc 0.32.0",
- "windows_i686_gnu 0.32.0",
- "windows_i686_msvc 0.32.0",
- "windows_x86_64_gnu 0.32.0",
- "windows_x86_64_msvc 0.32.0",
-]
-
-[[package]]
-name = "windows"
-version = "0.51.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9"
-dependencies = [
- "windows-core 0.51.1",
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "windows"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
-dependencies = [
- "windows-core 0.52.0",
- "windows-implement",
- "windows-interface",
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows"
-version = "0.54.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
-dependencies = [
- "windows-core 0.54.0",
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows-core"
-version = "0.51.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
-dependencies = [
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "windows-core"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
-dependencies = [
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows-core"
-version = "0.54.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
-dependencies = [
- "windows-result",
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows-implement"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12168c33176773b86799be25e2a2ba07c7aab9968b37541f1094dbd7a60c8946"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "windows-interface"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d8dc32e0095a7eeccebd0e3f09e9509365ecb3fc6ac4d6f5f14a3f6392942d1"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "windows-result"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b"
-dependencies = [
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows-sys"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
-dependencies = [
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "windows-sys"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
-dependencies = [
- "windows-targets 0.52.5",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-dependencies = [
- "windows_aarch64_gnullvm 0.48.5",
- "windows_aarch64_msvc 0.48.5",
- "windows_i686_gnu 0.48.5",
- "windows_i686_msvc 0.48.5",
- "windows_x86_64_gnu 0.48.5",
- "windows_x86_64_gnullvm 0.48.5",
- "windows_x86_64_msvc 0.48.5",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
-dependencies = [
- "windows_aarch64_gnullvm 0.52.5",
- "windows_aarch64_msvc 0.52.5",
- "windows_i686_gnu 0.52.5",
- "windows_i686_gnullvm",
- "windows_i686_msvc 0.52.5",
- "windows_x86_64_gnu 0.52.5",
- "windows_x86_64_gnullvm 0.52.5",
- "windows_x86_64_msvc 0.52.5",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
-
-[[package]]
-name = "windows_i686_gnullvm"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.32.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.52.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
-
-[[package]]
-name = "winnow"
-version = "0.5.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "winnow"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "winreg"
-version = "0.50.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
-dependencies = [
- "cfg-if",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "winreg"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
-dependencies = [
- "cfg-if",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "wmi"
-version = "0.13.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc2f0a4062ca522aad4705a2948fd4061b3857537990202a8ddd5af21607f79a"
-dependencies = [
- "chrono",
- "futures",
- "log",
- "serde",
- "thiserror",
- "windows 0.52.0",
-]
-
-[[package]]
-name = "wyz"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed"
-dependencies = [
- "tap",
-]
-
-[[package]]
-name = "x25519-dalek"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
-dependencies = [
- "curve25519-dalek 4.1.2",
- "rand_core 0.6.4",
- "serde",
- "zeroize",
-]
-
-[[package]]
-name = "x509-parser"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8"
-dependencies = [
- "asn1-rs 0.5.2",
- "base64 0.13.1",
- "data-encoding",
- "der-parser 8.2.0",
- "lazy_static",
- "nom",
- "oid-registry 0.6.1",
- "rusticata-macros",
- "thiserror",
- "time 0.3.34",
-]
-
-[[package]]
-name = "x509-parser"
-version = "0.15.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da"
-dependencies = [
- "asn1-rs 0.5.2",
- "data-encoding",
- "der-parser 8.2.0",
- "lazy_static",
- "nom",
- "oid-registry 0.6.1",
- "rusticata-macros",
- "thiserror",
- "time 0.3.34",
-]
-
-[[package]]
-name = "x509-parser"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69"
-dependencies = [
- "asn1-rs 0.6.1",
- "data-encoding",
- "der-parser 9.0.0",
- "lazy_static",
- "nom",
- "oid-registry 0.7.0",
- "rusticata-macros",
- "thiserror",
- "time 0.3.34",
-]
-
-[[package]]
-name = "xattr"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
-dependencies = [
- "libc",
- "linux-raw-sys",
- "rustix",
-]
-
-[[package]]
-name = "xml-rs"
-version = "0.8.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
-
-[[package]]
-name = "xmltree"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7d8a75eaf6557bb84a65ace8609883db44a29951042ada9b393151532e41fcb"
-dependencies = [
- "xml-rs",
-]
-
-[[package]]
-name = "yansi"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
-
-[[package]]
-name = "yasna"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd"
-dependencies = [
- "time 0.3.34",
-]
-
-[[package]]
-name = "yerpc"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31978be1300d9d078f34ebb05660fbf3b5114611316a4777bb9ce269a7a33f38"
-dependencies = [
- "anyhow",
- "async-channel 1.9.0",
- "async-mutex",
- "async-trait",
- "axum",
- "futures",
- "futures-util",
- "log",
- "schemars",
- "serde",
- "serde_json",
- "tokio",
- "tracing",
- "typescript-type-def",
- "yerpc_derive",
-]
-
-[[package]]
-name = "yerpc_derive"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e510aa045bc7be964b982c68f001933fce4fbe609bb98de60068fa8cefe6308"
-dependencies = [
- "convert_case 0.5.0",
- "darling 0.14.4",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "z32"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edb37266251c28b03d08162174a91c3a092e3bd4f476f8205ee1c507b78b7bdc"
-
-[[package]]
-name = "zerocopy"
-version = "0.7.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
-dependencies = [
- "zerocopy-derive",
-]
-
-[[package]]
-name = "zerocopy-derive"
-version = "0.7.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "zeroize"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
-dependencies = [
- "zeroize_derive",
-]
-
-[[package]]
-name = "zeroize_derive"
-version = "1.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.66",
-]
-
-[[package]]
-name = "zune-core"
-version = "0.4.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a"
-
-[[package]]
-name = "zune-jpeg"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448"
-dependencies = [
- "zune-core",
-]
diff --git a/pkgs/development/libraries/libdeltachat/default.nix b/pkgs/development/libraries/libdeltachat/default.nix
deleted file mode 100644
index 4f303ba3ff4b2..0000000000000
--- a/pkgs/development/libraries/libdeltachat/default.nix
+++ /dev/null
@@ -1,98 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cargo
-, cmake
-, deltachat-desktop
-, deltachat-repl
-, deltachat-rpc-server
-, openssl
-, perl
-, pkg-config
-, python3
-, rustPlatform
-, sqlcipher
-, sqlite
-, fixDarwinDylibNames
-, CoreFoundation
-, Security
-, SystemConfiguration
-, libiconv
-}:
-
-let
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "email-0.0.20" = "sha256-rV4Uzqt2Qdrfi5Ti1r+Si1c2iW1kKyWLwOgLkQ5JGGw=";
-      "encoded-words-0.2.0" = "sha256-KK9st0hLFh4dsrnLd6D8lC6pRFFs8W+WpZSGMGJcosk=";
-      "lettre-0.9.2" = "sha256-+hU1cFacyyeC9UGVBpS14BWlJjHy90i/3ynMkKAzclk=";
-    };
-  };
-in stdenv.mkDerivation rec {
-  pname = "libdeltachat";
-  version = "1.140.2";
-
-  src = fetchFromGitHub {
-    owner = "deltachat";
-    repo = "deltachat-core-rust";
-    rev = "v${version}";
-    hash = "sha256-BSbvgKiI89B+nxp5McBKTJAwgePt27C1QvSQLhTL7pQ=";
-  };
-
-  patches = [
-    ./no-static-lib.patch
-  ];
-
-  cargoDeps = rustPlatform.importCargoLock cargoLock;
-
-  nativeBuildInputs = [
-    cmake
-    perl
-    pkg-config
-    rustPlatform.cargoSetupHook
-    cargo
-  ] ++ lib.optionals stdenv.isDarwin [
-    fixDarwinDylibNames
-  ];
-
-  buildInputs = [
-    openssl
-    sqlcipher
-    sqlite
-  ] ++ lib.optionals stdenv.isDarwin [
-    CoreFoundation
-    Security
-    SystemConfiguration
-    libiconv
-  ];
-
-  nativeCheckInputs = with rustPlatform; [
-    cargoCheckHook
-  ];
-
-  # Sometimes -fmacro-prefix-map= can redirect __FILE__ to non-existent
-  # paths. This breaks packages like `python3.pkgs.deltachat`. We embed
-  # absolute path to headers by expanding `__FILE__`.
-  postInstall = ''
-    substituteInPlace $out/include/deltachat.h \
-      --replace __FILE__ '"${placeholder "out"}/include/deltachat.h"'
-  '';
-
-  passthru = {
-    inherit cargoLock;
-    tests = {
-      inherit deltachat-desktop deltachat-repl deltachat-rpc-server;
-      python = python3.pkgs.deltachat;
-    };
-  };
-
-  meta = with lib; {
-    description = "Delta Chat Rust Core library";
-    homepage = "https://github.com/deltachat/deltachat-core-rust/";
-    changelog = "https://github.com/deltachat/deltachat-core-rust/blob/${src.rev}/CHANGELOG.md";
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ dotlambda ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libdeltachat/no-static-lib.patch b/pkgs/development/libraries/libdeltachat/no-static-lib.patch
deleted file mode 100644
index 9dc4ffd0ec074..0000000000000
--- a/pkgs/development/libraries/libdeltachat/no-static-lib.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 5587e391..a18092f5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -20,7 +20,6 @@ endif()
- 
- add_custom_command(
- 	OUTPUT
--	"${CMAKE_BINARY_DIR}/target/release/libdeltachat.a"
- 	"${CMAKE_BINARY_DIR}/target/release/libdeltachat.${DYNAMIC_EXT}"
- 	"${CMAKE_BINARY_DIR}/target/release/pkgconfig/deltachat.pc"
-         COMMAND
-@@ -35,12 +34,10 @@ add_custom_target(
- 	lib_deltachat
- 	ALL
- 	DEPENDS
--	"${CMAKE_BINARY_DIR}/target/release/libdeltachat.a"
- 	"${CMAKE_BINARY_DIR}/target/release/libdeltachat.${DYNAMIC_EXT}"
- 	"${CMAKE_BINARY_DIR}/target/release/pkgconfig/deltachat.pc"
- )
- 
- install(FILES "deltachat-ffi/deltachat.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
--install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/libdeltachat.a" DESTINATION ${CMAKE_INSTALL_LIBDIR})
- install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/libdeltachat.${DYNAMIC_EXT}" DESTINATION ${CMAKE_INSTALL_LIBDIR})
- install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/pkgconfig/deltachat.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
-diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml
-index d66cb00f..48347a48 100644
---- a/deltachat-ffi/Cargo.toml
-+++ b/deltachat-ffi/Cargo.toml
-@@ -11,7 +11,7 @@ categories = ["cryptography", "std", "email"]
- 
- [lib]
- name = "deltachat"
--crate-type = ["cdylib", "staticlib"]
-+crate-type = ["cdylib"]
- 
- [dependencies]
- deltachat = { path = "../", default-features = false }
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
index 63ca4877da65f..53944f5a5e949 100644
--- a/pkgs/development/libraries/libdevil/default.nix
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -15,6 +15,7 @@
 , runtimeShell
 , withXorg ? true
 , testers
+, mesa
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -34,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildInputs = [ libjpeg libpng libmng lcms1 libtiff openexr ]
     ++ lib.optionals withXorg [ libX11 libGL ]
-    ++ lib.optionals stdenv.isDarwin [ OpenGL ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenGL ];
 
   configureFlags = [ "--enable-ILU" "--enable-ILUT" ];
 
@@ -65,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
     mainProgram = "ilur";
     license = licenses.lgpl2;
     pkgConfigModules = [ "IL" ];
-    platforms = platforms.mesaPlatforms;
-    maintainers = with maintainers; [ ];
+    inherit (mesa.meta) platforms;
+    maintainers = [ ];
   };
 })
diff --git a/pkgs/development/libraries/libdigidocpp/default.nix b/pkgs/development/libraries/libdigidocpp/default.nix
index d957d2d05d0d2..85dbf3a72b9db 100644
--- a/pkgs/development/libraries/libdigidocpp/default.nix
+++ b/pkgs/development/libraries/libdigidocpp/default.nix
@@ -19,6 +19,14 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "lib" "dev" "bin" ];
 
+  # Cherry-pick of
+  # https://github.com/open-eid/libdigidocpp/commit/2b5db855ba3ceb9bae1f11589ea1aea22bb7595a
+  # Fixes https://github.com/NixOS/nixpkgs/issues/334397
+  postPatch = ''
+    substituteInPlace CMakeLists.txt \
+      --replace-fail 'TSA_URL "http://dd-at.ria.ee/tsa"' 'TSA_URL "https://eid-dd.ria.ee/ts"'
+  '';
+
   # libdigidocpp.so's `PKCS11Signer::PKCS11Signer()` dlopen()s "opensc-pkcs11.so"
   # itself, so add OpenSC to its DT_RUNPATH after the fixupPhase shrinked it.
   # https://github.com/open-eid/cmake/pull/35 might be an alternative.
diff --git a/pkgs/development/libraries/libdiscid/default.nix b/pkgs/development/libraries/libdiscid/default.nix
index 926973bb5739d..2c4e7de008b6b 100644
--- a/pkgs/development/libraries/libdiscid/default.nix
+++ b/pkgs/development/libraries/libdiscid/default.nix
@@ -6,14 +6,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.IOKit ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.IOKit ];
 
   src = fetchurl {
     url = "http://ftp.musicbrainz.org/pub/musicbrainz/${pname}/${pname}-${version}.tar.gz";
     sha256 = "sha256-3V6PHJrq1ELiO3SanMkzY3LmLoitcHmitiiVsDkMsoI=";
   };
 
-  NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-framework CoreFoundation -framework IOKit";
+  NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-framework CoreFoundation -framework IOKit";
 
   meta = with lib; {
     description = "C library for creating MusicBrainz DiscIDs from audio CDs";
diff --git a/pkgs/development/libraries/libdmapsharing/default.nix b/pkgs/development/libraries/libdmapsharing/default.nix
index ba1b3c05f1a60..47b02a65e0833 100644
--- a/pkgs/development/libraries/libdmapsharing/default.nix
+++ b/pkgs/development/libraries/libdmapsharing/default.nix
@@ -1,59 +1,74 @@
-{ stdenv
-, lib
-, fetchFromGitLab
-, autoconf
-, automake
-, libtool
-, which
-, pkg-config
-, python3
-, vala
-, avahi
-, gdk-pixbuf
-, gst_all_1
-, glib
-, gtk-doc
-, docbook-xsl-nons
-, docbook_xml_dtd_43
-, gobject-introspection
-, libsoup_3
+{
+  stdenv,
+  lib,
+  fetchFromGitLab,
+  autoconf,
+  automake,
+  libtool,
+  pkg-config,
+  vala,
+  avahi,
+  gdk-pixbuf,
+  gst_all_1,
+  glib,
+  gtk-doc,
+  docbook-xsl-nons,
+  docbook_xml_dtd_43,
+  gobject-introspection,
+  libsoup_3,
+  withGtkDoc ? stdenv.buildPlatform.canExecute stdenv.hostPlatform,
 }:
 
 stdenv.mkDerivation rec {
   pname = "libdmapsharing";
   version = "3.9.13";
 
-  outputs = [ "out" "dev" "devdoc" ];
+  outputs =
+    [
+      "out"
+      "dev"
+    ]
+    ++ lib.optionals withGtkDoc [
+      "devdoc"
+    ];
+
   outputBin = "dev";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
-    rev = "${lib.toUpper pname}_${lib.replaceStrings ["."] ["_"] version}";
+    rev = "${lib.toUpper pname}_${lib.replaceStrings [ "." ] [ "_" ] version}";
     sha256 = "oR9lpOFxgGfrtzncFT6dbmhKQfcuH/NvhOR/USHAHQc=";
   };
 
-  nativeBuildInputs = [
-    autoconf
-    automake
-    libtool
-    which
-    pkg-config
-    python3
-    gobject-introspection
-    vala
-    gtk-doc
-    docbook-xsl-nons
-    docbook_xml_dtd_43
-  ];
+  strictDeps = true;
 
-  buildInputs = [
-    avahi
-    gdk-pixbuf
-    gst_all_1.gstreamer
-    gst_all_1.gst-plugins-base
-  ];
+  nativeBuildInputs =
+    [
+      autoconf
+      automake
+      libtool
+      gtk-doc # gtkdocize
+      pkg-config
+      gobject-introspection
+      vala
+    ]
+    ++ lib.optionals withGtkDoc [
+      docbook-xsl-nons
+      docbook_xml_dtd_43
+    ];
+
+  buildInputs =
+    [
+      avahi
+      gdk-pixbuf
+      gst_all_1.gstreamer
+      gst_all_1.gst-plugins-base
+    ]
+    ++ lib.optionals withGtkDoc [
+      gtk-doc
+    ];
 
   propagatedBuildInputs = [
     glib
@@ -61,10 +76,15 @@ stdenv.mkDerivation rec {
   ];
 
   configureFlags = [
-    "--enable-gtk-doc"
-    "--disable-tests" # Tests require mDNS server.
+    (lib.enableFeature false "tests") # Tests require mDNS server
+    (lib.enableFeature withGtkDoc "gtk-doc")
   ];
 
+  postPatch = ''
+    substituteInPlace configure.ac \
+      --replace-fail pkg-config "$PKG_CONFIG"
+  '';
+
   preConfigure = ''
     NOCONFIGURE=1 ./autogen.sh
   '';
diff --git a/pkgs/development/libraries/libdnet/default.nix b/pkgs/development/libraries/libdnet/default.nix
index 717d565ef8353..58112ea2c2fd5 100644
--- a/pkgs/development/libraries/libdnet/default.nix
+++ b/pkgs/development/libraries/libdnet/default.nix
@@ -1,17 +1,33 @@
-{lib, stdenv, fetchurl, automake, autoconf, libtool}:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  automake,
+  autoconf,
+  libtool,
+  pkg-config,
+  check,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libdnet";
-  version = "1.12";
+  version = "1.18.0";
 
   enableParallelBuilding = true;
 
-  src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libdnet/libdnet-${version}.tgz";
-    sha256 = "09mhbr8x66ykhf5581a5zjpplpjxibqzgkkpx689kybwg0wk1cw3";
+  src = fetchFromGitHub {
+    owner = "ofalk";
+    repo = "libdnet";
+    rev = "refs/tags/libdnet-${finalAttrs.version}";
+    hash = "sha256-oPlBQB9e8vGJ/rVydMqsZqdInhrpm2sNWkDl9JkkXCI=";
   };
 
-  nativeBuildInputs = [ automake autoconf ];
+  nativeBuildInputs = [
+    automake
+    autoconf
+    pkg-config
+    check
+  ];
   buildInputs = [ libtool ];
 
   # .so endings are missing (quick and dirty fix)
@@ -25,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "Provides a simplified, portable interface to several low-level networking routines";
     homepage = "https://github.com/dugsong/libdnet";
     license = lib.licenses.bsd3;
-    maintainers = [lib.maintainers.marcweber];
+    maintainers = [ lib.maintainers.marcweber ];
     platforms = lib.platforms.linux;
   };
-}
+})
diff --git a/pkgs/development/libraries/libdovi/Cargo.lock b/pkgs/development/libraries/libdovi/Cargo.lock
index 13d06de98ed40..ef5eb016f3f99 100644
--- a/pkgs/development/libraries/libdovi/Cargo.lock
+++ b/pkgs/development/libraries/libdovi/Cargo.lock
@@ -19,27 +19,27 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstyle"
-version = "1.0.6"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
 
 [[package]]
 name = "anyhow"
-version = "1.0.82"
+version = "1.0.86"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
 
 [[package]]
 name = "autocfg"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "bitstream-io"
-version = "2.2.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da"
+checksum = "3dcde5f311c85b8ca30c2e4198d4326bc342c76541590106f5fa4a50946ea499"
 
 [[package]]
 name = "bitvec"
@@ -55,9 +55,9 @@ dependencies = [
 
 [[package]]
 name = "bitvec_helpers"
-version = "3.1.4"
+version = "3.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c810ea0801e8aabb86ded7f207b0d5a7f23c804cd1b7719aba2b4970899c099a"
+checksum = "2e6539ed4bcd1be8442a26b154a1e363cbcb1410b9c275646d6f6ca532fd142f"
 dependencies = [
  "bitstream-io",
 ]
@@ -109,18 +109,18 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.5.4"
+version = "4.5.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
+checksum = "0fbb260a053428790f3de475e304ff84cdbc4face759ea7a3e64c1edd938a7fc"
 dependencies = [
  "clap_builder",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.5.2"
+version = "4.5.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
+checksum = "64b17d7ea74e9f833c7dbf2cbe4fb12ff26783eda4782a8975b72f895c9b4d99"
 dependencies = [
  "anstyle",
  "clap_lex",
@@ -128,9 +128,9 @@ dependencies = [
 
 [[package]]
 name = "clap_lex"
-version = "0.7.0"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
+checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
 
 [[package]]
 name = "crc"
@@ -204,9 +204,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.19"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
 
 [[package]]
 name = "crunchy"
@@ -216,7 +216,7 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
 
 [[package]]
 name = "dolby_vision"
-version = "3.3.0"
+version = "3.3.1"
 dependencies = [
  "anyhow",
  "bitvec",
@@ -227,13 +227,14 @@ dependencies = [
  "roxmltree",
  "serde",
  "serde_json",
+ "tinyvec",
 ]
 
 [[package]]
 name = "either"
-version = "1.11.0"
+version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
+checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
 
 [[package]]
 name = "equivalent"
@@ -271,9 +272,9 @@ checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "indexmap"
-version = "2.2.6"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -287,7 +288,7 @@ checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
 dependencies = [
  "hermit-abi",
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -316,27 +317,27 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.154"
+version = "0.2.155"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
+checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
 
 [[package]]
 name = "log"
-version = "0.4.21"
+version = "0.4.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
 
 [[package]]
 name = "memchr"
-version = "2.7.2"
+version = "2.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
+checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
 
 [[package]]
 name = "num-traits"
-version = "0.2.18"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
 ]
@@ -349,15 +350,15 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "oorandom"
-version = "11.1.3"
+version = "11.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
+checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9"
 
 [[package]]
 name = "plotters"
-version = "0.3.5"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45"
+checksum = "a15b6eccb8484002195a3e44fe65a4ce8e93a625797a063735536fd59cb01cf3"
 dependencies = [
  "num-traits",
  "plotters-backend",
@@ -368,24 +369,24 @@ dependencies = [
 
 [[package]]
 name = "plotters-backend"
-version = "0.3.5"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609"
+checksum = "414cec62c6634ae900ea1c56128dfe87cf63e7caece0852ec76aba307cebadb7"
 
 [[package]]
 name = "plotters-svg"
-version = "0.3.5"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab"
+checksum = "81b30686a7d9c3e010b84284bdd26a29f2138574f52f5eb6f794fc0ad924e705"
 dependencies = [
  "plotters-backend",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.81"
+version = "1.0.86"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
+checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
 dependencies = [
  "unicode-ident",
 ]
@@ -427,9 +428,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.4"
+version = "1.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
+checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -439,9 +440,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -450,21 +451,21 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
 
 [[package]]
 name = "roxmltree"
-version = "0.19.0"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f"
+checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97"
 
 [[package]]
 name = "ryu"
-version = "1.0.17"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "same-file"
@@ -477,18 +478,18 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.199"
+version = "1.0.204"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a"
+checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.199"
+version = "1.0.204"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc"
+checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -497,21 +498,22 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.116"
+version = "1.0.122"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
+checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da"
 dependencies = [
  "indexmap",
  "itoa",
+ "memchr",
  "ryu",
  "serde",
 ]
 
 [[package]]
 name = "syn"
-version = "2.0.60"
+version = "2.0.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
+checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -535,6 +537,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "tinyvec"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "unicode-ident"
 version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -616,11 +627,11 @@ dependencies = [
 
 [[package]]
 name = "winapi-util"
-version = "0.1.8"
+version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
+checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.59.0",
 ]
 
 [[package]]
@@ -633,10 +644,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows-sys"
+version = "0.59.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
 name = "windows-targets"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
 dependencies = [
  "windows_aarch64_gnullvm",
  "windows_aarch64_msvc",
@@ -650,51 +670,51 @@ dependencies = [
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
 
 [[package]]
 name = "windows_i686_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.5"
+version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
 
 [[package]]
 name = "wyz"
diff --git a/pkgs/development/libraries/libdovi/default.nix b/pkgs/development/libraries/libdovi/default.nix
index 38cf72b2acce2..5f87567e3bc88 100644
--- a/pkgs/development/libraries/libdovi/default.nix
+++ b/pkgs/development/libraries/libdovi/default.nix
@@ -8,12 +8,12 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "libdovi";
-  version = "3.3.0";
+  version = "3.3.1";
 
   src = fetchCrate {
     pname = "dolby_vision";
     inherit version;
-    hash = "sha256-224fX+9klmWVoakU+XM7HrGa4iP4xsBJtn+686cH0qc=";
+    hash = "sha256-ecd+r0JWZtP/rxt4Y3Cj2TkygXIMy5KZhZpXBwJNPx4=";
   };
 
   cargoLock.lockFile = ./Cargo.lock;
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 8791203881468..f4d54722327d4 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdrm";
-  version = "2.4.120";
+  version = "2.4.122";
 
   src = fetchurl {
     url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-O/VTY/dsclCUZEGrUdOmzArlGAVcD/AXMkq3bN77Mno=";
+    hash = "sha256-2fUHm3d9/8qTAMzFaxCpNYjN+8nd4vrhEZQN+2KS8lE=";
   };
 
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/libdv/default.nix b/pkgs/development/libraries/libdv/default.nix
index 49c2ab1bdfa72..da69eedb28877 100644
--- a/pkgs/development/libraries/libdv/default.nix
+++ b/pkgs/development/libraries/libdv/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   # Disable priority scheduling on Darwin because it doesn’t support sched_setscheduler.
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace encodedv/dvconnect.c \
       --replace '#ifdef _SC_PRIORITY_SCHEDULING' '#if 0'
   '';
diff --git a/pkgs/development/libraries/libdvdcss/default.nix b/pkgs/development/libraries/libdvdcss/default.nix
index 6c832250fc1c8..2e1cc41c5a73d 100644
--- a/pkgs/development/libraries/libdvdcss/default.nix
+++ b/pkgs/development/libraries/libdvdcss/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "libdvdcss";
   version = "1.4.3";
 
-  buildInputs = lib.optional stdenv.isDarwin IOKit;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin IOKit;
 
   src = fetchurl {
     url = "http://get.videolan.org/libdvdcss/${version}/${pname}-${version}.tar.bz2";
diff --git a/pkgs/development/libraries/libdwarf/common.nix b/pkgs/development/libraries/libdwarf/common.nix
index ebf59ccd03f94..4cf3102bbbfce 100644
--- a/pkgs/development/libraries/libdwarf/common.nix
+++ b/pkgs/development/libraries/libdwarf/common.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, buildInputs, hash, version, libelf, url, knownVulnerabilities }:
+{ lib, stdenv, fetchurl, buildInputs, hash, version, url, knownVulnerabilities }:
 
 stdenv.mkDerivation rec {
   pname = "libdwarf";
diff --git a/pkgs/development/libraries/libdwg/default.nix b/pkgs/development/libraries/libdwg/default.nix
index 969b5d9636f2f..741d848c47a85 100644
--- a/pkgs/development/libraries/libdwg/default.nix
+++ b/pkgs/development/libraries/libdwg/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   # remove forbidden references to $TMPDIR
-  preFixup = lib.optionalString stdenv.isLinux ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
     for f in "$out"/bin/*; do
       if isELF "$f"; then
         patchelf --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" "$f"
diff --git a/pkgs/development/libraries/libe57format/default.nix b/pkgs/development/libraries/libe57format/default.nix
index 41fda970294da..7e70cb9503106 100644
--- a/pkgs/development/libraries/libe57format/default.nix
+++ b/pkgs/development/libraries/libe57format/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   cmakeFlags = [
     # See https://github.com/asmaloney/libE57Format/blob/9372bdea8db2cc0c032a08f6d655a53833d484b8/test/README.md
-    (if finalAttrs.doCheck
+    (if finalAttrs.finalPackage.doCheck
       then "-DE57_TEST_DATA_PATH=${finalAttrs.libE57Format-test-data_src}"
       else "-DE57_BUILD_TEST=OFF"
     )
diff --git a/pkgs/development/libraries/libeatmydata/LFS64.patch b/pkgs/development/libraries/libeatmydata/LFS64.patch
new file mode 100644
index 0000000000000..2a8ab5e088933
--- /dev/null
+++ b/pkgs/development/libraries/libeatmydata/LFS64.patch
@@ -0,0 +1,70 @@
+From 59f04ad8730034a205a1a792662d4b5dc2006b7c Mon Sep 17 00:00:00 2001
+From: Alyssa Ross <hi@alyssa.is>
+Date: Mon, 13 May 2024 09:53:23 +0200
+Subject: [PATCH] Fix sync_file_range() with musl 1.2.4
+
+musl 1.2.4 has removed the transitional LFS off64_t type.
+sync_file_range is declared with off_t in musl, which is always 64
+bits.
+
+This assumes that the same is true of any other libc which doesn't
+provide off64_t.  If it's not, gcc will produce an error due to the
+conflicting types of sync_file_range(), so it will be caught and can
+be fixed.
+---
+ configure.ac                |  2 ++
+ libeatmydata/libeatmydata.c | 11 +++++++++--
+ 2 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4d101ba..f3c4a69 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -37,6 +37,8 @@ AC_CHECK_HEADERS_ONCE(pthread.h)
+ AC_CHECK_SIZEOF(mode_t)
+ AC_CHECK_SIZEOF(int)
+ 
++AC_CHECK_TYPES([off64_t])
++
+ AC_CHECK_TYPE(pthread_barrier_t,,,[
+   #ifdef HAVE_PTHREAD_H
+   #include <pthread.h>
+diff --git a/libeatmydata/libeatmydata.c b/libeatmydata/libeatmydata.c
+index 134afcd..0015f1f 100644
+--- a/libeatmydata/libeatmydata.c
++++ b/libeatmydata/libeatmydata.c
+@@ -35,6 +35,12 @@
+ #define CHECK_FILE "/tmp/eatmydata"
+ */
+ 
++#ifdef HAVE_OFF64_T
++typedef off64_t sync_file_range_off;
++#else
++typedef off_t sync_file_range_off;
++#endif
++
+ typedef int (*libc_open_t)(const char*, int, ...);
+ #ifdef HAVE_OPEN64
+ typedef int (*libc_open64_t)(const char*, int, ...);
+@@ -44,7 +50,7 @@ typedef int (*libc_sync_t)(void);
+ typedef int (*libc_fdatasync_t)(int);
+ typedef int (*libc_msync_t)(void*, size_t, int);
+ #ifdef HAVE_SYNC_FILE_RANGE
+-typedef int (*libc_sync_file_range_t)(int, off64_t, off64_t, unsigned int);
++typedef int (*libc_sync_file_range_t)(int, sync_file_range_off, sync_file_range_off, unsigned int);
+ #endif
+ #ifdef HAVE_SYNCFS
+ typedef int (*libc_syncfs_t)(int);
+@@ -259,7 +265,8 @@ int LIBEATMYDATA_API msync(void *addr, size_t length, int flags)
+ }
+ 
+ #ifdef HAVE_SYNC_FILE_RANGE
+-int LIBEATMYDATA_API sync_file_range(int fd, off64_t offset, off64_t nbytes,
++int LIBEATMYDATA_API sync_file_range(int fd, sync_file_range_off offset,
++				     sync_file_range_off nbytes,
+ 				     unsigned int flags)
+ {
+ 	if (eatmydata_is_hungry()) {
+-- 
+2.45.1
+
diff --git a/pkgs/development/libraries/libeatmydata/default.nix b/pkgs/development/libraries/libeatmydata/default.nix
index 2a76731829a7f..f315e32f02d93 100644
--- a/pkgs/development/libraries/libeatmydata/default.nix
+++ b/pkgs/development/libraries/libeatmydata/default.nix
@@ -17,6 +17,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0lrYDW51/KSr809whGwg9FYhzcLRfmoxipIgrK1zFCc=";
   };
 
+  patches = [
+    # https://github.com/stewartsmith/libeatmydata/pull/36
+    ./LFS64.patch
+  ];
+
   postPatch = ''
     patchShebangs .
   '';
diff --git a/pkgs/development/libraries/libebml/default.nix b/pkgs/development/libraries/libebml/default.nix
index 3478217d7f6b8..34a45e398bcdb 100644
--- a/pkgs/development/libraries/libebml/default.nix
+++ b/pkgs/development/libraries/libebml/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     description = "Extensible Binary Meta Language library";
     homepage = "https://dl.matroska.org/downloads/libebml/";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libei/default.nix b/pkgs/development/libraries/libei/default.nix
index 5ce8738790645..c2529e66c0bb4 100644
--- a/pkgs/development/libraries/libei/default.nix
+++ b/pkgs/development/libraries/libei/default.nix
@@ -22,14 +22,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libei";
-  version = "1.2.1";
+  version = "1.3.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "libinput";
     repo = "libei";
     rev = version;
-    hash = "sha256-8n/C0rBlyhY8SaxkwU+tDskwSQObLRrR+utk4Ktgb7U=";
+    hash = "sha256-yKeMHgR3s83xwoXgLW28ewF2tvs6l0Hq0cCAroCgq0U=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libelfin/default.nix b/pkgs/development/libraries/libelfin/default.nix
index 7d5a928aa2f48..8ff7d8c952373 100644
--- a/pkgs/development/libraries/libelfin/default.nix
+++ b/pkgs/development/libraries/libelfin/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/aclements/libelfin/";
     license = licenses.mit;
     description = "C++11 ELF/DWARF parser";
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libepc/default.nix b/pkgs/development/libraries/libepc/default.nix
index c9a1d09172a98..11cc35b2e5098 100644
--- a/pkgs/development/libraries/libepc/default.nix
+++ b/pkgs/development/libraries/libepc/default.nix
@@ -2,6 +2,7 @@
 , lib
 , fetchurl
 , autoreconfHook
+, gnome-common
 , pkg-config
 , intltool
 , gtk-doc
@@ -32,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     autoreconfHook
-    gnome.gnome-common
+    gnome-common
     pkg-config
     intltool
     gtk-doc
diff --git a/pkgs/development/libraries/libepoxy/default.nix b/pkgs/development/libraries/libepoxy/default.nix
index 95c3959d9dfb5..5ff8055cedee4 100644
--- a/pkgs/development/libraries/libepoxy/default.nix
+++ b/pkgs/development/libraries/libepoxy/default.nix
@@ -10,7 +10,7 @@
 , libX11
 , Carbon
 , OpenGL
-, x11Support ? !stdenv.isDarwin
+, x11Support ? !stdenv.hostPlatform.isDarwin
 , testers
 }:
 
@@ -30,15 +30,15 @@ stdenv.mkDerivation (finalAttrs: {
   postPatch = ''
     patchShebangs src/*.py
   ''
-  + lib.optionalString stdenv.isDarwin ''
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/dispatch_common.h --replace "PLATFORM_HAS_GLX 0" "PLATFORM_HAS_GLX 1"
   ''
   # cgl_core and cgl_epoxy_api fail in darwin sandbox and on Hydra (because it's headless?)
-  + lib.optionalString stdenv.isDarwin ''
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace test/meson.build \
       --replace "[ 'cgl_epoxy_api', [ 'cgl_epoxy_api.c' ] ]," ""
   ''
-  + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
+  + lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) ''
     substituteInPlace test/meson.build \
       --replace "[ 'cgl_core', [ 'cgl_core.c' ] ]," ""
   '';
@@ -47,23 +47,23 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ meson ninja pkg-config utilmacros python3 ];
 
-  buildInputs = lib.optionals (x11Support && !stdenv.isDarwin) [
+  buildInputs = lib.optionals (x11Support && !stdenv.hostPlatform.isDarwin) [
     libGL
   ] ++ lib.optionals x11Support [
     libX11
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Carbon
     OpenGL
   ];
 
   mesonFlags = [
-    "-Degl=${if (x11Support && !stdenv.isDarwin) then "yes" else "no"}"
+    "-Degl=${if (x11Support && !stdenv.hostPlatform.isDarwin) then "yes" else "no"}"
     "-Dglx=${if x11Support then "yes" else "no"}"
-    "-Dtests=${lib.boolToString finalAttrs.doCheck}"
+    "-Dtests=${lib.boolToString finalAttrs.finalPackage.doCheck}"
     "-Dx11=${lib.boolToString x11Support}"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (x11Support && !stdenv.isDarwin) ''-DLIBGL_PATH="${lib.getLib libGL}/lib"'';
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (x11Support && !stdenv.hostPlatform.isDarwin) ''-DLIBGL_PATH="${lib.getLib libGL}/lib"'';
 
   doCheck = true;
 
@@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Library for handling OpenGL function pointer management";
     homepage = "https://github.com/anholt/libepoxy";
     license = licenses.mit;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
     pkgConfigModules = [ "epoxy" ];
   };
diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix
index 34af29955abbf..abd8185eae2a0 100644
--- a/pkgs/development/libraries/libevdev/default.nix
+++ b/pkgs/development/libraries/libevdev/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libevdev";
-  version = "1.13.1";
+  version = "1.13.2";
 
   src = fetchurl {
     url = "https://www.freedesktop.org/software/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Bqd78qxcmTMFiCvBZBAX9b7BWS1tG2R4e61JKrNPLzY=";
+    sha256 = "sha256-PsqGps5VuB1bzpEGN/xFHIu+NzsflpjzdcfxrQ3jrEg=";
   };
 
   nativeBuildInputs = [ python3 ];
diff --git a/pkgs/development/libraries/libevent/default.nix b/pkgs/development/libraries/libevent/default.nix
index ff9784064432e..ab443dfac80db 100644
--- a/pkgs/development/libraries/libevent/default.nix
+++ b/pkgs/development/libraries/libevent/default.nix
@@ -1,6 +1,9 @@
 { lib, stdenv, fetchurl, findutils, fixDarwinDylibNames
+, updateAutotoolsGnuConfigScriptsHook
 , sslSupport ? true, openssl
 , fetchpatch
+
+, static ? stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation rec {
@@ -20,7 +23,10 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  configureFlags = lib.optional (!sslSupport) "--disable-openssl";
+  configureFlags = lib.flatten [
+    (lib.optional (!sslSupport) "--disable-openssl")
+    (lib.optionals static ["--disable-shared" "--with-pic"])
+  ];
 
   preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
     MACOSX_DEPLOYMENT_TARGET=10.16
@@ -36,10 +42,11 @@ stdenv.mkDerivation rec {
     ++ lib.optional sslSupport "openssl"
     ;
 
-  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ]
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   buildInputs = lib.optional sslSupport openssl
-    ++ lib.optional stdenv.isCygwin findutils;
+    ++ lib.optional stdenv.hostPlatform.isCygwin findutils;
 
   doCheck = false; # needs the net
 
diff --git a/pkgs/development/libraries/libewf/default.nix b/pkgs/development/libraries/libewf/default.nix
index 6c149b0186ee2..3bfd958bfd60e 100644
--- a/pkgs/development/libraries/libewf/default.nix
+++ b/pkgs/development/libraries/libewf/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ zlib openssl libuuid ]
-    ++ lib.optionals stdenv.isDarwin [ bzip2 ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ bzip2 ];
 
   # cannot run test program while cross compiling
   configureFlags = lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
diff --git a/pkgs/development/libraries/libexecinfo/default.nix b/pkgs/development/libraries/libexecinfo/default.nix
index 36f956e777242..24fc1e6dc74ec 100644
--- a/pkgs/development/libraries/libexecinfo/default.nix
+++ b/pkgs/development/libraries/libexecinfo/default.nix
@@ -48,6 +48,6 @@ stdenv.mkDerivation rec {
     description = "Quick-n-dirty BSD licensed clone of the GNU libc backtrace facility";
     license = licenses.bsd2;
     homepage = "https://www.freshports.org/devel/libexecinfo";
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix
index d8e8d6101c136..e154eebc48c18 100644
--- a/pkgs/development/libraries/libextractor/default.nix
+++ b/pkgs/development/libraries/libextractor/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetchurl, fetchpatch, substituteAll
+{ lib, stdenv, fetchurl, fetchpatch2, substituteAll
 , libtool, gettext, zlib, bzip2, flac, libvorbis
 , exiv2, libgsf, pkg-config
-, rpmSupport ? stdenv.isLinux, rpm
+, rpmSupport ? stdenv.hostPlatform.isLinux, rpm
 , gstreamerSupport ? true, gst_all_1
 # ^ Needed e.g. for proper id3 and FLAC support.
 #   Set to `false` to decrease package closure size by about 87 MB (53%).
@@ -14,23 +14,24 @@
 # '';
 # See also <https://nixos.org/nixpkgs/manual/#sec-language-gnome>.
 , gtkSupport ? true, glib, gtk3
-, videoSupport ? true, ffmpeg_4, libmpeg2
+, videoSupport ? true, libmpeg2
 }:
 
 stdenv.mkDerivation rec {
   pname = "libextractor";
-  version = "1.11";
+  version = "1.13";
 
   src = fetchurl {
     url = "mirror://gnu/libextractor/${pname}-${version}.tar.gz";
-    sha256 = "sha256-FvYzq4dGo4VHxKHaP0WRGSsIJa2DxDNvBXW4WEPYvY8=";
+    hash = "sha256-u48xLFHSAlciQ/ETxrYtghAwGrMMuu5gT5g32HjN91U=";
   };
 
   patches = [
-    (fetchpatch {
-      name = "libextractor-exiv2-0.28.patch";
-      url = "https://git.pld-linux.org/?p=packages/libextractor.git;a=blob_plain;f=libextractor-exiv2-0.28.patch;h=d763b65f2578f1127713de8dc82f432d34f95a85;hb=0e7de1c6794e8c331a1a1a6a829993c7cd217d3a";
-      hash = "sha256-szAv2A+NmiQyj2+R7BO6fHX588vlTgljPtrnMR6mgGY=";
+    # 0008513: test_exiv2 fails with Exiv2 0.28
+    # https://bugs.gnunet.org/view.php?id=8513
+    (fetchpatch2 {
+      url = "https://sources.debian.org/data/main/libe/libextractor/1%3A1.13-4/debian/patches/exiv2-0.28.diff";
+      hash = "sha256-Re5iwlSyEpWu3PcHibaRKSfmdyHSZGMOdMZ6svTofvs=";
     })
   ] ++ lib.optionals gstreamerSupport [
 
@@ -58,19 +59,12 @@ stdenv.mkDerivation rec {
      ++ lib.optionals gstreamerSupport
           ([ gst_all_1.gstreamer ] ++ gstPlugins gst_all_1)
      ++ lib.optionals gtkSupport [ glib gtk3 ]
-     ++ lib.optionals videoSupport [ ffmpeg_4 libmpeg2 ];
-
-  configureFlags = [
-    "--disable-ltdl-install"
-    "--with-ltdl-include=${libtool}/include"
-    "--with-ltdl-lib=${libtool.lib}/lib"
-    "--enable-xpdf"
-  ];
+     ++ lib.optionals videoSupport [ libmpeg2 ];
 
   # Checks need to be run after "make install", otherwise plug-ins are not in
   # the search path, etc.
   doCheck = false;
-  doInstallCheck = !stdenv.isDarwin;
+  doInstallCheck = !stdenv.hostPlatform.isDarwin;
   installCheckPhase = "make check";
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libfabric/default.nix b/pkgs/development/libraries/libfabric/default.nix
index 26e2687575a00..6fabadf5f1291 100644
--- a/pkgs/development/libraries/libfabric/default.nix
+++ b/pkgs/development/libraries/libfabric/default.nix
@@ -3,16 +3,16 @@
 , fetchFromGitHub
 , pkg-config
 , autoreconfHook
-, enablePsm2 ? (stdenv.isx86_64 && stdenv.isLinux)
+, enablePsm2 ? (stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isLinux)
 , libpsm2
-, enableOpx ? (stdenv.isx86_64 && stdenv.isLinux)
+, enableOpx ? (stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isLinux)
 , libuuid
 , numactl
 }:
 
 stdenv.mkDerivation rec {
   pname = "libfabric";
-  version = "1.21.0";
+  version = "1.22.0";
 
   enableParallelBuilding = true;
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     owner = "ofiwg";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-p0L9l1UpxD2WCZWXBNaEz9Zjzr5is3iEODcoQQa1f6M=";
+    sha256 = "sha256-s6e9UMCYqSuAvVvlF+SuduCA5UC43QEahUA8apubnOk=";
   };
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/development/libraries/libfakekey/default.nix b/pkgs/development/libraries/libfakekey/default.nix
index 3e568759c1bcb..008611594b46c 100644
--- a/pkgs/development/libraries/libfakekey/default.nix
+++ b/pkgs/development/libraries/libfakekey/default.nix
@@ -1,23 +1,50 @@
-{ lib, stdenv, fetchurl, libX11, libXi, libXtst, pkg-config, xorgproto }:
+{
+  lib,
+  stdenv,
+  fetchgit,
+  automake,
+  autoconf,
+  libtool,
+  libX11,
+  libXi,
+  libXtst,
+  pkg-config,
+  xorgproto,
+}:
 
 stdenv.mkDerivation rec {
   pname = "libfakekey";
-  version = "0.1";
+  version = "0.3";
 
-  src = fetchurl {
-    url = "https://downloads.yoctoproject.org/releases/matchbox/libfakekey/0.1/${pname}-${version}.tar.gz";
-    sha256 = "10msplyn535hmzbmbdnx4zc20hkaw6d81if5lzxs82k8sq2mkx9k";
+  src = fetchgit {
+    url = "https://git.yoctoproject.org/libfakekey";
+    rev = "refs/tags/${version}";
+    hash = "sha256-QNJlxZ9uNwNgFWm9qRJdPfusx7dXHZajjFH7wDhpgcs=";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libX11 libXi libXtst xorgproto ];
+  preConfigure = "./autogen.sh";
+
+  nativeBuildInputs = [
+    automake
+    autoconf
+    pkg-config
+    libtool
+  ];
+
+  buildInputs = [
+    libX11
+    libXi
+    libXtst
+    xorgproto
+  ];
+
   NIX_LDFLAGS = "-lX11";
 
   meta = with lib; {
     description = "X virtual keyboard library";
     homepage = "https://www.yoctoproject.org/tools-resources/projects/matchbox";
     license = licenses.gpl2;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libff/default.nix b/pkgs/development/libraries/libff/default.nix
index af2191fb4136c..5277337500794 100644
--- a/pkgs/development/libraries/libff/default.nix
+++ b/pkgs/development/libraries/libff/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   cmakeFlags = [ "-DWITH_PROCPS=Off" ]
-    ++ lib.optionals stdenv.isAarch64 [ "-DCURVE=ALT_BN128" "-DUSE_ASM=OFF" ];
+    ++ lib.optionals stdenv.hostPlatform.isAarch64 [ "-DCURVE=ALT_BN128" "-DUSE_ASM=OFF" ];
 
   postPatch = lib.optionalString (!enableStatic) ''
     substituteInPlace libff/CMakeLists.txt --replace "STATIC" "SHARED"
diff --git a/pkgs/development/libraries/libffi/3.3.nix b/pkgs/development/libraries/libffi/3.3.nix
index 50bec9edd0503..d8dd3fa47d5c8 100644
--- a/pkgs/development/libraries/libffi/3.3.nix
+++ b/pkgs/development/libraries/libffi/3.3.nix
@@ -63,6 +63,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ armeenm ];
     platforms = platforms.all;
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
   };
 }
diff --git a/pkgs/development/libraries/libfido2/default.nix b/pkgs/development/libraries/libfido2/default.nix
index b3c3cc450237e..1a68b5eb6eb12 100644
--- a/pkgs/development/libraries/libfido2/default.nix
+++ b/pkgs/development/libraries/libfido2/default.nix
@@ -14,20 +14,20 @@
 
 stdenv.mkDerivation rec {
   pname = "libfido2";
-  version = "1.14.0";
+  version = "1.15.0";
 
   # releases on https://developers.yubico.com/libfido2/Releases/ are signed
   src = fetchurl {
     url = "https://developers.yubico.com/${pname}/Releases/${pname}-${version}.tar.gz";
-    sha256 = "sha256-NgF5LjIAMtQoACxMzoSZpMe4AzGQUaJaDJ8fE4/+5Fo=";
+    hash = "sha256-q6qxMY0h0mLs5Bb7inEy+pN0vaifb6UrhqmKL1cSth4=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [ libcbor zlib ]
-    ++ lib.optionals stdenv.isDarwin [ hidapi ]
-    ++ lib.optionals stdenv.isLinux [ udev ]
-    ++ lib.optionals (stdenv.isLinux && withPcsclite) [ pcsclite ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ hidapi ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ udev ]
+    ++ lib.optionals (stdenv.hostPlatform.isLinux && withPcsclite) [ pcsclite ];
 
   propagatedBuildInputs = [ openssl ];
 
@@ -36,11 +36,11 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DUDEV_RULES_DIR=${placeholder "out"}/etc/udev/rules.d"
     "-DCMAKE_INSTALL_LIBDIR=lib"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DUSE_HIDAPI=1"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "-DNFC_LINUX=1"
-  ] ++ lib.optionals (stdenv.isLinux && withPcsclite) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isLinux && withPcsclite) [
     "-DUSE_PCSC=1"
   ];
 
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://github.com/Yubico/libfido2";
     license = licenses.bsd2;
-    maintainers = with maintainers; [ dtzWill prusnak ];
+    maintainers = with maintainers; [ prusnak ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libfilezilla/default.nix b/pkgs/development/libraries/libfilezilla/default.nix
index 4076e5325c930..bbbcb81797aff 100644
--- a/pkgs/development/libraries/libfilezilla/default.nix
+++ b/pkgs/development/libraries/libfilezilla/default.nix
@@ -22,9 +22,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   buildInputs = [ gettext gnutls nettle libxcrypt ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv ApplicationServices ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ApplicationServices ];
 
-  preBuild = lib.optionalString (stdenv.isDarwin) ''
+  preBuild = lib.optionalString (stdenv.hostPlatform.isDarwin) ''
     export MACOSX_DEPLOYMENT_TARGET=11.0
   '';
 
diff --git a/pkgs/development/libraries/libfive/default.nix b/pkgs/development/libraries/libfive/default.nix
index 9dc2f368e2cd9..490f695fc101b 100644
--- a/pkgs/development/libraries/libfive/default.nix
+++ b/pkgs/development/libraries/libfive/default.nix
@@ -18,18 +18,18 @@
 
 stdenv.mkDerivation {
   pname = "libfive";
-  version = "0-unstable-2024-03-28";
+  version = "0-unstable-2024-06-23";
 
   src = fetchFromGitHub {
     owner = "libfive";
     repo = "libfive";
-    rev = "4c59b11667bbe8be9802f59697fa64bbfe1ea82d";
-    hash = "sha256-scYSprozfC537vAXhMfWswyS3xivpoURWPhplH7yHIg=";
+    rev = "302553e6aa6ca3cb13b2a149f57b6182ce2406dd";
+    hash = "sha256-8J0Pe3lmZCg2YFffmIynxW35w4mHl5cSlLSenm50CWg=";
   };
 
   nativeBuildInputs = [ wrapQtAppsHook cmake ninja pkg-config python.pkgs.pythonImportsCheckHook ];
   buildInputs = [ eigen zlib libpng boost guile python qtbase ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk_11_0.frameworks.Cocoa ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk_11_0.frameworks.Cocoa ];
 
   preConfigure = ''
     substituteInPlace studio/src/guile/interpreter.cpp \
@@ -57,7 +57,7 @@ stdenv.mkDerivation {
 
   cmakeFlags = [
     "-DGUILE_CCACHE_DIR=${placeholder "out"}/${guile.siteCcacheDir}"
-  ] ++ lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") [
     # warning: 'aligned_alloc' is only available on macOS 10.15 or newer
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15"
   ];
@@ -66,7 +66,7 @@ stdenv.mkDerivation {
     NIX_CFLAGS_COMPILE = "-Wno-error=enum-constexpr-conversion";
   };
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     # No rules to install the mac app, so do it manually.
     mkdir -p $out/Applications
     cp -r studio/Studio.app $out/Applications/Studio.app
@@ -96,7 +96,9 @@ stdenv.mkDerivation {
     "libfive.stdlib"
   ];
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagFormat = "";
+  };
 
   meta = with lib; {
     description = "Infrastructure for solid modeling with F-Reps in C, C++, and Guile";
diff --git a/pkgs/development/libraries/libfixposix/default.nix b/pkgs/development/libraries/libfixposix/default.nix
index 3d451de582a5e..3eb1dceffdef4 100644
--- a/pkgs/development/libraries/libfixposix/default.nix
+++ b/pkgs/development/libraries/libfixposix/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-5qA6ytbqE+/05XQGxP9/4vEs9gFcuI3k7eJJYucW7fM=";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ] ++ lib.optionals stdenv.isDarwin [ getconf ];
+  nativeBuildInputs = [ autoreconfHook pkg-config ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ getconf ];
 
   meta = with lib; {
     homepage = "https://github.com/sionescu/libfixposix";
diff --git a/pkgs/development/libraries/libfm/default.nix b/pkgs/development/libraries/libfm/default.nix
index 64928de4d4fe7..ff08294bdb295 100644
--- a/pkgs/development/libraries/libfm/default.nix
+++ b/pkgs/development/libraries/libfm/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     homepage = "https://blog.lxde.org/category/pcmanfm/";
     license = licenses.lgpl21Plus;
     description = "Glib-based library for file management";
diff --git a/pkgs/development/libraries/libfprint/default.nix b/pkgs/development/libraries/libfprint/default.nix
index fd7797ca0f14c..3c1b14eaf909e 100644
--- a/pkgs/development/libraries/libfprint/default.nix
+++ b/pkgs/development/libraries/libfprint/default.nix
@@ -9,7 +9,6 @@
 , glib
 , nss
 , gobject-introspection
-, coreutils
 , cairo
 , libgudev
 , gtk-doc
diff --git a/pkgs/development/libraries/libfpx/default.nix b/pkgs/development/libraries/libfpx/default.nix
index 6f79ec1b9465c..82785a4d0fb8b 100644
--- a/pkgs/development/libraries/libfpx/default.nix
+++ b/pkgs/development/libraries/libfpx/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   # Darwin gets misdetected as Windows without this
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-D__unix";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-D__unix";
 
   patches = [
     (fetchpatch {
diff --git a/pkgs/development/libraries/libfreeaptx/default.nix b/pkgs/development/libraries/libfreeaptx/default.nix
index cfc120244521b..7a59cde8433e7 100644
--- a/pkgs/development/libraries/libfreeaptx/default.nix
+++ b/pkgs/development/libraries/libfreeaptx/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile \
       --replace '-soname' '-install_name' \
       --replace 'lib$(NAME).so' 'lib$(NAME).dylib'
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -change libfreeaptx.dylib.0 $out/lib/libfreeaptx.dylib.0 $out/bin/freeaptxdec
     install_name_tool -change libfreeaptx.dylib.0 $out/lib/libfreeaptx.dylib.0 $out/bin/freeaptxenc
     install_name_tool -id $out/lib/libfreeaptx.dylib $out/lib/libfreeaptx.dylib
diff --git a/pkgs/development/libraries/libfreefare/default.nix b/pkgs/development/libraries/libfreefare/default.nix
index b05ea5bbe2d5c..90e6f29c9d6ed 100644
--- a/pkgs/development/libraries/libfreefare/default.nix
+++ b/pkgs/development/libraries/libfreefare/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libnfc openssl ] ++ lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
+  buildInputs = [ libnfc openssl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libobjc IOKit Security ];
 
   meta = with lib; {
     description = "Libfreefare project aims to provide a convenient API for MIFARE card manipulations";
diff --git a/pkgs/development/libraries/libftdi/1.x.nix b/pkgs/development/libraries/libftdi/1.x.nix
index 116f1dca1bbbb..5d579cf8cb333 100644
--- a/pkgs/development/libraries/libftdi/1.x.nix
+++ b/pkgs/development/libraries/libftdi/1.x.nix
@@ -21,12 +21,12 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libftdi";
-  version = "1.5";
+  version = "1.5-unstable-2023-12-21";
 
   src = fetchgit {
     url = "git://developer.intra2net.com/libftdi";
-    rev = "v${version}";
-    sha256 = "0vipg3y0kbbzjhxky6hfyxy42mpqhvwn1r010zr5givcfp8ghq26";
+    rev = "de9f01ece34d2fe6e842e0250a38f4b16eda2429";
+    hash = "sha256-U37M5P7itTF1262oW+txbKxcw2lhYHAwy1ML51SDVMs=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/libftdi/default.nix b/pkgs/development/libraries/libftdi/default.nix
index 27b23f9d54bce..18dab4e340da2 100644
--- a/pkgs/development/libraries/libftdi/default.nix
+++ b/pkgs/development/libraries/libftdi/default.nix
@@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
     sha256 = "13l39f6k6gff30hsgh0wa2z422g9pyl91rh8a8zz6f34k2sxaxii";
   };
 
-  buildInputs = [ libusb-compat-0_1 ] ++ lib.optionals stdenv.isDarwin [ libobjc Security IOKit ];
+  buildInputs = [ libusb-compat-0_1 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libobjc Security IOKit ];
 
   propagatedBuildInputs = [ libusb-compat-0_1 ];
 
-  configureFlags = lib.optional (!stdenv.isDarwin) "--with-async-mode";
+  configureFlags = lib.optional (!stdenv.hostPlatform.isDarwin) "--with-async-mode";
 
   # allow async mode. from ubuntu. see:
   #   https://bazaar.launchpad.net/~ubuntu-branches/ubuntu/trusty/libftdi/trusty/view/head:/debian/patches/04_async_mode.diff
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   # remove forbidden references to $TMPDIR
-  preFixup = lib.optionalString stdenv.isLinux ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
     for f in "$out"/bin/*; do
       if isELF "$f"; then
         patchelf --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" "$f"
diff --git a/pkgs/development/libraries/libgbinder/default.nix b/pkgs/development/libraries/libgbinder/default.nix
index cfdfd7482b42d..34eea10474133 100644
--- a/pkgs/development/libraries/libgbinder/default.nix
+++ b/pkgs/development/libraries/libgbinder/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgbinder";
-  version = "1.1.39";
+  version = "1.1.40";
 
   src = fetchFromGitHub {
     owner = "mer-hybris";
     repo = pname;
     rev = version;
-    sha256 = "sha256-O+Fg6NtWdBe0k+XhE/h62C1tvC6Y1BQZWva63sXJDfY=";
+    sha256 = "sha256-bv3UeL5xx28N/fSG1BeUSbbSvDaNgehpnx2OzIIaSXw=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libgcrypt/1.8.nix b/pkgs/development/libraries/libgcrypt/1.8.nix
index 2f0f3b4fd019e..720c376d02636 100644
--- a/pkgs/development/libraries/libgcrypt/1.8.nix
+++ b/pkgs/development/libraries/libgcrypt/1.8.nix
@@ -10,7 +10,7 @@
 , rsyslog
 }:
 
-assert enableCapabilities -> stdenv.isLinux;
+assert enableCapabilities -> stdenv.hostPlatform.isLinux;
 
 stdenv.mkDerivation rec {
   pname = "libgcrypt";
diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix
index 41e420f173fb4..ad360dab55ca2 100644
--- a/pkgs/development/libraries/libgcrypt/default.nix
+++ b/pkgs/development/libraries/libgcrypt/default.nix
@@ -11,7 +11,7 @@
 , rsyslog
 }:
 
-assert enableCapabilities -> stdenv.isLinux;
+assert enableCapabilities -> stdenv.hostPlatform.isLinux;
 
 stdenv.mkDerivation rec {
   pname = "libgcrypt";
@@ -22,8 +22,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo=";
   };
 
-  outputs = [ "out" "dev" "info" ];
-  outputBin = "dev";
+  outputs = [ "bin" "lib" "dev" "info" "out" ];
 
   # The CPU Jitter random number generator must not be compiled with
   # optimizations and the optimize -O0 pragma only works for gcc.
@@ -33,7 +32,7 @@ stdenv.mkDerivation rec {
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   buildInputs = [ libgpg-error ]
-    ++ lib.optional stdenv.isDarwin gettext
+    ++ lib.optional stdenv.hostPlatform.isDarwin gettext
     ++ lib.optional enableCapabilities libcap;
 
   strictDeps = true;
@@ -58,15 +57,22 @@ stdenv.mkDerivation rec {
   # Also make sure includes are fixed for callers who don't use libgpgcrypt-config
   postFixup = ''
     sed -i 's,#include <gpg-error.h>,#include "${libgpg-error.dev}/include/gpg-error.h",g' "$dev/include/gcrypt.h"
+  ''
+  # The `libgcrypt-config` script references $dev and in the $dev output, the
+  # stdenv automagically puts the $bin output into propagatedBuildInputs. This
+  # would cause a cycle. This is a weird tool anyways, so let's stuff it in $dev
+  # instead.
+  + ''
+    moveToOutput bin/libgcrypt-config $dev
   '' + lib.optionalString enableCapabilities ''
-    sed -i 's,\(-lcap\),-L${libcap.lib}/lib \1,' $out/lib/libgcrypt.la
+    sed -i 's,\(-lcap\),-L${libcap.lib}/lib \1,' $lib/lib/libgcrypt.la
   '';
 
   # TODO: figure out why this is even necessary and why the missing dylib only crashes
   # random instead of every test
-  preCheck = lib.optionalString stdenv.isDarwin ''
-    mkdir -p $out/lib
-    cp src/.libs/libgcrypt.20.dylib $out/lib
+  preCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    mkdir -p $lib/lib
+    cp src/.libs/libgcrypt.20.dylib $lib/lib
   '';
 
   doCheck = true;
@@ -82,6 +88,6 @@ stdenv.mkDerivation rec {
     description = "General-purpose cryptographic library";
     license = licenses.lgpl2Plus;
     platforms = platforms.all;
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libgda/6.x.nix b/pkgs/development/libraries/libgda/6.x.nix
index 1f551ec9b4b1f..72f4741fd2e76 100644
--- a/pkgs/development/libraries/libgda/6.x.nix
+++ b/pkgs/development/libraries/libgda/6.x.nix
@@ -85,6 +85,8 @@ stdenv.mkDerivation rec {
     postgresql
   ];
 
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
+
   postPatch = ''
     patchShebangs \
       providers/raw_spec.py \
diff --git a/pkgs/development/libraries/libgda/default.nix b/pkgs/development/libraries/libgda/default.nix
index 1ef0a397c8e77..b6a64c4b7a3fb 100644
--- a/pkgs/development/libraries/libgda/default.nix
+++ b/pkgs/development/libraries/libgda/default.nix
@@ -79,9 +79,11 @@ stdenv.mkDerivation rec {
     # as mentioned in https://github.com/GNOME/libgda/blob/95eeca4b0470f347c645a27f714c62aa6e59f820/libgda/sqlite/README#L31,
     # which references the paper https://web.archive.org/web/20100610151539/http://lattice.umiacs.umd.edu/files/functions_tr.pdf
     # See also https://github.com/Homebrew/homebrew-core/blob/104f9ecd02854a82372b64d63d41356555378a52/Formula/libgda.rb
-    "--enable-system-sqlite=${if stdenv.isDarwin then "no" else "yes"}"
+    "--enable-system-sqlite=${if stdenv.hostPlatform.isDarwin then "no" else "yes"}"
   ];
 
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
+
   enableParallelBuilding = true;
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/development/libraries/libgdiplus/default.nix b/pkgs/development/libraries/libgdiplus/default.nix
index 4d315b042ee99..63efe5430537f 100644
--- a/pkgs/development/libraries/libgdiplus/default.nix
+++ b/pkgs/development/libraries/libgdiplus/default.nix
@@ -34,9 +34,9 @@ stdenv.mkDerivation (finalAttrs: {
     [ glib cairo fontconfig libtiff giflib
       libjpeg libpng libXrender libexif
     ]
-    ++ lib.optional stdenv.isDarwin Carbon;
+    ++ lib.optional stdenv.hostPlatform.isDarwin Carbon;
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     ln -s $out/lib/libgdiplus.0.dylib $out/lib/libgdiplus.so
   '';
 
diff --git a/pkgs/development/libraries/libgee/default.nix b/pkgs/development/libraries/libgee/default.nix
index 0ae1886ebb62d..4cbaf916897c3 100644
--- a/pkgs/development/libraries/libgee/default.nix
+++ b/pkgs/development/libraries/libgee/default.nix
@@ -34,6 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   doCheck = true;
 
   env = {
+    NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
     PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "${placeholder "dev"}/share/gir-1.0";
     PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
   };
diff --git a/pkgs/development/libraries/libgig/default.nix b/pkgs/development/libraries/libgig/default.nix
index fcc44025400c6..aa710a9161253 100644
--- a/pkgs/development/libraries/libgig/default.nix
+++ b/pkgs/development/libraries/libgig/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.linuxsampler.org";
     description = "Gigasampler file access library";
     license = licenses.gpl2;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libgit2-glib/default.nix b/pkgs/development/libraries/libgit2-glib/default.nix
index cd2f10d157823..abf15fdec4d87 100644
--- a/pkgs/development/libraries/libgit2-glib/default.nix
+++ b/pkgs/development/libraries/libgit2-glib/default.nix
@@ -13,6 +13,7 @@
 , libgit2
 , glib
 , python3
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -26,6 +27,15 @@ stdenv.mkDerivation rec {
     sha256 = "EzHa2oOPTh9ZGyZFnUQSajJd52LcPNJhU6Ma+9/hgZA=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "support-libgit2-1.8.patch";
+      # https://gitlab.gnome.org/GNOME/libgit2-glib/-/merge_requests/40
+      url = "https://gitlab.gnome.org/GNOME/libgit2-glib/-/commit/a76fdf96c3af9ce9d21a3985c4be8a1aa6eea661.patch";
+      hash = "sha256-ysU8pAixyftensfEC9bE0RUFMPMei0jYT26WKN5uOFE=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/development/libraries/libgit2/default.nix b/pkgs/development/libraries/libgit2/default.nix
index 58212e00d89e7..af0ae5f73a7d0 100644
--- a/pkgs/development/libraries/libgit2/default.nix
+++ b/pkgs/development/libraries/libgit2/default.nix
@@ -8,7 +8,6 @@
 , libssh2
 , openssl
 , pcre
-, http-parser
 , libiconv
 , Security
 , staticBuild ? stdenv.hostPlatform.isStatic
@@ -16,11 +15,14 @@
 , libgit2-glib
 , python3Packages
 , gitstatus
+, llhttp
+, withGssapi ? false
+, krb5
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libgit2";
-  version = "1.7.2";
+  version = "1.8.1";
   # also check the following packages for updates: python3Packages.pygit2 and libgit2-glib
 
   outputs = ["lib" "dev" "out"];
@@ -28,13 +30,14 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "libgit2";
     repo = "libgit2";
-    rev = "v${version}";
-    hash = "sha256-fVPY/byE2/rxmv/bUykcAbmUFMlF3UZogVuTzjOXJUU=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-J2rCxTecyLbbDdsyBWn9w7r3pbKRMkI9E7RvRgAqBdY=";
   };
 
   cmakeFlags = [
     "-DUSE_HTTP_PARSER=system"
     "-DUSE_SSH=ON"
+    (lib.cmakeBool "USE_GSSAPI" withGssapi)
     "-DBUILD_SHARED_LIBS=${if staticBuild then "OFF" else "ON"}"
   ] ++ lib.optionals stdenv.hostPlatform.isWindows [
     "-DDLLTOOL=${stdenv.cc.bintools.targetPrefix}dlltool"
@@ -44,10 +47,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake python3 pkg-config ];
 
-  buildInputs = [ zlib libssh2 openssl pcre http-parser ]
-    ++ lib.optional stdenv.isDarwin Security;
+  buildInputs = [ zlib libssh2 openssl pcre llhttp ]
+    ++ lib.optional withGssapi krb5
+    ++ lib.optional stdenv.hostPlatform.isDarwin Security;
 
-  propagatedBuildInputs = lib.optional (!stdenv.isLinux) libiconv;
+  propagatedBuildInputs = lib.optional (!stdenv.hostPlatform.isLinux) libiconv;
 
   doCheck = true;
   checkPhase = ''
@@ -66,7 +70,7 @@ stdenv.mkDerivation rec {
     )
   '';
 
-  passthru.tests = {
+  passthru.tests = lib.mapAttrs (_: v: v.override { libgit2 = finalAttrs.finalPackage; }) {
     inherit libgit2-glib;
     inherit (python3Packages) pygit2;
     inherit gitstatus;
@@ -80,4 +84,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
-}
+})
diff --git a/pkgs/development/libraries/libglvnd/default.nix b/pkgs/development/libraries/libglvnd/default.nix
index 9a9c3b861d6d4..c3667d664707e 100644
--- a/pkgs/development/libraries/libglvnd/default.nix
+++ b/pkgs/development/libraries/libglvnd/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchFromGitLab
 , fetchpatch
-, autoreconfHook, pkg-config, python3, addOpenGLRunpath
+, autoreconfHook, pkg-config, python3, addDriverRunpath
 , libX11, libXext, xorgproto
 }:
 
@@ -26,10 +26,10 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ autoreconfHook pkg-config python3 addOpenGLRunpath ];
+  nativeBuildInputs = [ autoreconfHook pkg-config python3 addDriverRunpath ];
   buildInputs = [ libX11 libXext xorgproto ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/GLX/Makefile.am \
       --replace "-Wl,-Bsymbolic " ""
     substituteInPlace src/EGL/Makefile.am \
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
   env.NIX_CFLAGS_COMPILE = toString ([
     "-UDEFAULT_EGL_VENDOR_CONFIG_DIRS"
     # FHS paths are added so that non-NixOS applications can find vendor files.
-    "-DDEFAULT_EGL_VENDOR_CONFIG_DIRS=\"${addOpenGLRunpath.driverLink}/share/glvnd/egl_vendor.d:/etc/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d\""
+    "-DDEFAULT_EGL_VENDOR_CONFIG_DIRS=\"${addDriverRunpath.driverLink}/share/glvnd/egl_vendor.d:/etc/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d\""
 
     "-Wno-error=array-bounds"
   ] ++ lib.optionals stdenv.cc.isClang [
@@ -61,10 +61,10 @@ stdenv.mkDerivation rec {
   # Note that libEGL does not need it because it uses driver config files which should
   # contain absolute paths to libraries.
   postFixup = ''
-    addOpenGLRunpath $out/lib/libGLX.so
+    addDriverRunpath $out/lib/libGLX.so
   '';
 
-  passthru = { inherit (addOpenGLRunpath) driverLink; };
+  passthru = { inherit (addDriverRunpath) driverLink; };
 
   meta = with lib; {
     description = "GL Vendor-Neutral Dispatch library";
diff --git a/pkgs/development/libraries/libgnome-keyring/default.nix b/pkgs/development/libraries/libgnome-keyring/default.nix
deleted file mode 100644
index f31f26539a55d..0000000000000
--- a/pkgs/development/libraries/libgnome-keyring/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, stdenv, fetchurl, glib, dbus, libgcrypt, pkg-config, intltool
-, testers
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libgnome-keyring";
-  version = "2.32.0";
-
-  src = let
-    inherit (finalAttrs) pname version;
-  in fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
-    sha256 = "030gka96kzqg1r19b4xrmac89hf1xj1kr5p461yvbzfxh46qqf2n";
-  };
-
-  outputs = [ "out" "dev" ];
-
-  strictDeps = true;
-  propagatedBuildInputs = [ glib dbus libgcrypt ];
-  nativeBuildInputs = [ pkg-config intltool ];
-
-  configureFlags = [
-    # not ideal to use -config scripts but it's not possible switch it to pkg-config
-    # binaries in dev have a for build shebang
-    "LIBGCRYPT_CONFIG=${lib.getExe' (lib.getDev libgcrypt) "libgcrypt-config"}"
-  ];
-
-  postPatch = ''
-    # uses pkg-config in some places and uses the correct $PKG_CONFIG in some
-    # it's an ancient library so it has very old configure scripts and m4
-    substituteInPlace ./configure \
-      --replace "pkg-config" "$PKG_CONFIG"
-  '';
-
-  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
-
-  meta = {
-    pkgConfigModules = [ "gnome-keyring-1" ];
-    inherit (glib.meta) platforms maintainers;
-    homepage = "https://gitlab.gnome.org/Archive/libgnome-keyring";
-    license = with lib.licenses; [ gpl2 lgpl2 ];
-  };
-})
diff --git a/pkgs/development/libraries/libgnurl/default.nix b/pkgs/development/libraries/libgnurl/default.nix
index e0de7acd38bad..b3db03d0240b7 100644
--- a/pkgs/development/libraries/libgnurl/default.nix
+++ b/pkgs/development/libraries/libgnurl/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Fork of libcurl used by GNUnet";
     homepage    = "https://gnunet.org/en/gnurl.html";
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = [ ];
     platforms = platforms.unix;
     license = licenses.curl;
   };
diff --git a/pkgs/development/libraries/libgourou/default.nix b/pkgs/development/libraries/libgourou/default.nix
index bfd483e5d31c8..ba64735f873dd 100644
--- a/pkgs/development/libraries/libgourou/default.nix
+++ b/pkgs/development/libraries/libgourou/default.nix
@@ -51,6 +51,6 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ autumnal ];
     platforms = platforms.all;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/libgpg-error/default.nix b/pkgs/development/libraries/libgpg-error/default.nix
index a990546108cff..2dee6c721bc1a 100644
--- a/pkgs/development/libraries/libgpg-error/default.nix
+++ b/pkgs/development/libraries/libgpg-error/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPackages, fetchurl, gettext
+{ stdenv, lib, buildPackages, fetchurl, fetchpatch, gettext
 , genPosixLockObjOnly ? false
 }: let
   genPosixLockObjOnlyAttrs = lib.optionalAttrs genPosixLockObjOnly {
@@ -17,13 +17,21 @@
   };
 in stdenv.mkDerivation (rec {
   pname = "libgpg-error";
-  version = "1.49";
+  version = "1.50";
 
   src = fetchurl {
     url = "mirror://gnupg/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-i3nVRjnb9KvAi1QG+y835mmi3sCR3QJPuH3TZxMcY6k=";
+    hash = "sha256-aUBTSeCmM+REooxbNc6PFEhGhFGKUI3EigiZkv6T4go=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/macports/macports-ports/raw/cc17f22f4056d84967bd94cf41458e3d3150f9e1/devel/libgpg-error/files/patch-src-spawn-posix.c.diff";
+      extraPrefix = "";
+      hash = "sha256-nIS9oKcgHdHtRTlaSx7mgwQPXq855t+SNujplQKKhzQ=";
+    })
+  ];
+
   postPatch = ''
     sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure
   '';
@@ -47,7 +55,7 @@ in stdenv.mkDerivation (rec {
     #   ./config.status[1401]: shift: (null): bad number
     # (See <https://hydra.nixos.org/build/2931046/nixlog/1/raw>.)
     # Thus, re-run it with Bash.
-    lib.optionalString stdenv.isSunOS ''
+    lib.optionalString stdenv.hostPlatform.isSunOS ''
       ${stdenv.shell} config.status
     ''
     # ./configure errorneous decides to use weak symbols on pkgsStatic,
@@ -75,6 +83,6 @@ in stdenv.mkDerivation (rec {
 
     license = licenses.lgpl2Plus;
     platforms = platforms.all;
-    maintainers = [ maintainers.vrthra ];
+    maintainers = [ ];
   };
 } // genPosixLockObjOnlyAttrs)
diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix
index fe131f469f0b3..1880b8310fceb 100644
--- a/pkgs/development/libraries/libgpiod/default.nix
+++ b/pkgs/development/libraries/libgpiod/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libgpiod";
-  version = "2.1.2";
+  version = "2.1.3";
 
   src = fetchurl {
     url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
-    hash = "sha256-sb3x4/dSOGlfk+RCBiuvwGkXDyv08M1LjgScpnExofA=";
+    hash = "sha256-jYDqAirngSKqUlMI50I7gwZL/yePzZzQRblLT4H4BX0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libgpod/default.nix b/pkgs/development/libraries/libgpod/default.nix
index 2de6d8dd4d2c6..a81f9587b3be0 100644
--- a/pkgs/development/libraries/libgpod/default.nix
+++ b/pkgs/development/libraries/libgpod/default.nix
@@ -9,7 +9,6 @@
 , glib
 , libxml2
 , sqlite
-, zlib
 , sg3_utils
 , gdk-pixbuf
 , taglib
diff --git a/pkgs/development/libraries/libgrss/default.nix b/pkgs/development/libraries/libgrss/default.nix
index ce0c6e14edc28..c6de97101be8e 100644
--- a/pkgs/development/libraries/libgrss/default.nix
+++ b/pkgs/development/libraries/libgrss/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     glib
     libxml2
     libsoup
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Foundation
     AppKit
   ];
diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix
index bd3ece4235993..dcb460272d16d 100644
--- a/pkgs/development/libraries/libgsf/default.nix
+++ b/pkgs/development/libraries/libgsf/default.nix
@@ -2,6 +2,7 @@
 , lib
 , stdenv
 , autoreconfHook
+, fetchpatch2
 , gtk-doc
 , pkg-config
 , intltool
@@ -31,6 +32,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-uSi2/pZiST07YutU8SHNoY2LifEQhohQeyaH9spyG2s=";
   };
 
+  patches = [
+    # Fixes building when nanohttp is not enabled in libxml2, which is the default since libxml2 2.13.
+    (fetchpatch2 {
+      url = "https://gitlab.gnome.org/GNOME/libgsf/-/commit/5d4bb55095d3d6ef793c1908a88504183e28644c.diff";
+      hash = "sha256-2TF1KDUxJtSMTDze2/dOJQRkW8S1GA9OyFpYzYeKpjQ=";
+    })
+  ];
+
   postPatch = ''
     # Fix cross-compilation
     substituteInPlace configure.ac \
diff --git a/pkgs/development/libraries/libgssglue/default.nix b/pkgs/development/libraries/libgssglue/default.nix
index 0d01b05e223b7..b11c9e3600a59 100644
--- a/pkgs/development/libraries/libgssglue/default.nix
+++ b/pkgs/development/libraries/libgssglue/default.nix
@@ -1,22 +1,34 @@
-{ lib, stdenv, fetchurl, libkrb5 }:
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  autoreconfHook,
+  krb5,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libgssglue";
-  version = "0.4";
+  version = "0.9";
 
-  src = fetchurl {
-    url = "http://www.citi.umich.edu/projects/nfsv4/linux/libgssglue/${pname}-${version}.tar.gz";
-    sha256 = "0fh475kxzlabwz30wz3bf7i8kfqiqzhfahayx3jj79rba1sily9z";
+  src = fetchFromGitLab {
+    owner = "gsasl";
+    repo = "libgssglue";
+    rev = "tags/libgssglue-${finalAttrs.version}";
+    hash = "sha256-p9dujLklv2ZC1YA1gKGCRJf9EvF3stv5v4Z/5m1nSeM=";
   };
 
+  nativeBuildInputs = [ autoreconfHook ];
+
   postPatch = ''
+    touch ChangeLog
+
     sed s:/etc/gssapi_mech.conf:$out/etc/gssapi_mech.conf: -i src/g_initialize.c
   '';
 
   postInstall = ''
     mkdir -p $out/etc
     cat <<EOF > $out/etc/gssapi_mech.conf
-    ${libkrb5}/lib/libgssapi_krb5.so mechglue_internal_krb5_init
+    ${lib.getLib krb5}/lib/libgssapi_krb5.so mechglue_internal_krb5_init
     EOF
   '';
 
@@ -27,4 +39,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = with maintainers; [ corngood ];
   };
-}
+})
diff --git a/pkgs/development/libraries/libgudev/default.nix b/pkgs/development/libraries/libgudev/default.nix
index d3d3ae043e04e..dcd2015e1d156 100644
--- a/pkgs/development/libraries/libgudev/default.nix
+++ b/pkgs/development/libraries/libgudev/default.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     description = "Library that provides GObject bindings for libudev";
     homepage = "https://gitlab.gnome.org/GNOME/libgudev";
-    maintainers = [ maintainers.eelco ] ++ teams.gnome.members;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
     license = licenses.lgpl2Plus;
   };
diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix
index 42b9272115437..b07051358be09 100644
--- a/pkgs/development/libraries/libgweather/default.nix
+++ b/pkgs/development/libraries/libgweather/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dzoneinfo_dir=${tzdata}/share/zoneinfo"
     (lib.mesonBool "introspection" withIntrospection)
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-Dc_args=-D_DARWIN_C_SOURCE"
   ];
 
diff --git a/pkgs/development/libraries/libhandy/0.x.nix b/pkgs/development/libraries/libhandy/0.x.nix
index e2b4ce381b7fb..c20a8382b5d08 100644
--- a/pkgs/development/libraries/libhandy/0.x.nix
+++ b/pkgs/development/libraries/libhandy/0.x.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     "-Dintrospection=enabled"
   ];
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   checkPhase = ''
     NO_AT_BRIDGE=1 \
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     mainProgram = "handy-0.0-demo";
     homepage = "https://source.puri.sm/Librem5/libhandy";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix
index a43ee0986be81..829de78a6aeb3 100644
--- a/pkgs/development/libraries/libhandy/default.nix
+++ b/pkgs/development/libraries/libhandy/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_GLADEUI_2_0_MODULEDIR = "${placeholder "glade"}/lib/glade/modules";
   PKG_CONFIG_GLADEUI_2_0_CATALOGDIR = "${placeholder "glade"}/share/glade/catalogs";
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   checkPhase = ''
     runHook preCheck
diff --git a/pkgs/development/libraries/libheif/default.nix b/pkgs/development/libraries/libheif/default.nix
index cdff03fc09aec..1b9c0c0768c39 100644
--- a/pkgs/development/libraries/libheif/default.nix
+++ b/pkgs/development/libraries/libheif/default.nix
@@ -17,12 +17,13 @@
 , imagemagick
 , imlib2Full
 , imv
+, python3Packages
 , vips
 }:
 
 stdenv.mkDerivation rec {
   pname = "libheif";
-  version = "1.17.6";
+  version = "1.18.2";
 
   outputs = [ "bin" "out" "dev" "man" ];
 
@@ -30,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "strukturag";
     repo = "libheif";
     rev = "v${version}";
-    sha256 = "sha256-pp+PjV/pfExLqzFE61mxliOtVAYOePh1+i1pwZxDLAM=";
+    hash = "sha256-Z21E2b4E9jGtwR1RpFMAbGsWFw6jXn++WexlzdoyZzE=";
   };
 
   nativeBuildInputs = [
@@ -60,6 +61,7 @@ stdenv.mkDerivation rec {
 
   passthru.tests = {
     inherit gimp imagemagick imlib2Full imv vips;
+    inherit (python3Packages) pillow-heif;
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libhsts/default.nix b/pkgs/development/libraries/libhsts/default.nix
index 967ffe5631726..124b1fc5496c8 100644
--- a/pkgs/development/libraries/libhsts/default.nix
+++ b/pkgs/development/libraries/libhsts/default.nix
@@ -36,6 +36,6 @@ stdenv.mkDerivation rec {
     mainProgram = "hsts";
     homepage = "https://gitlab.com/rockdaboot/libhsts";
     license = with licenses; [ mit bsd3 ];
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libhv/default.nix b/pkgs/development/libraries/libhv/default.nix
index c64c8e6e291f8..93524afabe491 100644
--- a/pkgs/development/libraries/libhv/default.nix
+++ b/pkgs/development/libraries/libhv/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ curl openssl ] ++ lib.optional stdenv.isDarwin Security;
+  buildInputs = [ curl openssl ] ++ lib.optional stdenv.hostPlatform.isDarwin Security;
 
   cmakeFlags = [
     "-DENABLE_UDS=ON"
diff --git a/pkgs/development/libraries/libhwy/default.nix b/pkgs/development/libraries/libhwy/default.nix
index 664378d42b6d5..7bf78ec875e21 100644
--- a/pkgs/development/libraries/libhwy/default.nix
+++ b/pkgs/development/libraries/libhwy/default.nix
@@ -27,6 +27,12 @@ stdenv.mkDerivation rec {
       hash = "sha256-ileSNYddOt1F5rooRB0fXT20WkVlnG+gP5w7qJdBuww=";
     });
 
+  hardeningDisable = lib.optionals stdenv.hostPlatform.isAarch64 [
+    # aarch64-specific code gets:
+    # __builtin_clear_padding not supported for variable length aggregates
+    "trivialautovarinit"
+  ];
+
   nativeBuildInputs = [ cmake ninja ];
 
   # Required for case-insensitive filesystems ("BUILD" exists)
diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix
index d3ee9581305c7..f6a0555f34123 100644
--- a/pkgs/development/libraries/libical/default.nix
+++ b/pkgs/development/libraries/libical/default.nix
@@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake
+    icu
     ninja
     perl
     pkg-config
@@ -51,7 +52,7 @@ stdenv.mkDerivation rec {
     # https://github.com/NixOS/nixpkgs/pull/67204
     # previously with https://github.com/NixOS/nixpkgs/pull/61657#issuecomment-495579489
     # gtk-doc docbook_xsl docbook_xml_dtd_43 # for docs
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
   nativeInstallCheckInputs = [
@@ -94,7 +95,7 @@ stdenv.mkDerivation rec {
   # Musl does not support TZDIR.
   doInstallCheck = !stdenv.hostPlatform.isMusl;
   enableParallelChecking = false;
-  preInstallCheck = if stdenv.isDarwin then ''
+  preInstallCheck = if stdenv.hostPlatform.isDarwin then ''
     for testexe in $(find ./src/test -maxdepth 1 -type f -executable); do
       for lib in $(cd lib && ls *.3.dylib); do
         install_name_tool -change $lib $out/lib/$lib $testexe
diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix
index b59887381f49e..9bb60501a065a 100644
--- a/pkgs/development/libraries/libiconv/default.nix
+++ b/pkgs/development/libraries/libiconv/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
   configureFlags = [
     (lib.enableFeature enableStatic "static")
     (lib.enableFeature enableShared "shared")
-  ] ++ lib.optional stdenv.isFreeBSD "--with-pic";
+  ] ++ lib.optional stdenv.hostPlatform.isFreeBSD "--with-pic";
 
   passthru = { inherit setupHooks; };
 
diff --git a/pkgs/development/libraries/libidn/default.nix b/pkgs/development/libraries/libidn/default.nix
index 59cacfc4466e8..bafb2fff272fb 100644
--- a/pkgs/development/libraries/libidn/default.nix
+++ b/pkgs/development/libraries/libidn/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.42";
 
   src = fetchurl {
-    url = "mirror://gnu/libidn/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "mirror://gnu/libidn/libidn-${finalAttrs.version}.tar.gz";
     sha256 = "sha256-1sGZ3NgG5P4nk2DLSwg0mg05Vg7VSP/RzK3ajN7LRyM=";
   };
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   hardeningDisable = [ "format" ];
 
-  buildInputs = lib.optional stdenv.isDarwin libiconv;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libiconv;
 
   passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
 
diff --git a/pkgs/development/libraries/libidn2/default.nix b/pkgs/development/libraries/libidn2/default.nix
index bfe9c2a24264f..90c7198757c70 100644
--- a/pkgs/development/libraries/libidn2/default.nix
+++ b/pkgs/development/libraries/libidn2/default.nix
@@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
 
   # The above patch causes the documentation to be regenerated, so the
   # documentation tools are required.
-  nativeBuildInputs = lib.optionals stdenv.isDarwin [ help2man texinfo ];
-  buildInputs = [ libunistring ] ++ lib.optional stdenv.isDarwin libiconv;
+  nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ help2man texinfo ];
+  buildInputs = [ libunistring ] ++ lib.optional stdenv.hostPlatform.isDarwin libiconv;
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   meta = {
diff --git a/pkgs/development/libraries/libieee1284/default.nix b/pkgs/development/libraries/libieee1284/default.nix
index 4b5bef5c32a6d..c49e425231372 100644
--- a/pkgs/development/libraries/libieee1284/default.nix
+++ b/pkgs/development/libraries/libieee1284/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch
+{ lib, stdenv, fetchFromGitHub, fetchurl
 , autoconf, automake, libtool, xmlto, docbook_xml_dtd_412, docbook_xsl
 }:
 
@@ -14,10 +14,10 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
-    # Fix build on Musl.
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/void-linux/void-packages/861ac185a6b60134292ff93d40e40b5391d0aa8e/srcpkgs/libieee1284/patches/musl.patch";
-      sha256 = "03xivd6z7m51i5brlmzs60pjrlqyr4561qlnh182wa7rrm01x5y6";
+    (fetchurl {
+      name = "musl.patch";
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-libs/libieee1284/files/libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch";
+      hash = "sha256-sNu0OPBMa9GIwSu754noateF4FZC14f+8YRgYUl13KQ=";
     })
   ];
 
diff --git a/pkgs/development/libraries/libiio/default.nix b/pkgs/development/libraries/libiio/default.nix
index 8adc015120400..023dfce86bf57 100644
--- a/pkgs/development/libraries/libiio/default.nix
+++ b/pkgs/development/libraries/libiio/default.nix
@@ -46,8 +46,8 @@ stdenv.mkDerivation rec {
     libxml2
     libusb1
   ] ++ lib.optional avahiSupport avahi
-    ++ lib.optional stdenv.isLinux libaio
-    ++ lib.optionals stdenv.isDarwin [ CFNetwork CoreServices ];
+    ++ lib.optional stdenv.hostPlatform.isLinux libaio
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ CFNetwork CoreServices ];
 
   cmakeFlags = [
     "-DUDEV_RULES_INSTALL_DIR=${placeholder "out"}/lib/udev/rules.d"
diff --git a/pkgs/development/libraries/libimagequant/Cargo.lock b/pkgs/development/libraries/libimagequant/Cargo.lock
index 8e542f3586935..4925fc1a9e31a 100644
--- a/pkgs/development/libraries/libimagequant/Cargo.lock
+++ b/pkgs/development/libraries/libimagequant/Cargo.lock
@@ -10,9 +10,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
 name = "ahash"
-version = "0.8.7"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
  "once_cell",
@@ -28,15 +28,15 @@ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.0"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5"
 
 [[package]]
 name = "c_test"
@@ -48,12 +48,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.97"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
+checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4"
 
 [[package]]
 name = "cfg-if"
@@ -63,9 +60,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
@@ -97,9 +94,9 @@ checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
 
 [[package]]
 name = "fallible_collections"
@@ -112,9 +109,9 @@ dependencies = [
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -131,7 +128,7 @@ dependencies = [
 
 [[package]]
 name = "imagequant"
-version = "4.3.0"
+version = "4.3.1"
 dependencies = [
  "arrayvec",
  "lodepng",
@@ -152,9 +149,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.152"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "lodepng"
@@ -171,9 +168,9 @@ dependencies = [
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
@@ -186,27 +183,27 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "rayon"
-version = "1.8.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -233,9 +230,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.48"
+version = "2.0.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
+checksum = "7ad3dee41f36859875573074334c200d1add8e4a87bb37113ebd31d926b7b11f"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -244,9 +241,9 @@ dependencies = [
 
 [[package]]
 name = "thread_local"
-version = "1.1.7"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
 dependencies = [
  "cfg-if",
  "once_cell",
@@ -266,18 +263,18 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "zerocopy"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087"
 dependencies = [
  "zerocopy-derive",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/pkgs/development/libraries/libimagequant/default.nix b/pkgs/development/libraries/libimagequant/default.nix
index e4d3f4d0fe01a..f4e3512bdb768 100644
--- a/pkgs/development/libraries/libimagequant/default.nix
+++ b/pkgs/development/libraries/libimagequant/default.nix
@@ -14,16 +14,17 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "libimagequant";
-  version = "4.3.0";
+  version = "4.3.1";
 
   src = fetchFromGitHub {
     owner = "ImageOptim";
     repo = "libimagequant";
     rev = version;
-    hash = "sha256-/gHe3LQaBWOQImBesKvHK46T42TtRld988wgxbut4i0=";
+    hash = "sha256-dau+oGwcyN7AA1jEBtCgYV/cmrx5Wo3koKXbloYagrw=";
   };
 
   cargoLock = {
+    # created it by running `cargo update` in the source tree.
     lockFile = ./Cargo.lock;
   };
 
diff --git a/pkgs/development/libraries/libimobiledevice-glue/default.nix b/pkgs/development/libraries/libimobiledevice-glue/default.nix
index f85c559593d16..13a2e83d04735 100644
--- a/pkgs/development/libraries/libimobiledevice-glue/default.nix
+++ b/pkgs/development/libraries/libimobiledevice-glue/default.nix
@@ -4,21 +4,24 @@
 , autoreconfHook
 , pkg-config
 , libplist
+, nix-update-script
 }:
 
 stdenv.mkDerivation rec {
   pname = "libimobiledevice-glue";
-  version = "1.2.0";
-
-  outputs = [ "out" "dev" ];
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "libimobiledevice";
     repo = pname;
     rev = version;
-    hash = "sha256-Rfs1i1Tt8uf3WfR+cDlF4L75nFHg9VypjMhHt0TgkyQ=";
+    hash = "sha256-+poCrn2YHeH8RQCfWDdnlmJB4Nf+unWUVwn7YwILHIs=";
   };
 
+  preAutoreconf = ''
+    export RELEASE_VERSION=${version}
+  '';
+
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
@@ -28,9 +31,9 @@ stdenv.mkDerivation rec {
     libplist
   ];
 
-  preAutoreconf = ''
-    export RELEASE_VERSION=${version}
-  '';
+  outputs = [ "out" "dev" ];
+
+  passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
     homepage = "https://github.com/libimobiledevice/libimobiledevice-glue";
diff --git a/pkgs/development/libraries/libimobiledevice/default.nix b/pkgs/development/libraries/libimobiledevice/default.nix
index 59ee89c95422a..88b9391d4bdbb 100644
--- a/pkgs/development/libraries/libimobiledevice/default.nix
+++ b/pkgs/development/libraries/libimobiledevice/default.nix
@@ -12,31 +12,36 @@
 , libimobiledevice-glue
 , SystemConfiguration
 , CoreFoundation
+, unstableGitUpdater
 }:
 
 stdenv.mkDerivation rec {
   pname = "libimobiledevice";
-  version = "1.3.0+date=2023-04-30";
-
-  outputs = [ "out" "dev" ];
+  version = "1.3.0-unstable-2024-05-20";
 
   src = fetchFromGitHub {
     owner = "libimobiledevice";
     repo = pname;
-    rev = "860ffb707af3af94467d2ece4ad258dda957c6cd";
-    hash = "sha256-mIsB+EaGJlGMOpz3OLrs0nAmhOY1BwMs83saFBaejwc=";
+    rev = "9ccc52222c287b35e41625cc282fb882544676c6";
+    hash = "sha256-pNvtDGUlifp10V59Kah4q87TvLrcptrCJURHo+Y+hs4=";
   };
 
   patches = [
-    # Pull upstream fix for clang-16 and upcoming gcc-14 support:
-    #   https://github.com/libimobiledevice/libimobiledevice/pull/1444
+    # Fix gcc-14 and clang-16 build:
+    #   https://github.com/libimobiledevice/libimobiledevice/pull/1569
     (fetchpatch {
-      name = "usleep-decl.patch";
-      url = "https://github.com/libimobiledevice/libimobiledevice/commit/db623184c0aa09c27697f5a2e81025db223075d5.patch";
-      hash = "sha256-TgdgBkEDXzQDSgJxcZc+pZncfmBVXarhHOByGFs6p0Q=";
+      name = "fime.h.patch";
+      url = "https://github.com/libimobiledevice/libimobiledevice/commit/92256c2ae2422dac45d8648a63517598bdd89883.patch";
+      hash = "sha256-sB+wEFuXFoQnuf7ntWfvYuCgWfYbmlPL7EjW0L0F74o=";
     })
   ];
 
+  preAutoreconf = ''
+    export RELEASE_VERSION=${version}
+  '';
+
+  configureFlags = [ "--without-cython" ];
+
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
@@ -49,16 +54,17 @@ stdenv.mkDerivation rec {
     libtasn1
     libusbmuxd
     libimobiledevice-glue
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     SystemConfiguration
     CoreFoundation
   ];
 
-  preAutoreconf = ''
-    export RELEASE_VERSION=${version}
-  '';
 
-  configureFlags = [ "--without-cython" ];
+  outputs = [ "out" "dev" ];
+
+  enableParallelBuilding = true;
+
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = with lib; {
     homepage = "https://github.com/libimobiledevice/libimobiledevice";
diff --git a/pkgs/development/libraries/libinotify-kqueue/default.nix b/pkgs/development/libraries/libinotify-kqueue/default.nix
index d01407b43d0f0..3d73ace3c925a 100644
--- a/pkgs/development/libraries/libinotify-kqueue/default.nix
+++ b/pkgs/development/libraries/libinotify-kqueue/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     description = "Inotify shim for macOS and BSD";
     homepage = "https://github.com/libinotify-kqueue/libinotify-kqueue";
     license = licenses.mit;
-    maintainers = with maintainers; [ yana ];
+    maintainers = [ ];
     platforms = with platforms; darwin ++ freebsd ++ netbsd ++ openbsd;
   };
 }
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index f0005969bbcfc..0021f08aa5e23 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -45,7 +45,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "libinput";
-  version = "1.25.0";
+  version = "1.26.2";
 
   outputs = [ "bin" "out" "dev" ];
 
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     owner = "libinput";
     repo = "libinput";
     rev = version;
-    hash = "sha256-c2FU5OW+CIgtYTQy+bwIbaw3SP1pVxaLokhO+ag5/1s=";
+    hash = "sha256-Ly832W2U38JuXiqvt6e7u3APynrmwi4Ns98bBdTBnP8=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libint/default.nix b/pkgs/development/libraries/libint/default.nix
index a6ad9498afa3c..73e400810f619 100644
--- a/pkgs/development/libraries/libint/default.nix
+++ b/pkgs/development/libraries/libint/default.nix
@@ -111,11 +111,11 @@ let
   pname = "libint";
   version = "2.9.0";
 
-  meta = with lib; {
+  meta = {
     description = "Library for the evaluation of molecular integrals of many-body operators over Gaussian functions";
     homepage = "https://github.com/evaleev/libint";
-    license = with licenses; [ lgpl3Only gpl3Only ];
-    maintainers = with maintainers; [ markuskowa sheepforce ];
+    license = with lib.licenses; [ lgpl3Only gpl3Only ];
+    maintainers = with lib.maintainers; [ markuskowa sheepforce ];
     platforms = [ "x86_64-linux" ];
   };
 
@@ -155,31 +155,31 @@ let
 
     buildInputs = [ boost eigen ];
 
-    configureFlags = with lib; [
+    configureFlags = [
       "--with-max-am=${builtins.toString maxAm}"
-      "--with-eri-max-am=${concatStringsSep "," (builtins.map builtins.toString eriAm)}"
-      "--with-eri3-max-am=${concatStringsSep "," (builtins.map builtins.toString eri3Am)}"
-      "--with-eri2-max-am=${concatStringsSep "," (builtins.map builtins.toString eri2Am)}"
-      "--with-eri-opt-am=${concatStringsSep "," (builtins.map builtins.toString eriOptAm)}"
-      "--with-eri3-opt-am=${concatStringsSep "," (builtins.map builtins.toString eri3OptAm)}"
-      "--with-eri2-opt-am=${concatStringsSep "," (builtins.map builtins.toString eri2OptAm)}"
+      "--with-eri-max-am=${lib.concatStringsSep "," (builtins.map builtins.toString eriAm)}"
+      "--with-eri3-max-am=${lib.concatStringsSep "," (builtins.map builtins.toString eri3Am)}"
+      "--with-eri2-max-am=${lib.concatStringsSep "," (builtins.map builtins.toString eri2Am)}"
+      "--with-eri-opt-am=${lib.concatStringsSep "," (builtins.map builtins.toString eriOptAm)}"
+      "--with-eri3-opt-am=${lib.concatStringsSep "," (builtins.map builtins.toString eri3OptAm)}"
+      "--with-eri2-opt-am=${lib.concatStringsSep "," (builtins.map builtins.toString eri2OptAm)}"
       "--with-cartgauss-ordering=${cartGaussOrd}"
       "--with-shgauss-ordering=${shGaussOrd}"
       "--with-shell-set=${shellSet}"
     ]
-    ++ optional enableFMA "--enable-fma"
-    ++ optional (eriDeriv > 0) "--enable-eri=${builtins.toString eriDeriv}"
-    ++ optional (eri2Deriv > 0) "--enable-eri2=${builtins.toString eri2Deriv}"
-    ++ optional (eri3Deriv > 0) "--enable-eri3=${builtins.toString eri3Deriv}"
-    ++ lists.optionals enableOneBody [
+    ++ lib.optional enableFMA "--enable-fma"
+    ++ lib.optional (eriDeriv > 0) "--enable-eri=${builtins.toString eriDeriv}"
+    ++ lib.optional (eri2Deriv > 0) "--enable-eri2=${builtins.toString eri2Deriv}"
+    ++ lib.optional (eri3Deriv > 0) "--enable-eri3=${builtins.toString eri3Deriv}"
+    ++ lib.optionals enableOneBody [
       "--enable-1body=${builtins.toString oneBodyDerivOrd}"
       "--enable-1body-property-derivs"
     ]
-    ++ optional (multipoleOrd > 0) "--with-multipole-max-order=${builtins.toString multipoleOrd}"
-    ++ optional enableGeneric "--enable-generic"
-    ++ optional enableContracted "--enable-contracted-ints"
-    ++ optional eri3PureSh "--enable-eri3-pure-sh"
-    ++ optional eri2PureSh "--enable-eri2-pure-sh"
+    ++ lib.optional (multipoleOrd > 0) "--with-multipole-max-order=${builtins.toString multipoleOrd}"
+    ++ lib.optional enableGeneric "--enable-generic"
+    ++ lib.optional enableContracted "--enable-contracted-ints"
+    ++ lib.optional eri3PureSh "--enable-eri3-pure-sh"
+    ++ lib.optional eri2PureSh "--enable-eri2-pure-sh"
     ;
 
     preConfigure = ''
diff --git a/pkgs/development/libraries/libiodbc/default.nix b/pkgs/development/libraries/libiodbc/default.nix
index 6d6d7d46576d3..c059d619ccae2 100644
--- a/pkgs/development/libraries/libiodbc/default.nix
+++ b/pkgs/development/libraries/libiodbc/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = lib.optionals useGTK [ gtk2 ]
-                ++ lib.optional stdenv.isDarwin Carbon;
+                ++ lib.optional stdenv.hostPlatform.isDarwin Carbon;
 
   preBuild =
     ''
diff --git a/pkgs/development/libraries/libipt/default.nix b/pkgs/development/libraries/libipt/default.nix
index ed88ed8f28280..060f6a803566a 100644
--- a/pkgs/development/libraries/libipt/default.nix
+++ b/pkgs/development/libraries/libipt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, cmake, freebsd }:
 
 stdenv.mkDerivation rec {
   pname = "libipt";
@@ -12,6 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
+  buildInputs = lib.optional stdenv.hostPlatform.isFreeBSD freebsd.libstdthreads;
 
   meta = with lib; {
     description = "Intel Processor Trace decoder library";
diff --git a/pkgs/development/libraries/libiptcdata/default.nix b/pkgs/development/libraries/libiptcdata/default.nix
index f6f918c1d5227..741c8d8a74a5a 100644
--- a/pkgs/development/libraries/libiptcdata/default.nix
+++ b/pkgs/development/libraries/libiptcdata/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv
     libintl
   ];
diff --git a/pkgs/development/libraries/libiscsi/default.nix b/pkgs/development/libraries/libiscsi/default.nix
index 1008037c60cc7..2a0d722c3d0fd 100644
--- a/pkgs/development/libraries/libiscsi/default.nix
+++ b/pkgs/development/libraries/libiscsi/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  env = lib.optionalAttrs (stdenv.is32bit || stdenv.isDarwin) {
+  env = lib.optionalAttrs (stdenv.hostPlatform.is32bit || stdenv.hostPlatform.isDarwin) {
     # iscsi-discard.c:223:57: error: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Werror,-Wformat]
     NIX_CFLAGS_COMPILE = "-Wno-error=format";
   };
diff --git a/pkgs/development/libraries/libivykis/default.nix b/pkgs/development/libraries/libivykis/default.nix
index c5e0c55854e60..52084508620ca 100644
--- a/pkgs/development/libraries/libivykis/default.nix
+++ b/pkgs/development/libraries/libivykis/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   pname = "libivykis";
 
-  version = "0.42.4";
+  version = "0.43.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/libivykis/${version}/ivykis-${version}.tar.gz";
-    sha256 = "0abi0rc3wnncvr68hy6rmzp96x6napd7fs1mff20dr8lb0jyvy3f";
+    sha256 = "sha256-x9Kxi9k0Ln7f0T4OOKaNv+qm0x6S4+Z3K6o5Qp3+u58=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
       notification facilities
     '';
     license = licenses.zlib;
-    maintainers = [];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libjaylink/default.nix b/pkgs/development/libraries/libjaylink/default.nix
deleted file mode 100644
index f313241d6d865..0000000000000
--- a/pkgs/development/libraries/libjaylink/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ fetchFromGitLab, lib, stdenv
-, autoreconfHook, pkg-config
-, libusb1
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libjaylink";
-  version = "0.3.1";
-
-  src = fetchFromGitLab {
-    domain = "gitlab.zapb.de";
-    owner = "libjaylink";
-    repo = "libjaylink";
-    rev = version;
-    sha256 = "sha256-odJDE1A0WZ9vBXPxaUdthjTgmbmbdHjbyY1PkaM4+vI=";
-  };
-
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libusb1 ];
-
-  postPatch = ''
-    patchShebangs autogen.sh
-  '';
-
-  postInstall = ''
-    install -Dm644 contrib/99-libjaylink.rules $out/lib/udev/rules.d/libjaylink.rules
-  '';
-
-  meta = with lib; {
-    homepage = "https://gitlab.zapb.de/libjaylink/libjaylink";
-    description = "libjaylink is a shared library written in C to access SEGGER J-Link and compatible devices";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ felixsinger ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libjcat/default.nix b/pkgs/development/libraries/libjcat/default.nix
index 33fb21237e411..79a419451de22 100644
--- a/pkgs/development/libraries/libjcat/default.nix
+++ b/pkgs/development/libraries/libjcat/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
     mainProgram = "jcat-tool";
     homepage = "https://github.com/hughsie/libjcat";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libjodycode/default.nix b/pkgs/development/libraries/libjodycode/default.nix
index 2a99ed5feca3c..28a564c9bc913 100644
--- a/pkgs/development/libraries/libjodycode/default.nix
+++ b/pkgs/development/libraries/libjodycode/default.nix
@@ -1,29 +1,42 @@
-{ lib
-, stdenv
-, fetchFromGitea
+{
+  lib,
+  stdenv,
+  fetchFromGitea,
+  jdupes,
+  fixDarwinDylibNames,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libjodycode";
-  version = "3.1";
+  version = "3.1.1";
 
-  outputs = [ "out" "man" "dev" ];
+  outputs = [
+    "out"
+    "man"
+    "dev"
+  ];
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "jbruchon";
     repo = "libjodycode";
-    rev = "v${version}";
-    hash = "sha256-uhWQh5YwLwYRm34nY5HvcEepqlTSDt9s3PSoD403kQM=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-sVEa2gNvgRJK1Ycmv4inbViTBPQFjzcZ8XHlAdsNzOk=";
   };
 
+  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
+
   env.PREFIX = placeholder "out";
 
-  meta = with lib; {
+  passthru.tests = {
+    inherit jdupes;
+  };
+
+  meta = {
     description = "Shared code used by several utilities written by Jody Bruchon";
-    homepage = "https://github.com/jbruchon/libjodycode";
-    changelog = "https://github.com/jbruchon/libjodycode/blob/${src.rev}/CHANGES.txt";
-    license = licenses.mit;
-    maintainers = with maintainers; [ pbsds ];
+    homepage = "https://codeberg.org/jbruchon/libjodycode";
+    changelog = "https://codeberg.org/jbruchon/libjodycode/src/branch/master/CHANGES.txt";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ pbsds ];
   };
-}
+})
diff --git a/pkgs/development/libraries/libjpeg/default.nix b/pkgs/development/libraries/libjpeg/default.nix
index 6b1c80c6db2a3..ce73a59553546 100644
--- a/pkgs/development/libraries/libjpeg/default.nix
+++ b/pkgs/development/libraries/libjpeg/default.nix
@@ -1,6 +1,9 @@
-{ lib, stdenv, fetchurl
-, testers
-, static ? false
+{
+  lib,
+  stdenv,
+  fetchurl,
+  testers,
+  static ? false,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -9,21 +12,26 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = "http://www.ijg.org/files/jpegsrc.v${finalAttrs.version}.tar.gz";
-    sha256 = "sha256-BHBcEQyyRpyqeftx+6PXv4NJFHBulkGkWJSFwfgyVls=";
+    hash = "sha256-BHBcEQyyRpyqeftx+6PXv4NJFHBulkGkWJSFwfgyVls=";
   };
 
   configureFlags = lib.optional static "--enable-static --disable-shared";
 
-  outputs = [ "bin" "dev" "out" "man" ];
+  outputs = [
+    "bin"
+    "dev"
+    "out"
+    "man"
+  ];
 
   passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
 
-  meta = with lib; {
+  meta = {
     homepage = "https://www.ijg.org/";
     description = "Library that implements the JPEG image file format";
-    maintainers = with maintainers; [ ];
-    license = licenses.free;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    license = lib.licenses.free;
     pkgConfigModules = [ "libjpeg" ];
-    platforms = platforms.unix;
+    platforms = lib.platforms.unix;
   };
 })
diff --git a/pkgs/development/libraries/libjson-rpc-cpp/default.nix b/pkgs/development/libraries/libjson-rpc-cpp/default.nix
index 4e97ff2f4d5d5..f132a66560be4 100644
--- a/pkgs/development/libraries/libjson-rpc-cpp/default.nix
+++ b/pkgs/development/libraries/libjson-rpc-cpp/default.nix
@@ -1,47 +1,22 @@
-{ lib, stdenv
-, fetchFromGitHub
-, fetchpatch
-, pkg-config
-, cmake
-, argtable
-, catch2
-, curl
-, doxygen
-, hiredis
-, jsoncpp
-, libmicrohttpd
-}:
+{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, argtable, catch2
+, curl, doxygen, hiredis, jsoncpp, libmicrohttpd }:
 
 stdenv.mkDerivation rec {
   pname = "libjson-rpc-cpp";
-  version = "1.3.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "cinemast";
     repo = "libjson-rpc-cpp";
-    sha256 = "sha256-EAakiqlfMprwLjloDekOssaB/EnAmn5njcwHGZtYs9w=";
+    sha256 = "sha256-YCCZN4y88AixQeo24pk6YHfSCsJz8jJ97Dg40KM08cQ=";
     rev = "v${version}";
   };
 
   env.NIX_CFLAGS_COMPILE = "-I${catch2}/include/catch2";
 
-  patches = [
-    (fetchpatch {
-      name = "int-to-MHD_Result.patch";
-      url = "https://patch-diff.githubusercontent.com/raw/cinemast/libjson-rpc-cpp/pull/299.patch";
-      sha256 = "sha256-hiey6etzbOxhMElTMX7offKbey7c2OO/UWeN03k0AaM=";
-    })
-  ];
-
   nativeBuildInputs = [ pkg-config cmake doxygen ];
-  buildInputs = [
-    argtable
-    catch2
-    curl
-    hiredis
-    jsoncpp
-    libmicrohttpd
-  ];
+
+  buildInputs = [ argtable catch2 curl hiredis jsoncpp libmicrohttpd ];
 
   postPatch = ''
     for f in cmake/FindArgtable.cmake \
@@ -71,7 +46,9 @@ stdenv.mkDerivation rec {
   preInstall = ''
     function fixRunPath {
       p=$(patchelf --print-rpath $1)
-      q="$p:${lib.makeLibraryPath [ jsoncpp argtable libmicrohttpd curl ]}:$out/lib"
+      q="$p:${
+        lib.makeLibraryPath [ jsoncpp argtable libmicrohttpd curl ]
+      }:$out/lib"
       patchelf --set-rpath $q $1
     }
 
@@ -98,5 +75,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/cinemast/libjson-rpc-cpp";
     license = licenses.mit;
     platforms = platforms.linux;
+    sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
+    maintainers = with maintainers; [ robertrichter ];
   };
 }
diff --git a/pkgs/development/libraries/libjwt/default.nix b/pkgs/development/libraries/libjwt/default.nix
index 5643efb7079f7..724e464cdddaa 100644
--- a/pkgs/development/libraries/libjwt/default.nix
+++ b/pkgs/development/libraries/libjwt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libjwt";
-  version = "1.17.1";
+  version = "1.17.2";
 
   src = fetchFromGitHub {
     owner = "benmcollins";
     repo = "libjwt";
     rev = "v${version}";
-    sha256 = "sha256-yMnk4gfUa5c6Inppz9I1h6it41nuJ4By3eDO0YrdB2Y=";
+    sha256 = "sha256-y7QX6P0EScY9MMdbwc8nDUKCxtNQCqjh9wlbxVuT6lA=";
   };
 
   buildInputs = [ jansson openssl ];
diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix
index 1b0888348c594..4ae2657de9143 100644
--- a/pkgs/development/libraries/libjxl/default.nix
+++ b/pkgs/development/libraries/libjxl/default.nix
@@ -27,7 +27,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "libjxl";
-  version = "0.10.2";
+  version = "0.10.3";
 
   outputs = [ "out" "dev" ];
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     owner = "libjxl";
     repo = "libjxl";
     rev = "v${version}";
-    hash = "sha256-Ip/5fbzt6OfIrHJajnxEe14ppvX1hJ1FSJUBEE/h5YQ=";
+    hash = "sha256-zk/fI1C26K5WC9QBfzS6MqPT9PiR4wmWURjOOIiNsg4=";
     # There are various submodules in `third_party/`.
     fetchSubmodules = true;
   };
diff --git a/pkgs/development/libraries/libkrun/default.nix b/pkgs/development/libraries/libkrun/default.nix
index 9549edc2caebf..222d8320026d3 100644
--- a/pkgs/development/libraries/libkrun/default.nix
+++ b/pkgs/development/libraries/libkrun/default.nix
@@ -6,54 +6,72 @@
 , pkg-config
 , glibc
 , openssl
+, libepoxy
+, libdrm
+, pipewire
+, virglrenderer
 , libkrunfw
+, llvmPackages
 , rustc
+, withGpu ? false
+, withSound ? false
+, withNet ? false
 , sevVariant ? false
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libkrun";
-  version = "1.9.2";
+  version = "1.9.5";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "libkrun";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-R8JofaoqEM6IL4mr10kOWH0GfqwuyG2qkFjGR1+0fXw=";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-fVL49g71eyfYyeXI4B1qRNM90fBKjHeq0I4poz1pdME=";
   };
 
+  outputs = [ "out" "dev" ];
+
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit pname version src;
-    hash = "sha256-gPWTFl5YrlWDBXyksc9TidOzQf42bSJ05pdqtErk844=";
+    inherit (finalAttrs) src;
+    hash = "sha256-MW4/iB2NsCj0s9Q/h/PoCIIaDfZ/iqw+FGrsJmVR0lw=";
   };
 
   nativeBuildInputs = [
+    llvmPackages.clang
     rustPlatform.cargoSetupHook
     cargo
     rustc
-  ] ++ lib.optionals sevVariant [
-    pkg-config
-  ];
+  ] ++ lib.optional (sevVariant || withGpu) pkg-config;
 
   buildInputs = [
     (libkrunfw.override { inherit sevVariant; })
     glibc
     glibc.static
-  ] ++ lib.optionals sevVariant [
-    openssl
-  ];
+  ] ++ lib.optionals withGpu [ libepoxy libdrm virglrenderer ]
+    ++ lib.optional withSound pipewire
+    ++ lib.optional sevVariant openssl;
+
+  env.LIBCLANG_PATH = "${llvmPackages.clang-unwrapped.lib}/lib/libclang.so";
 
   makeFlags = [
     "PREFIX=${placeholder "out"}"
-  ] ++ lib.optionals sevVariant [
-    "SEV=1"
-  ];
+  ] ++ lib.optional withGpu "GPU=1"
+    ++ lib.optional withSound "SND=1"
+    ++ lib.optional withNet "NET=1"
+    ++ lib.optional sevVariant "SEV=1";
+
+  postInstall = ''
+    mkdir -p $dev/lib/pkgconfig
+    mv $out/lib64/pkgconfig $dev/lib/pkgconfig
+    mv $out/include $dev/include
+  '';
 
   meta = with lib; {
     description = "Dynamic library providing Virtualization-based process isolation capabilities";
     homepage = "https://github.com/containers/libkrun";
     license = licenses.asl20;
-    maintainers = with maintainers; [ nickcao ];
+    maintainers = with maintainers; [ nickcao RossComputerGuy ];
     platforms = libkrunfw.meta.platforms;
   };
-}
+})
diff --git a/pkgs/development/libraries/libkrunfw/default.nix b/pkgs/development/libraries/libkrunfw/default.nix
index 0485c82ffb41e..f0341685b5e45 100644
--- a/pkgs/development/libraries/libkrunfw/default.nix
+++ b/pkgs/development/libraries/libkrunfw/default.nix
@@ -5,25 +5,27 @@
 , flex
 , bison
 , bc
+, cpio
+, perl
 , elfutils
 , python3
 , sevVariant ? false
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libkrunfw";
-  version = "4.0.0";
+  version = "4.4.1";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "libkrunfw";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-9oVl4mlJE7QHeehG86pbh7KdShZNUGwlnO75k/F/PQ0=";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-rxMklV/pu/muz/7m1clEs+BItXid/jMt6j/R/yHBKHI=";
   };
 
   kernelSrc = fetchurl {
-    url = "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.4.7.tar.xz";
-    hash = "sha256-3hQ8th3Kp1bAX1b/NRRDFtgQYVgZUYoz40dU8GTEp9g=";
+    url = "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.52.tar.xz";
+    hash = "sha256-FZGrNIOZ1KpTEhFYUlBWppyM8P4OkJNbAJXppY43tLg=";
   };
 
   postPatch = ''
@@ -35,6 +37,8 @@ stdenv.mkDerivation rec {
     flex
     bison
     bc
+    cpio
+    perl
     python3
     python3.pkgs.pyelftools
   ];
@@ -49,13 +53,16 @@ stdenv.mkDerivation rec {
     "SEV=1"
   ];
 
+  # Fixes https://github.com/containers/libkrunfw/issues/55
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.targetPlatform.isAarch64 "-march=armv8-a+crypto";
+
   enableParallelBuilding = true;
 
   meta = with lib; {
     description = "Dynamic library bundling the guest payload consumed by libkrun";
     homepage = "https://github.com/containers/libkrunfw";
     license = with licenses; [ lgpl2Only lgpl21Only ];
-    maintainers = with maintainers; [ nickcao ];
-    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ nickcao RossComputerGuy ];
+    platforms = [ "x86_64-linux" ] ++ lib.optionals (!sevVariant) [ "aarch64-linux" ];
   };
-}
+})
diff --git a/pkgs/development/libraries/libks/default.nix b/pkgs/development/libraries/libks/default.nix
index 520c8568ebc17..cc6311f024ace 100644
--- a/pkgs/development/libraries/libks/default.nix
+++ b/pkgs/development/libraries/libks/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libks";
-  version = "2.0.5";
+  version = "2.0.6";
 
   src = fetchFromGitHub {
     owner = "signalwire";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-cSBtNOJfau+7wQ5iUs4hnqSMoo8XYN9opwPfox2ke+E=";
+    sha256 = "sha256-zKL+ukAdKiCC4wh55hnZpebFraIdKWDFsRfhVzhUNj0=";
   };
 
   patches = [
@@ -37,8 +37,8 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ openssl ]
-    ++ lib.optional stdenv.isLinux libuuid
-    ++ lib.optional stdenv.isDarwin libossp_uuid;
+    ++ lib.optional stdenv.hostPlatform.isLinux libuuid
+    ++ lib.optional stdenv.hostPlatform.isDarwin libossp_uuid;
 
   passthru = {
     tests.freeswitch = freeswitch;
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "Foundational support for signalwire C products";
     homepage = "https://github.com/signalwire/libks";
     maintainers = with lib.maintainers; [ misuzu ];
diff --git a/pkgs/development/libraries/libksba/default.nix b/pkgs/development/libraries/libksba/default.nix
index d33de73e40914..5eb07184c651f 100644
--- a/pkgs/development/libraries/libksba/default.nix
+++ b/pkgs/development/libraries/libksba/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libksba";
-  version = "1.6.6";
+  version = "1.6.7";
 
   src = fetchurl {
     url = "mirror://gnupg/libksba/libksba-${version}.tar.bz2";
-    hash = "sha256-XewDPSEVWTOIOMDElXxz39w+6G9zl31ieWQMnNCM5qQ=";
+    hash = "sha256-z3JRC467TrZpPu92V0nYNnegPHkpGjEQQKW/15uqt2M=";
   };
 
   outputs = [ "out" "dev" "info" ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     description = "CMS and X.509 access library";
     mainProgram = "ksba-config";
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     license = licenses.lgpl3;
   };
 }
diff --git a/pkgs/development/libraries/libksi/default.nix b/pkgs/development/libraries/libksi/default.nix
index 634e52b97ab60..3698be42d5f62 100644
--- a/pkgs/development/libraries/libksi/default.nix
+++ b/pkgs/development/libraries/libksi/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libksi";
-  version = "3.21.3075";
+  version = "3.21.3087";
 
   src = fetchFromGitHub {
     owner = "Guardtime";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-JEdjy91+8xJPNzjkumadT05SxcvtM551+SjLN1SQcAU=";
+    sha256 = "sha256-zEWxJpv0MeGUq/xkM26tDoauFyw53enGyWVhlX0jlYI=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/development/libraries/liblastfm/default.nix b/pkgs/development/libraries/liblastfm/default.nix
index 7dcc3b0d0cc06..060839326b157 100644
--- a/pkgs/development/libraries/liblastfm/default.nix
+++ b/pkgs/development/libraries/liblastfm/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config which cmake ];
   buildInputs = [ fftwSinglePrec libsamplerate qtbase ]
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.SystemConfiguration;
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.SystemConfiguration;
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "11") "-std=c++11";
 
diff --git a/pkgs/development/libraries/liblc3/default.nix b/pkgs/development/libraries/liblc3/default.nix
index 3e1be4ba272ec..ff04d23cb0c63 100644
--- a/pkgs/development/libraries/liblc3/default.nix
+++ b/pkgs/development/libraries/liblc3/default.nix
@@ -27,9 +27,6 @@ stdenv.mkDerivation {
     ninja
   ];
 
-  # LTO does not work on Darwin: https://github.com/NixOS/nixpkgs/issues/19098
-  mesonFlags = lib.optionals stdenv.isDarwin [ "-Db_lto=false" ];
-
   meta = with lib; {
     description = "LC3 (Low Complexity Communication Codec) is an efficient low latency audio codec";
     homepage = "https://github.com/google/liblc3";
diff --git a/pkgs/development/libraries/liblcf/default.nix b/pkgs/development/libraries/liblcf/default.nix
index b91b6ea709adb..07f24f4d5a06a 100644
--- a/pkgs/development/libraries/liblcf/default.nix
+++ b/pkgs/development/libraries/liblcf/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     description = "Library to handle RPG Maker 2000/2003 and EasyRPG projects";
     homepage = "https://github.com/EasyRPG/liblcf";
     license = licenses.mit;
-    maintainers = with maintainers; [ yana ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libliftoff/default.nix b/pkgs/development/libraries/libliftoff/default.nix
index 8d695b2b9afd8..87a2458bdc8ce 100644
--- a/pkgs/development/libraries/libliftoff/default.nix
+++ b/pkgs/development/libraries/libliftoff/default.nix
@@ -1,9 +1,17 @@
-{ callPackage, fetchFromGitLab, ... }:
+{
+  callPackage,
+  fetchFromGitLab,
+  fetchpatch,
+}:
 let
   mkVariant =
-    version: hash:
+    {
+      version,
+      hash,
+      patches ? [ ],
+    }:
     callPackage ./generic.nix {
-      inherit version;
+      inherit version patches;
       src = fetchFromGitLab {
         domain = "gitlab.freedesktop.org";
         owner = "emersion";
@@ -14,6 +22,21 @@ let
     };
 in
 {
-  libliftoff_0_4 = mkVariant "0.4.1" "sha256-NPwhsd6IOQ0XxNQQNdaaM4kmwoLftokV86WYhoa5csY=";
-  libliftoff_0_5 = mkVariant "0.5.0" "sha256-PcQY8OXPqfn8C30+GAYh0Z916ba5pik8U0fVpZtFb5g=";
+  libliftoff_0_4 = mkVariant {
+    version = "0.4.1";
+    hash = "sha256-NPwhsd6IOQ0XxNQQNdaaM4kmwoLftokV86WYhoa5csY=";
+    patches = [
+      # Pull gcc-14 fix:
+      #   https://gitlab.freedesktop.org/emersion/libliftoff/-/merge_requests/78
+      (fetchpatch {
+        name = "libliftoff-gcc-14-calloc.patch";
+        url = "https://gitlab.freedesktop.org/emersion/libliftoff/-/commit/29a06add8ef184f85e37ff8abdc34fbaa2f4ee1e.patch";
+        hash = "sha256-Y8x1RK3o/I9bs/ZOLeC4t9AIK78l0QnlBWHhiVC+sz8=";
+      })
+    ];
+  };
+  libliftoff_0_5 = mkVariant {
+    version = "0.5.0";
+    hash = "sha256-PcQY8OXPqfn8C30+GAYh0Z916ba5pik8U0fVpZtFb5g=";
+  };
 }
diff --git a/pkgs/development/libraries/libliftoff/generic.nix b/pkgs/development/libraries/libliftoff/generic.nix
index 0f347a6a9b00e..5e846cd6eb2b4 100644
--- a/pkgs/development/libraries/libliftoff/generic.nix
+++ b/pkgs/development/libraries/libliftoff/generic.nix
@@ -3,11 +3,12 @@
 , libdrm
 , version
 , src
+, patches
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libliftoff";
-  inherit version src;
+  inherit version src patches;
 
   nativeBuildInputs = [ meson pkg-config ninja ];
 
diff --git a/pkgs/development/libraries/liblinear/default.nix b/pkgs/development/libraries/liblinear/default.nix
index 449792a07e826..31da8305be7ae 100644
--- a/pkgs/development/libraries/liblinear/default.nix
+++ b/pkgs/development/libraries/liblinear/default.nix
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
   buildFlags = [ "lib" "predict" "train" ];
 
   installPhase = ''
-    ${if stdenv.isDarwin then ''
+    ${if stdenv.hostPlatform.isDarwin then ''
       install -D liblinear.so.${soVersion} $out/lib/liblinear.${soVersion}.dylib
       ln -s $out/lib/liblinear.${soVersion}.dylib $out/lib/liblinear.dylib
     '' else ''
diff --git a/pkgs/development/libraries/liblinphone/default.nix b/pkgs/development/libraries/liblinphone/default.nix
index c4b792e673fc5..a4a1e03e93ef0 100644
--- a/pkgs/development/libraries/liblinphone/default.nix
+++ b/pkgs/development/libraries/liblinphone/default.nix
@@ -59,7 +59,6 @@ stdenv.mkDerivation rec {
 
     jsoncpp
     libxml2
-    (python3.withPackages (ps: [ ps.pystache ps.six ]))
     sqlite
     xercesc
     zxing-cpp
@@ -68,6 +67,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     doxygen
+    (python3.withPackages (ps: [ ps.pystache ps.six ]))
   ];
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/liblouis/default.nix b/pkgs/development/libraries/liblouis/default.nix
index 8d2a4044458e5..f0d0cc09e9c14 100644
--- a/pkgs/development/libraries/liblouis/default.nix
+++ b/pkgs/development/libraries/liblouis/default.nix
@@ -13,7 +13,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "liblouis";
-  version = "3.30.0";
+  version = "3.31.0";
 
   outputs = [ "out" "dev" "info" "doc" ]
     # configure: WARNING: cannot generate manual pages while cross compiling
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "liblouis";
     repo = "liblouis";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-VeDthGET1PcKXzXkztJCcN6yXgf51bcIyawuyUurwBs=";
+    hash = "sha256-0OnIvRwoL7GsuQPXJixA0DRf/tf8CNqwe9lHSahQbwk=";
   };
 
   strictDeps = true;
@@ -32,6 +32,10 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     gettext
     python3
+    python3.pkgs.build
+    python3.pkgs.installer
+    python3.pkgs.setuptools
+    python3.pkgs.wheel
     # Docs, man, info
     texinfo
     help2man
@@ -58,7 +62,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   postInstall = ''
     pushd python
-    python setup.py install --prefix="$out" --optimize=1
+    python -m build --no-isolation --outdir dist/ --wheel
+    python -m installer --prefix $out dist/*.whl
     popd
   '';
 
diff --git a/pkgs/development/libraries/liblqr-1/default.nix b/pkgs/development/libraries/liblqr-1/default.nix
index 6b8c2ebeaa948..f2f6497b676b9 100644
--- a/pkgs/development/libraries/liblqr-1/default.nix
+++ b/pkgs/development/libraries/liblqr-1/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = lib.optionals stdenv.isDarwin [ Carbon AppKit ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Carbon AppKit ];
   propagatedBuildInputs = [ glib ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/liblscp/default.nix b/pkgs/development/libraries/liblscp/default.nix
index 993c090299bd1..97c48cfa2ca21 100644
--- a/pkgs/development/libraries/liblscp/default.nix
+++ b/pkgs/development/libraries/liblscp/default.nix
@@ -1,17 +1,30 @@
-{ lib, stdenv, fetchurl, autoconf, automake, libtool, pkg-config }:
+{
+  lib,
+  stdenv,
+  fetchurl,
+  cmake,
+  pkg-config,
+}:
 
 stdenv.mkDerivation rec {
   pname = "liblscp";
-  version = "0.9.4";
+  version = "1.0.0";
 
   src = fetchurl {
     url = "https://download.linuxsampler.org/packages/${pname}-${version}.tar.gz";
-    sha256 = "sha256-8+3qHgIv32wfNHHggXID1W8M7pTqji4bHNGob3DTkho=";
+    sha256 = "sha256-ZaPfB3Veg1YCBHieoK9fFqL0tB4PiNsY81oJmn2rd/I=";
   };
 
-  nativeBuildInputs = [ autoconf automake libtool pkg-config ];
+  postPatch = ''
+    # fix prefix to only appear once
+    substituteInPlace CMakeLists.txt \
+      --replace-fail '"''${CONFIG_PREFIX}/' '"'
+  '';
 
-  preConfigure = "make -f Makefile.git";
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
 
   enableParallelBuilding = true;
 
@@ -19,7 +32,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.linuxsampler.org";
     description = "LinuxSampler Control Protocol (LSCP) wrapper library";
     license = licenses.gpl2;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/liblxi/default.nix b/pkgs/development/libraries/liblxi/default.nix
index 24c454d4ee7e8..887c751ad46be 100644
--- a/pkgs/development/libraries/liblxi/default.nix
+++ b/pkgs/development/libraries/liblxi/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ meson ninja cmake pkg-config rpcsvc-proto ];
 
-  buildInputs = lib.optionals (!stdenv.isDarwin) [
+  buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libtirpc
     avahi
   ] ++ [
diff --git a/pkgs/development/libraries/libmanette/default.nix b/pkgs/development/libraries/libmanette/default.nix
index cd30b61f1c1fd..594ba202a6e1c 100644
--- a/pkgs/development/libraries/libmanette/default.nix
+++ b/pkgs/development/libraries/libmanette/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libmanette";
-  version = "0.2.7";
+  version = "0.2.9";
 
   outputs = [ "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-zd1cAqExBywZxs3m8sss1X6ufay1DRTDN+/ZgLqlGlE=";
+    hash = "sha256-KTZr5UUvYKdMZfxk/+LXTt3U5uaCTCzvpWekO9kraI8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libmatroska/default.nix b/pkgs/development/libraries/libmatroska/default.nix
deleted file mode 100644
index 8bbd6d9d9df03..0000000000000
--- a/pkgs/development/libraries/libmatroska/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libebml }:
-
-stdenv.mkDerivation rec {
-  pname = "libmatroska";
-  version = "1.7.1";
-
-  src = fetchFromGitHub {
-    owner  = "Matroska-Org";
-    repo   = "libmatroska";
-    rev    = "release-${version}";
-    sha256 = "sha256-hfu3Q1lIyMlWFWUM2Pu70Hie0rlQmua7Kq8kSIWnfHE=";
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ];
-
-  buildInputs = [ libebml ];
-
-  cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=YES"
-    "-DCMAKE_INSTALL_PREFIX="
-  ];
-
-  meta = with lib; {
-    description = "Library to parse Matroska files";
-    homepage = "https://matroska.org/";
-    license = licenses.lgpl21;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libmaxminddb/default.nix b/pkgs/development/libraries/libmaxminddb/default.nix
index 1651d36710e61..9a944abbb1ecb 100644
--- a/pkgs/development/libraries/libmaxminddb/default.nix
+++ b/pkgs/development/libraries/libmaxminddb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmaxminddb";
-  version = "1.9.1";
+  version = "1.10.0";
 
   src = fetchurl {
     url = meta.homepage + "/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-qAaCqJ2RX99gs10xYjL7BOvzb/8n/am9Of6KONPNPxI=";
+    sha256 = "sha256-Xm23LfQjriJb/oiXBp9t70D6qJMfRWuZ15uLTWZMZnE=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libmcrypt/default.nix b/pkgs/development/libraries/libmcrypt/default.nix
index 672ba730be12b..3ed85fad550d8 100644
--- a/pkgs/development/libraries/libmcrypt/default.nix
+++ b/pkgs/development/libraries/libmcrypt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, darwin, disablePosixThreads ? false }:
+{ lib, stdenv, fetchurl, cctools, disablePosixThreads ? false }:
 
 stdenv.mkDerivation rec {
   pname = "libmcrypt";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0gipgb939vy9m66d3k8il98rvvwczyaw2ixr8yn6icds9c3nrsz4";
   };
 
-  buildInputs = lib.optional stdenv.isDarwin darwin.cctools;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin cctools;
 
   configureFlags = lib.optionals disablePosixThreads [ "--disable-posix-threads" ]
     ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
diff --git a/pkgs/development/libraries/libmemcached/default.nix b/pkgs/development/libraries/libmemcached/default.nix
index 07fe854c777c3..053cd91be2d98 100644
--- a/pkgs/development/libraries/libmemcached/default.nix
+++ b/pkgs/development/libraries/libmemcached/default.nix
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
   # https://bugs.launchpad.net/libmemcached/+bug/1281907
   # Fix building on macOS (patch from Homebrew)
   # https://bugs.launchpad.net/libmemcached/+bug/1245562
-  patches = lib.optional stdenv.isLinux ./libmemcached-fix-linking-with-libpthread.patch
-    ++ lib.optional stdenv.isDarwin (fetchpatch {
+  patches = lib.optional stdenv.hostPlatform.isLinux ./libmemcached-fix-linking-with-libpthread.patch
+    ++ lib.optional stdenv.hostPlatform.isDarwin (fetchpatch {
       url = "https://raw.githubusercontent.com/Homebrew/homebrew/bfd4a0a4626b61c2511fdf573bcbbc6bbe86340e/Library/Formula/libmemcached.rb";
       sha256 = "1gjf3vd7hiyzxjvlg2zfc3y2j0lyr6nhbws4xb5dmin3csyp8qb8";
     })
diff --git a/pkgs/development/libraries/libmesode/default.nix b/pkgs/development/libraries/libmesode/default.nix
index 128975246a8ae..6ac53d3d5d3d6 100644
--- a/pkgs/development/libraries/libmesode/default.nix
+++ b/pkgs/development/libraries/libmesode/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/profanity-im/libmesode/";
     license = with licenses; [ gpl3Only mit];
     platforms = platforms.unix;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     maintainers = with maintainers; [ devhell ];
   };
 }
diff --git a/pkgs/development/libraries/libmicrohttpd/1.0.nix b/pkgs/development/libraries/libmicrohttpd/1.0.nix
new file mode 100644
index 0000000000000..16a4f2ed884e4
--- /dev/null
+++ b/pkgs/development/libraries/libmicrohttpd/1.0.nix
@@ -0,0 +1,10 @@
+{ callPackage, fetchurl }:
+
+callPackage ./generic.nix (rec {
+  version = "1.0.1";
+
+  src = fetchurl {
+    url = "mirror://gnu/libmicrohttpd/libmicrohttpd-${version}.tar.gz";
+    hash = "sha256-qJ4J/JtN403eGfT8tPqqHOECmbmQjbETK7+h3keIK5Q=";
+  };
+})
diff --git a/pkgs/development/libraries/libmicrohttpd/generic.nix b/pkgs/development/libraries/libmicrohttpd/generic.nix
index 0af066c71238a..45736cea1e951 100644
--- a/pkgs/development/libraries/libmicrohttpd/generic.nix
+++ b/pkgs/development/libraries/libmicrohttpd/generic.nix
@@ -1,10 +1,6 @@
 { lib, stdenv, libgcrypt, curl, gnutls, pkg-config, libiconv, libintl, version, src, meta ? {} }:
 
-let
-  meta_ = meta;
-in
-
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libmicrohttpd";
   inherit version src;
 
@@ -32,7 +28,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://www.gnu.org/software/libmicrohttpd/";
 
-    maintainers = with maintainers; [ eelco vrthra fpletz ];
+    maintainers = with maintainers; [ fpletz ];
     platforms = platforms.unix;
-  } // meta_;
-}
+  } // meta;
+})
diff --git a/pkgs/development/libraries/libmikmod/default.nix b/pkgs/development/libraries/libmikmod/default.nix
index f3122d8ab2105..6e3f7eee3c578 100644
--- a/pkgs/development/libraries/libmikmod/default.nix
+++ b/pkgs/development/libraries/libmikmod/default.nix
@@ -13,14 +13,14 @@ in stdenv.mkDerivation rec {
   };
 
   buildInputs = [ texinfo ]
-    ++ optional stdenv.isLinux alsa-lib
-    ++ optional stdenv.isDarwin CoreAudio;
+    ++ optional stdenv.hostPlatform.isLinux alsa-lib
+    ++ optional stdenv.hostPlatform.isDarwin CoreAudio;
   propagatedBuildInputs =
-    optional stdenv.isLinux libpulseaudio;
+    optional stdenv.hostPlatform.isLinux libpulseaudio;
 
   outputs = [ "out" "dev" "man" ];
 
-  NIX_LDFLAGS = optionalString stdenv.isLinux "-lasound";
+  NIX_LDFLAGS = optionalString stdenv.hostPlatform.isLinux "-lasound";
 
   postInstall = ''
     moveToOutput bin/libmikmod-config "$dev"
diff --git a/pkgs/development/libraries/libmilter/default.nix b/pkgs/development/libraries/libmilter/default.nix
index a06f3d4deca1c..10a0986936797 100644
--- a/pkgs/development/libraries/libmilter/default.nix
+++ b/pkgs/development/libraries/libmilter/default.nix
@@ -34,9 +34,9 @@ stdenv.mkDerivation rec {
 
   patches = [ ./install.patch ./sharedlib.patch ./darwin.patch ];
 
-  nativeBuildInputs = [ m4 ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = [ m4 ] ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     fixDarwinDylibNames $out/lib/libmilter.*.1
   '';
 
diff --git a/pkgs/development/libraries/libminc/default.nix b/pkgs/development/libraries/libminc/default.nix
index 189d2b12e5190..b270b8eb56689 100644
--- a/pkgs/development/libraries/libminc/default.nix
+++ b/pkgs/development/libraries/libminc/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-DLIBMINC_USE_SYSTEM_NIFTI=ON"
   ];
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
     # -j1: see https://github.com/BIC-MNI/libminc/issues/110
   checkPhase = ''
     ctest -j1 --output-on-failure
diff --git a/pkgs/development/libraries/libmodbus/default.nix b/pkgs/development/libraries/libmodbus/default.nix
index 72fdbc4c02195..e76b528395ef3 100644
--- a/pkgs/development/libraries/libmodbus/default.nix
+++ b/pkgs/development/libraries/libmodbus/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     description = "Library to send/receive data according to the Modbus protocol";
     homepage = "https://libmodbus.org/";
     license = licenses.lgpl21Plus;
-    platforms = platforms.unix;
+    platforms = with platforms; unix ++ windows;
     maintainers = [ maintainers.bjornfor ];
   };
 }
diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix
index 7011f30bcf9d5..0769cf4b1c2ba 100644
--- a/pkgs/development/libraries/libmodulemd/default.nix
+++ b/pkgs/development/libraries/libmodulemd/default.nix
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
     mainProgram = "modulemd-validator";
     homepage = "https://github.com/fedora-modularity/libmodulemd";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/libmongocrypt/default.nix b/pkgs/development/libraries/libmongocrypt/default.nix
index f45d41fed6283..0c887527307fb 100644
--- a/pkgs/development/libraries/libmongocrypt/default.nix
+++ b/pkgs/development/libraries/libmongocrypt/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     mongoc
     openssl
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk_11_0.frameworks.Security
   ];
 
diff --git a/pkgs/development/libraries/libmpeg2/default.nix b/pkgs/development/libraries/libmpeg2/default.nix
index 289d5beac8d74..13fce963738fb 100644
--- a/pkgs/development/libraries/libmpeg2/default.nix
+++ b/pkgs/development/libraries/libmpeg2/default.nix
@@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
   };
 
   # Otherwise clang fails with 'duplicate symbol ___sputc'
-  buildFlags = lib.optional stdenv.isDarwin "CFLAGS=-std=gnu89";
+  buildFlags = lib.optional stdenv.hostPlatform.isDarwin "CFLAGS=-std=gnu89";
 
   meta = {
     homepage = "http://libmpeg2.sourceforge.net/";
     description = "Free library for decoding mpeg-2 and mpeg-1 video streams";
     license = lib.licenses.gpl2;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = with lib.platforms; unix;
   };
 }
diff --git a/pkgs/development/libraries/libmrss/default.nix b/pkgs/development/libraries/libmrss/default.nix
deleted file mode 100644
index 43d829b983421..0000000000000
--- a/pkgs/development/libraries/libmrss/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{lib, stdenv, fetchurl, curl, libnxml, pkg-config}:
-
-stdenv.mkDerivation rec {
-  pname = "libmrss";
-  version = "0.19.2";
-
-  src = fetchurl {
-    url = "https://www.autistici.org/bakunin/libmrss/libmrss-${version}.tar.gz";
-    sha256 = "02r1bgj8qlkn63xqfi5yq8y7wrilxcnkycaag8qskhg5ranic507";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  propagatedBuildInputs = [ curl libnxml ];
-
-  meta = {
-    homepage = "http://www.autistici.org/bakunin/libmrss/doc";
-    description = "C library for parsing, writing and creating RSS/ATOM files or streams";
-    license = lib.licenses.lgpl2;
-
-    platforms = lib.platforms.all;
-    maintainers = [ lib.maintainers.viric ];
-  };
-}
diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix
index ea61234333b81..320873c9792ce 100644
--- a/pkgs/development/libraries/libmtp/default.nix
+++ b/pkgs/development/libraries/libmtp/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   configurePlatforms = [ "build" "host" ];
 
-  makeFlags = lib.optionals (stdenv.isLinux && !stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
+  makeFlags = lib.optionals (stdenv.hostPlatform.isLinux && !stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
     "MTP_HOTPLUG=${buildPackages.libmtp}/bin/mtp-hotplug"
   ];
 
diff --git a/pkgs/development/libraries/libmx/default.nix b/pkgs/development/libraries/libmx/default.nix
index c178e152d2304..cdc4b4f077ad9 100644
--- a/pkgs/development/libraries/libmx/default.nix
+++ b/pkgs/development/libraries/libmx/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub
 , libtool, pkg-config, automake, autoconf, intltool
-, glib, gobject-introspection, gtk2, gtk-doc
+, gobject-introspection, gtk2, gtk-doc
 , clutter, clutter-gtk
 }:
 
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
         feature is the possibility setting style properties from a CSS format
         file.'';
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/development/libraries/libmypaint/default.nix b/pkgs/development/libraries/libmypaint/default.nix
index 655480f75a2ff..2e9f4bc2b8667 100644
--- a/pkgs/development/libraries/libmypaint/default.nix
+++ b/pkgs/development/libraries/libmypaint/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     homepage = "http://mypaint.org/";
     description = "Library for making brushstrokes which is used by MyPaint and other projects";
     license = licenses.isc;
-    maintainers = with maintainers; [ goibhniu jtojnar ];
+    maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
index a5a1983e615e0..21e648e5a9983 100644
--- a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
+++ b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmysqlconnectorcpp";
-  version = "8.3.0";
+  version = "9.0.0";
 
   src = fetchurl {
     url = "https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${version}-src.tar.gz";
-    hash = "sha256-oXvx+tErGrF/X2x3ZiifuHIA6RlFMjTD7BZk13NL6Pg=";
+    hash = "sha256-7XEbT3sf/fyadgSOGVr/KH4tFd3evgvKhRsJ4UFCKzA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libnatpmp/default.nix b/pkgs/development/libraries/libnatpmp/default.nix
index 49e89b97344bb..13128e81231ef 100644
--- a/pkgs/development/libraries/libnatpmp/default.nix
+++ b/pkgs/development/libraries/libnatpmp/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     "CC:=$(CC)"
   ];
 
-  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   postFixup = ''
     chmod +x $out/lib/*
diff --git a/pkgs/development/libraries/libnbd/default.nix b/pkgs/development/libraries/libnbd/default.nix
deleted file mode 100644
index c7e9e2b087e34..0000000000000
--- a/pkgs/development/libraries/libnbd/default.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-, bash-completion
-, pkg-config
-, perl
-, buildPythonBindings ? false, python3
-, libxml2
-, fuse
-, fuse3
-, gnutls
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libnbd";
-  version = "1.20.1";
-
-  src = fetchurl {
-    url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
-    hash = "sha256-AoTfX6Ov9Trj9a9i+K+NYCwxhQ9C5YYqx/15RBtgJYw=";
-  };
-
-  nativeBuildInputs = [
-    bash-completion
-    pkg-config
-    perl
-  ]
-    ++ lib.optionals buildPythonBindings [ python3 ];
-
-  buildInputs = [
-    fuse
-    fuse3
-    gnutls
-    libxml2
-  ];
-
-  configureFlags = lib.optionals buildPythonBindings [ "--with-python-installdir=${placeholder "out"}/${python3.sitePackages}" ];
-
-  installFlags = [ "bashcompdir=$(out)/share/bash-completion/completions" ];
-
-  postInstall = lib.optionalString buildPythonBindings ''
-    LIBNBD_PYTHON_METADATA='${placeholder "out"}/${python3.sitePackages}/nbd-${version}.dist-info/METADATA'
-    install -Dm644 -T ${./libnbd-metadata} $LIBNBD_PYTHON_METADATA
-    substituteAllInPlace $LIBNBD_PYTHON_METADATA
-  '';
-
-  meta = with lib; {
-    homepage = "https://gitlab.com/nbdkit/libnbd";
-    description = "Network Block Device client library in userspace";
-    longDescription = ''
-      NBD — Network Block Device — is a protocol for accessing Block Devices
-      (hard disks and disk-like things) over a Network.  This is the NBD client
-      library in userspace, a simple library for writing NBD clients.
-
-      The key features are:
-      - Synchronous API for ease of use.
-      - Asynchronous API for writing non-blocking, multithreaded clients. You
-        can mix both APIs freely.
-      - High performance.
-      - Minimal dependencies for the basic library.
-      - Well-documented, stable API.
-      - Bindings in several programming languages.
-      - Shell (nbdsh) for command line and scripting.
-    '';
-    license = with licenses; lgpl21Plus;
-    maintainers = with maintainers; [ AndersonTorres humancalico ];
-    platforms = with platforms; linux;
-  };
-}
-# TODO: package the 1.6-stable version too
-# TODO: git version needs ocaml
-# TODO: bindings for go and ocaml
diff --git a/pkgs/development/libraries/libnbd/libnbd-metadata b/pkgs/development/libraries/libnbd/libnbd-metadata
deleted file mode 100644
index 7d91ab88d2015..0000000000000
--- a/pkgs/development/libraries/libnbd/libnbd-metadata
+++ /dev/null
@@ -1,3 +0,0 @@
-Metadata-Version: 2.1
-Name: nbd
-Version: @version@
diff --git a/pkgs/development/libraries/libndctl/default.nix b/pkgs/development/libraries/libndctl/default.nix
index 6e82191e75587..d2ccec80a5700 100644
--- a/pkgs/development/libraries/libndctl/default.nix
+++ b/pkgs/development/libraries/libndctl/default.nix
@@ -1,50 +1,76 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook
-, asciidoc, pkg-config, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt
-, json_c, kmod, which, util-linux, udev, keyutils
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  meson,
+  ninja,
+  pkg-config,
+  asciidoctor,
+  iniparser,
+  json_c,
+  keyutils,
+  kmod,
+  udev,
+  util-linux,
 }:
 
 stdenv.mkDerivation rec {
   pname = "libndctl";
-  version = "71.1";
+  version = "79";
 
   src = fetchFromGitHub {
-    owner  = "pmem";
-    repo   = "ndctl";
-    rev    = "v${version}";
-    sha256 = "sha256-osux3DiKRh8ftHwyfFI+WSFx20+yJsg1nVx5nuoKJu4=";
+    owner = "pmem";
+    repo = "ndctl";
+    rev = "v${version}";
+    sha256 = "sha256-gG1Rz5AtDLzikGFr8A3l25ypd+VoLw2oWjszy9ogDLk=";
   };
 
-  outputs = [ "out" "lib" "man" "dev" ];
+  outputs = [
+    "out"
+    "man"
+    "dev"
+  ];
 
-  nativeBuildInputs =
-    [ autoreconfHook asciidoc pkg-config xmlto docbook_xml_dtd_45 docbook_xsl libxslt
-      which
-    ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    asciidoctor
+  ];
 
-  buildInputs =
-    [ json_c kmod util-linux udev keyutils
-    ];
+  buildInputs = [
+    iniparser
+    json_c
+    keyutils
+    kmod
+    udev
+    util-linux
+  ];
 
-  configureFlags =
-    [ "--without-bash"
-      "--without-systemd"
-      "--disable-asciidoctor" # depends on ruby 2.7, use asciidoc instead
-    ];
+  mesonFlags = [
+    (lib.mesonOption "rootprefix" "${placeholder "out"}")
+    (lib.mesonOption "sysconfdir" "${placeholder "out"}/etc/ndctl.conf.d")
+    (lib.mesonEnable "libtracefs" false)
+    # Use asciidoctor due to xmlto errors
+    (lib.mesonEnable "asciidoctor" true)
+    (lib.mesonEnable "systemd" false)
+    (lib.mesonOption "iniparserdir" "${iniparser}")
+  ];
 
-  patchPhase = ''
+  postPatch = ''
     patchShebangs test
 
-    substituteInPlace git-version --replace /bin/bash ${stdenv.shell}
-    substituteInPlace git-version-gen --replace /bin/sh ${stdenv.shell}
+    substituteInPlace git-version --replace-fail /bin/bash ${stdenv.shell}
+    substituteInPlace git-version-gen --replace-fail /bin/sh ${stdenv.shell}
 
     echo "m4_define([GIT_VERSION], [${version}])" > version.m4;
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Tools for managing the Linux Non-Volatile Memory Device sub-system";
-    homepage    = "https://github.com/pmem/ndctl";
-    license     = licenses.lgpl21;
-    maintainers = with maintainers; [ thoughtpolice ];
-    platforms   = platforms.linux;
+    homepage = "https://github.com/pmem/ndctl";
+    license = lib.licenses.lgpl21;
+    maintainers = with lib.maintainers; [ thoughtpolice ];
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libndp/default.nix b/pkgs/development/libraries/libndp/default.nix
index 953b1101e7096..17831d646cbcc 100644
--- a/pkgs/development/libraries/libndp/default.nix
+++ b/pkgs/development/libraries/libndp/default.nix
@@ -1,29 +1,25 @@
-{ lib, stdenv, fetchurl, fetchpatch, autoreconfHook }:
+{ lib, stdenv, fetchurl, autoreconfHook, gitUpdater }:
 
 stdenv.mkDerivation rec {
   pname = "libndp";
-  version = "1.8";
+  version = "1.9";
 
   src = fetchurl {
     url = "http://libndp.org/files/libndp-${version}.tar.gz";
-    sha256 = "sha256-iP+2buLrUn8Ub1wC9cy8OLqX0rDVfrRr+6SIghqwwCs=";
+    hash = "sha256-qKshTgHcOpthUnaQU5VjfzkSmMhNd2UfDL8LEILdLdQ=";
   };
 
-  patches = [
-    (fetchpatch {
-      # https://github.com/jpirko/libndp/issues/26
-      name = "CVE-2024-5564.patch";
-      url = "https://github.com/jpirko/libndp/commit/05e4ba7b0d126eea4c04387dcf40596059ee24af.patch";
-      hash = "sha256-O7AHjCqic7iUfMbKYLGgBAU+wdR9/MDWxBWJw+CFn/c=";
-    })
-  ];
-
   nativeBuildInputs = [ autoreconfHook ];
 
   configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "ac_cv_func_malloc_0_nonnull=yes"
   ];
 
+  passthru.updateScript = gitUpdater {
+    url = "https://github.com/jpirko/libndp.git";
+    rev-prefix = "v";
+  };
+
   meta = with lib; {
     homepage = "http://libndp.org/";
     description = "Library for Neighbor Discovery Protocol";
diff --git a/pkgs/development/libraries/libnfc/default.nix b/pkgs/development/libraries/libnfc/default.nix
index 88bc909ea0e6f..8fb983333c1cb 100644
--- a/pkgs/development/libraries/libnfc/default.nix
+++ b/pkgs/development/libraries/libnfc/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     "sysconfdir=/etc"
   ];
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-DLIBNFC_DRIVER_PN532_I2C=OFF"
     "-DLIBNFC_DRIVER_PN532_SPI=OFF"
   ];
diff --git a/pkgs/development/libraries/libnftnl/default.nix b/pkgs/development/libraries/libnftnl/default.nix
index 3fb02abfb5337..1da5bf5a6de5a 100644
--- a/pkgs/development/libraries/libnftnl/default.nix
+++ b/pkgs/development/libraries/libnftnl/default.nix
@@ -1,12 +1,12 @@
-{ lib, stdenv, fetchurl, pkg-config, libmnl }:
+{ lib, stdenv, fetchurl, pkg-config, libmnl, gitUpdater }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.6";
+  version = "1.2.7";
   pname = "libnftnl";
 
   src = fetchurl {
     url = "https://netfilter.org/projects/${pname}/files/${pname}-${version}.tar.xz";
-    hash = "sha256-zurqLNkhR9oZ8To1p/GkvCdn/4l+g45LR5z1S1nHd/Q=";
+    hash = "sha256-kSJ3T5aAk9XAus3dZ95IDzH6QHNAWn/AWKNLDzh67LM=";
   };
 
   configureFlags = lib.optional (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17") "LDFLAGS=-Wl,--undefined-version";
@@ -14,6 +14,13 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libmnl ];
 
+  enableParallelBuilding = true;
+
+  passthru.updateScript = gitUpdater {
+    url = "https://git.netfilter.org/libnftnl";
+    rev-prefix = "libnftnl-";
+  };
+
   meta = with lib; {
     description = "Userspace library providing a low-level netlink API to the in-kernel nf_tables subsystem";
     homepage = "https://netfilter.org/projects/libnftnl/";
diff --git a/pkgs/development/libraries/libngspice/default.nix b/pkgs/development/libraries/libngspice/default.nix
index eb6a057dcae35..0270050cd0012 100644
--- a/pkgs/development/libraries/libngspice/default.nix
+++ b/pkgs/development/libraries/libngspice/default.nix
@@ -7,15 +7,17 @@
 , withNgshared ? true
 , libXaw
 , libXext
+, llvmPackages
+, readline
 }:
 
 stdenv.mkDerivation rec {
   pname = "${lib.optionalString withNgshared "lib"}ngspice";
-  version = "42";
+  version = "43";
 
   src = fetchurl {
     url = "mirror://sourceforge/ngspice/ngspice-${version}.tar.gz";
-    hash = "sha256-c3/jhGqyMzolDfrfHtbr4YYK8dil/154A8dyzEJW5Qo=";
+    hash = "sha256-FN1qbwhTHyBRwTrmN5CkVwi9Q/PneIamqEiYwpexNpk=";
   };
 
   nativeBuildInputs = [
@@ -25,9 +27,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     fftw
+    readline
   ] ++ lib.optionals (!withNgshared) [
     libXaw
     libXext
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    llvmPackages.openmp
   ];
 
   configureFlags = lib.optionals withNgshared [
diff --git a/pkgs/development/libraries/libnxml/default.nix b/pkgs/development/libraries/libnxml/default.nix
deleted file mode 100644
index 6a0c52c9e99a9..0000000000000
--- a/pkgs/development/libraries/libnxml/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{lib, stdenv, fetchurl, curl}:
-
-stdenv.mkDerivation rec {
-  pname = "libnxml";
-  version = "0.18.3";
-
-  src = fetchurl {
-    url = "https://www.autistici.org/bakunin/libnxml/libnxml-${version}.tar.gz";
-    sha256 = "0ix5b9bxd7r517vhgcxwdviq4m0g0pq46s5g3h04gcqnpbin150g";
-  };
-
-  buildInputs = [ curl ];
-
-  meta = {
-    homepage = "https://www.autistici.org/bakunin/libnxml/";
-    description = "C library for parsing, writing and creating XML 1.0 and 1.1 files or streams";
-    license = lib.licenses.lgpl2;
-
-    platforms = lib.platforms.all;
-    maintainers = [ lib.maintainers.viric ];
-  };
-}
diff --git a/pkgs/development/libraries/libodb-sqlite/default.nix b/pkgs/development/libraries/libodb-sqlite/default.nix
index 9ac1153deee2a..547ff807d441a 100644
--- a/pkgs/development/libraries/libodb-sqlite/default.nix
+++ b/pkgs/development/libraries/libodb-sqlite/default.nix
@@ -8,13 +8,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "libodb-sqlite";
-  version = "2.5.0-b.25";
+  version = "2.5.0-b.27";
 
   outputs = [ "out" "dev" "doc" ];
 
   src = fetchurl {
     url = "https://pkg.cppget.org/1/beta/odb/libodb-sqlite-${version}.tar.gz";
-    hash = "sha256-Ko40WZErbL77B4eoJ5FFko/gTFYhADGlBzxPLuy8Wqc=";
+    hash = "sha256-jpxtY/VMkh88IzqGYgedu5TZGVIbPpy/FZNvUaOMf+w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libodb/default.nix b/pkgs/development/libraries/libodb/default.nix
index c016fc657d6f9..b83e4d5c68162 100644
--- a/pkgs/development/libraries/libodb/default.nix
+++ b/pkgs/development/libraries/libodb/default.nix
@@ -6,13 +6,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "libodb";
-  version = "2.5.0-b.25";
+  version = "2.5.0-b.27";
 
   outputs = [ "out" "dev" "doc" ];
 
   src = fetchurl {
     url = "https://pkg.cppget.org/1/beta/odb/libodb-${version}.tar.gz";
-    hash = "sha256-G634kVRbgwfBmIh8QqUclr/xvY3o0ouVmp/jxJrHzcs=";
+    hash = "sha256-04Et/wHYsWvJPLlcL0J2iOPV2SBFC6J32EleGw38K2Q=";
   };
 
   nativeBuildInputs = [ build2 ];
diff --git a/pkgs/development/libraries/libofx/default.nix b/pkgs/development/libraries/libofx/default.nix
index b7dddd16672c4..ec5f6d8924d71 100644
--- a/pkgs/development/libraries/libofx/default.nix
+++ b/pkgs/development/libraries/libofx/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   preConfigure = "./autogen.sh";
   configureFlags = [ "--with-opensp-includes=${opensp}/include/OpenSP" ];
   nativeBuildInputs = [ pkg-config libtool autoconf automake gengetopt ];
-  buildInputs = [ opensp libxml2 curl ] ++ lib.optional stdenv.isDarwin libiconv;
+  buildInputs = [ opensp libxml2 curl ] ++ lib.optional stdenv.hostPlatform.isDarwin libiconv;
 
   meta = {
     description = "Opensource implementation of the Open Financial eXchange specification";
diff --git a/pkgs/development/libraries/liboil/default.nix b/pkgs/development/libraries/liboil/default.nix
index 4b112b70e7ad3..2abbaa66f3478 100644
--- a/pkgs/development/libraries/liboil/default.nix
+++ b/pkgs/development/libraries/liboil/default.nix
@@ -18,10 +18,10 @@ stdenv.mkDerivation rec {
 
   # fix "argb_paint_i386.c:53:Incorrect register `%rax' used with `l' suffix"
   # errors
-  configureFlags = lib.optional (stdenv.isDarwin && stdenv.isx86_64) "--build=x86_64";
+  configureFlags = lib.optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) "--build=x86_64";
 
   # fixes a cast in inline asm: easier than patching
-  buildFlags = lib.optional stdenv.isDarwin "CFLAGS=-fheinous-gnu-extensions";
+  buildFlags = lib.optional stdenv.hostPlatform.isDarwin "CFLAGS=-fheinous-gnu-extensions";
 
   meta = with lib; {
     description = "Library of simple functions that are optimized for various CPUs";
diff --git a/pkgs/development/libraries/liboop/default.nix b/pkgs/development/libraries/liboop/default.nix
deleted file mode 100644
index 7a5d38db0d36c..0000000000000
--- a/pkgs/development/libraries/liboop/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{lib, stdenv, fetchurl}:
-
-stdenv.mkDerivation {
-  pname = "liboop";
-  version = "1.0";
-
-  src = fetchurl {
-    url = "http://download.ofb.net/liboop/liboop.tar.gz";
-    sha256 = "34d83c6e0f09ee15cb2bc3131e219747c3b612bb57cf7d25318ab90da9a2d97c";
-  };
-
-  meta = {
-    description = "Event loop library";
-    homepage = "http://liboop.ofb.net/";
-    license = "LGPL";
-    platforms = lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libopenshot-audio/default.nix b/pkgs/development/libraries/libopenshot-audio/default.nix
index 005422295236e..2d8cec21b1898 100644
--- a/pkgs/development/libraries/libopenshot-audio/default.nix
+++ b/pkgs/development/libraries/libopenshot-audio/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libopenshot-audio";
-  version = "0.3.2";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot-audio";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-PLpB9sy9xehipN5S9okCHm1mPm5MaZMVaFqCBvFUiTw=";
+    hash = "sha256-9iHeVMoyzTQae/PVYJqON0qOPo3SJlhrqbcp2u1Y8MA=";
   };
 
   patches = [
@@ -40,9 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
   ];
 
-  buildInputs = lib.optionals stdenv.isLinux [
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
-  ] ++ (if stdenv.isDarwin then [
+  ] ++ (if stdenv.hostPlatform.isDarwin then [
     Accelerate
     AGL
     Cocoa
diff --git a/pkgs/development/libraries/libopenshot/default.nix b/pkgs/development/libraries/libopenshot/default.nix
index 4622dabb2983a..231b0cd109aa3 100644
--- a/pkgs/development/libraries/libopenshot/default.nix
+++ b/pkgs/development/libraries/libopenshot/default.nix
@@ -20,16 +20,16 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libopenshot";
-  version = "0.3.2";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-axFGNq+Kg8atlaSlG8EKvxj/FwLfpDR8/e4otmnyosM=";
+    hash = "sha256-9X2UIRDD+1kNLbV8AnnPabdO2M0OfTDxQ7xyZtsE10k=";
   };
 
-  patches = lib.optionals stdenv.isDarwin [
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
     # Darwin requires both Magick++ and MagickCore for a successful linkage
     ./0001-link-magickcore.diff
   ];
@@ -51,9 +51,9 @@ stdenv.mkDerivation (finalAttrs: {
     qtbase
     qtmultimedia
     zeromq
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     llvmPackages.openmp
   ];
 
diff --git a/pkgs/development/libraries/libossp-uuid/default.nix b/pkgs/development/libraries/libossp-uuid/default.nix
index a283df1bbaea6..267829d2aee42 100644
--- a/pkgs/development/libraries/libossp-uuid/default.nix
+++ b/pkgs/development/libraries/libossp-uuid/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "ac_cv_va_copy=yes"
-  ] ++ lib.optional stdenv.isFreeBSD "--with-pic";
+  ] ++ lib.optional stdenv.hostPlatform.isFreeBSD "--with-pic";
 
   patches = [ ./shtool.patch ];
 
diff --git a/pkgs/development/libraries/libowlevelzs/default.nix b/pkgs/development/libraries/libowlevelzs/default.nix
index e3a4ffb11e8e8..6199dcca1bb84 100644
--- a/pkgs/development/libraries/libowlevelzs/default.nix
+++ b/pkgs/development/libraries/libowlevelzs/default.nix
@@ -17,11 +17,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  meta = with lib; {
+  meta = {
     description = "Zscheile Lowlevel (utility) library";
     homepage = "https://github.com/fogti/libowlevelzs";
-    license = licenses.mit;
+    license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ sigmanificient ];
-    platforms = platforms.all;
+    platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libpam-wrapper/default.nix b/pkgs/development/libraries/libpam-wrapper/default.nix
index 0701ae0fc55f5..6ea6229f4ddac 100644
--- a/pkgs/development/libraries/libpam-wrapper/default.nix
+++ b/pkgs/development/libraries/libpam-wrapper/default.nix
@@ -1,23 +1,34 @@
-{ lib, stdenv
-, fetchgit
-, cmake
-, linux-pam
-, enablePython ? false
-, python ? null
+{
+  lib,
+  stdenv,
+  fetchgit,
+  cmake,
+  linux-pam,
+  substituteAll,
+  enablePython ? false,
+  python ? null,
 }:
 
 assert enablePython -> python != null;
 
 stdenv.mkDerivation rec {
   pname = "libpam-wrapper";
-  version = "1.1.3";
+  version = "1.1.5";
 
   src = fetchgit {
     url = "git://git.samba.org/pam_wrapper.git";
     rev = "pam_wrapper-${version}";
-    sha256 = "00mqhsashx7njrvxz085d0b88nizhdy7m3x17ip5yhvwsl63km6p";
+    hash = "sha256-AtfkiCUvCxUfll6lOlbMyy5AhS5R2BGF1+ecC1VuwzM=";
   };
 
+  patches = [
+    (substituteAll {
+      src = ./python.patch;
+      siteDir = lib.optionalString enablePython python.sitePackages;
+      includeDir = lib.optionalString enablePython "include/${python.libPrefix}";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ] ++ lib.optionals enablePython [ python ];
 
   # We must use linux-pam, using openpam will result in broken fprintd.
diff --git a/pkgs/development/libraries/libpam-wrapper/python.patch b/pkgs/development/libraries/libpam-wrapper/python.patch
new file mode 100644
index 0000000000000..0ddb05d26fa9f
--- /dev/null
+++ b/pkgs/development/libraries/libpam-wrapper/python.patch
@@ -0,0 +1,38 @@
+diff --git a/cmake/Modules/FindPythonSiteLibs.cmake b/cmake/Modules/FindPythonSiteLibs.cmake
+index ab2931e..08e2c98 100644
+--- a/cmake/Modules/FindPythonSiteLibs.cmake
++++ b/cmake/Modules/FindPythonSiteLibs.cmake
+@@ -27,30 +27,9 @@
+ 
+ if (PYTHON_EXECUTABLE)
+     ### PYTHON_SITELIB
+-    execute_process(
+-        COMMAND
+-        ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(plat_specific=True, prefix=''))"
+-        OUTPUT_VARIABLE
+-            PYTHON_SITELIB_OUTPUT_VARIABLE
+-        RESULT_VARIABLE
+-            PYTHON_SITELIB_RESULT_VARIABLE
+-        OUTPUT_STRIP_TRAILING_WHITESPACE
+-    )
+-    if (NOT PYTHON_SITELIB_RESULT_VARIABLE)
+-        file(TO_CMAKE_PATH "${PYTHON_SITELIB_OUTPUT_VARIABLE}" PYTHON_SITELIB)
+-    endif ()
++    file(TO_CMAKE_PATH "@siteDir@" PYTHON_SITELIB)
++
+ 
+     ### PYTHON_SITEINC
+-    execute_process(
+-        COMMAND
+-            ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_inc; print(get_python_inc(plat_specific=True, prefix=''))"
+-        OUTPUT_VARIABLE
+-            PYTHON_SITEINC_OUTPUT_VARIABLE
+-        RESULT_VARIABLE
+-            PYTHON_SITEINC_RESULT_VARIABLE
+-        OUTPUT_STRIP_TRAILING_WHITESPACE
+-    )
+-    if (NOT PYTHON_SITEINC_RESULT_VARIABLE)
+-        file(TO_CMAKE_PATH "${PYTHON_SITEINC_OUTPUT_VARIABLE}" PYTHON_SITEINC)
+-    endif ()
++    file(TO_CMAKE_PATH "@includeDir@" PYTHON_SITEINC)
+ endif (PYTHON_EXECUTABLE)
diff --git a/pkgs/development/libraries/libpanel/default.nix b/pkgs/development/libraries/libpanel/default.nix
index 55faa7e628603..416fe1b29e556 100644
--- a/pkgs/development/libraries/libpanel/default.nix
+++ b/pkgs/development/libraries/libpanel/default.nix
@@ -1,23 +1,29 @@
-{ stdenv
-, lib
-, fetchurl
-, meson
-, ninja
-, pkg-config
-, gobject-introspection
-, vala
-, gi-docgen
-, glib
-, gtk4
-, libadwaita
-, gnome
+{
+  stdenv,
+  lib,
+  fetchurl,
+  meson,
+  ninja,
+  pkg-config,
+  gobject-introspection,
+  vala,
+  gi-docgen,
+  glib,
+  gtk4,
+  libadwaita,
+  gnome,
 }:
 
 stdenv.mkDerivation rec {
   pname = "libpanel";
   version = "1.6.0";
 
-  outputs = [ "out" "dev" "devdoc" ];
+  outputs = [
+    "out"
+    "dev"
+    "devdoc"
+  ];
+
   outputBin = "dev";
 
   src = fetchurl {
@@ -25,6 +31,10 @@ stdenv.mkDerivation rec {
     hash = "sha256-t3NJSjxpMANFzY4nAnRI0RiRgwJswTeAL4hkF8bqMLY=";
   };
 
+  strictDeps = true;
+
+  depsBuildBuild = [ pkg-config ];
+
   nativeBuildInputs = [
     meson
     ninja
@@ -32,6 +42,7 @@ stdenv.mkDerivation rec {
     gobject-introspection
     vala
     gi-docgen
+    gtk4 # gtk4-update-icon-cache
   ];
 
   buildInputs = [
@@ -40,9 +51,7 @@ stdenv.mkDerivation rec {
     libadwaita
   ];
 
-  mesonFlags = [
-    "-Dinstall-examples=true"
-  ];
+  mesonFlags = [ (lib.mesonBool "install-examples" true) ];
 
   postFixup = ''
     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
@@ -50,9 +59,7 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = gnome.updateScript {
-      packageName = pname;
-    };
+    updateScript = gnome.updateScript { packageName = pname; };
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libpcap/default.nix b/pkgs/development/libraries/libpcap/default.nix
index 7256e49226057..bfc2e3af7b8e5 100644
--- a/pkgs/development/libraries/libpcap/default.nix
+++ b/pkgs/development/libraries/libpcap/default.nix
@@ -30,18 +30,18 @@ stdenv.mkDerivation rec {
     hash = "sha256-7RmgOD+tcuOtQ1/SOdfNgNZJFrhyaVUBWdIORxYOvl8=";
   };
 
-  buildInputs = lib.optionals stdenv.isLinux [ libnl ]
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libnl ]
     ++ lib.optionals withRemote [ libxcrypt ];
 
   nativeBuildInputs = [ flex bison ]
-    ++ lib.optionals stdenv.isLinux [ pkg-config ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ]
     ++ lib.optionals withBluez [ bluez.dev ];
 
   # We need to force the autodetection because detection doesn't
   # work in pure build environments.
   configureFlags = [
-    "--with-pcap=${if stdenv.isLinux then "linux" else "bpf"}"
-  ] ++ lib.optionals stdenv.isDarwin [
+    "--with-pcap=${if stdenv.hostPlatform.isLinux then "linux" else "bpf"}"
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--disable-universal"
   ] ++ lib.optionals withRemote [
     "--enable-remote"
diff --git a/pkgs/development/libraries/libpeas/2.x.nix b/pkgs/development/libraries/libpeas/2.x.nix
index e2d1bf0f82311..f223231eaf0b9 100644
--- a/pkgs/development/libraries/libpeas/2.x.nix
+++ b/pkgs/development/libraries/libpeas/2.x.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libpeas";
-  version = "2.0.2";
+  version = "2.0.3";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-8w3/7WPKL0BHe0DhccCjH4DZFCW6Hh5HMg7mQlSA7MM=";
+    hash = "sha256-OeO1B8KdLQHfE0XpszgP16nQrrWy5lfTjmwr6lAj5fA=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libphonenumber/default.nix b/pkgs/development/libraries/libphonenumber/default.nix
index ceda871932abc..616b5de5deb6e 100644
--- a/pkgs/development/libraries/libphonenumber/default.nix
+++ b/pkgs/development/libraries/libphonenumber/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libphonenumber";
-  version = "8.13.37";
+  version = "8.13.45";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "libphonenumber";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-TQ9Hz9fnKZhZkg+hkXgFqH4TDCWMe+fcEWE6ShwSBBU=";
+    hash = "sha256-oR6AvhB99LBNCtbGsCMghDGriTEzqVSEKfzdQyj+g6E=";
   };
 
   patches = [
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
     boost
     icu
     protobuf
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Foundation
   ];
 
diff --git a/pkgs/development/libraries/libpipeline/default.nix b/pkgs/development/libraries/libpipeline/default.nix
index 3630980353a58..885c9044332c2 100644
--- a/pkgs/development/libraries/libpipeline/default.nix
+++ b/pkgs/development/libraries/libpipeline/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, updateAutotoolsGnuConfigScriptsHook }:
 
 stdenv.mkDerivation rec {
   pname = "libpipeline";
@@ -9,7 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-uLRRlJiQIqeewTF/ZKKnWxVRsqVb6gb2dwTLKi5GkLA=";
   };
 
-  patches = lib.optionals stdenv.isDarwin [ ./fix-on-osx.patch ];
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [ ./fix-on-osx.patch ];
+
+  # necessary to build on FreeBSD native pending inclusion of
+  # https://git.savannah.gnu.org/cgit/config.git/commit/?id=e4786449e1c26716e3f9ea182caf472e4dbc96e0
+  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
 
   meta = with lib; {
     homepage = "http://libpipeline.nongnu.org";
diff --git a/pkgs/development/libraries/libplacebo/default.nix b/pkgs/development/libraries/libplacebo/default.nix
index 5759d9bed505b..159037bec832c 100644
--- a/pkgs/development/libraries/libplacebo/default.nix
+++ b/pkgs/development/libraries/libplacebo/default.nix
@@ -20,14 +20,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libplacebo";
-  version = "6.338.2";
+  version = "7.349.0";
 
   src = fetchFromGitLab {
     domain = "code.videolan.org";
     owner = "videolan";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-gE6yKnFvsOFh8bFYc7b+bS+zmdDU7jucr0HwhdDeFzU=";
+    hash = "sha256-mIjQvc7SRjE1Orb2BkHK+K1TcRQvzj2oUOCUT4DzIuA=";
   };
 
   nativeBuildInputs = [
@@ -53,14 +53,14 @@ stdenv.mkDerivation rec {
     fast-float
   ];
 
-  mesonFlags = with lib; [
-    (mesonBool "demos" false) # Don't build and install the demo programs
-    (mesonEnable "d3d11" false) # Disable the Direct3D 11 based renderer
-    (mesonEnable "glslang" false) # rely on shaderc for GLSL compilation instead
-    (mesonEnable "vk-proc-addr" vulkanSupport)
-    (mesonOption "vulkan-registry" "${vulkan-headers}/share/vulkan/registry/vk.xml")
-  ] ++ optionals stdenv.isDarwin [
-    (mesonEnable "unwind" false) # libplacebo doesn’t build with `darwin.libunwind`
+  mesonFlags = [
+    (lib.mesonBool "demos" false) # Don't build and install the demo programs
+    (lib.mesonEnable "d3d11" false) # Disable the Direct3D 11 based renderer
+    (lib.mesonEnable "glslang" false) # rely on shaderc for GLSL compilation instead
+    (lib.mesonEnable "vk-proc-addr" vulkanSupport)
+    (lib.mesonOption "vulkan-registry" "${vulkan-headers}/share/vulkan/registry/vk.xml")
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    (lib.mesonEnable "unwind" false) # libplacebo doesn’t build with `darwin.libunwind`
   ];
 
   postPatch = ''
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
     homepage = "https://code.videolan.org/videolan/libplacebo";
     changelog = "https://code.videolan.org/videolan/libplacebo/-/tags/v${version}";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ primeos tadeokondrak ];
+    maintainers = with maintainers; [ primeos ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libplctag/default.nix b/pkgs/development/libraries/libplctag/default.nix
index 1e0fa3160e5a1..994cf0fef05ce 100644
--- a/pkgs/development/libraries/libplctag/default.nix
+++ b/pkgs/development/libraries/libplctag/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libplctag";
-  version = "2.6.0";
+  version = "2.6.3";
 
   src = fetchFromGitHub {
     owner = "libplctag";
     repo = "libplctag";
     rev = "v${version}";
-    sha256 = "sha256-+lsRYKA1FIXQXv0nfDNCAqIbqPunrzlpSC5FoF3VIsg=";
+    sha256 = "sha256-HUog7Tlm4jiqYXk22dziumCA/68c35+OwnTNYu9mV5E=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libplist/default.nix b/pkgs/development/libraries/libplist/default.nix
index 9a69af13d2fd1..eeabf62e1c814 100644
--- a/pkgs/development/libraries/libplist/default.nix
+++ b/pkgs/development/libraries/libplist/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libplist";
-  version = "2.4.0";
+  version = "2.6.0";
 
   outputs = [ "bin" "dev" "out" ] ++ lib.optional enablePython "py";
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     owner = "libimobiledevice";
     repo = pname;
     rev = version;
-    hash = "sha256-bH40HSp76w56tlxO5M1INAW4wRR7O27AY4H/CyEcp+Y=";
+    hash = "sha256-hitRcOjbF+L9Og9/qajqFqOhKfRn9+iWLoCKmS9dT80=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index 11e3fb31604f7..57b75a949b7d6 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -21,7 +21,7 @@ in stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-alygZSOSotfJ2yrltAIQhDwLvAgcvUEIJasAzFnxSmw=";
   };
   postPatch = whenPatched "gunzip < ${patch_src} | patch -Np1"
-  + lib.optionalString stdenv.isFreeBSD ''
+  + lib.optionalString stdenv.hostPlatform.isFreeBSD ''
 
     sed -i 1i'int feenableexcept(int __mask);' contrib/libtests/pngvalid.c
   '';
diff --git a/pkgs/development/libraries/libpointmatcher/default.nix b/pkgs/development/libraries/libpointmatcher/default.nix
index 709ca6876048a..57c629783aa6f 100644
--- a/pkgs/development/libraries/libpointmatcher/default.nix
+++ b/pkgs/development/libraries/libpointmatcher/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libpointmatcher";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchFromGitHub {
     owner = "norlab-ulaval";
     repo = "libpointmatcher";
     rev = version;
-    hash = "sha256-XXkvBxG9f8rW1O968+2R+gltMSRGqH225vOmzp6Tpb8=";
+    hash = "sha256-ewsU3aCFPeem1pJpqKaceMhL7SwTYOaYlcwOfMxwkSs=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libpqxx/6.nix b/pkgs/development/libraries/libpqxx/6.nix
deleted file mode 100644
index ff394526ea207..0000000000000
--- a/pkgs/development/libraries/libpqxx/6.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, postgresql, doxygen, xmlto, python3, gnused }:
-
-stdenv.mkDerivation rec {
-  pname = "libpqxx";
-  version = "6.4.8";
-
-  src = fetchFromGitHub {
-    owner = "jtv";
-    repo = pname;
-    rev = version;
-    hash = "sha256-ybnW9ip1QVadmbYLP+gvo49k9ExHfnsOhSnI6NjsAQk=";
-  };
-
-  nativeBuildInputs = [ gnused python3 ];
-  buildInputs = [ postgresql doxygen xmlto ];
-
-  preConfigure = ''
-    patchShebangs .
-  '';
-
-  configureFlags = [ "--enable-shared" ];
-
-  meta = {
-    description = "C++ library to access PostgreSQL databases";
-    homepage = "https://pqxx.org/development/libpqxx/";
-    license = lib.licenses.bsd3;
-    platforms = lib.platforms.unix;
-    maintainers = [ lib.maintainers.eelco ];
-  };
-}
diff --git a/pkgs/development/libraries/libpqxx/default.nix b/pkgs/development/libraries/libpqxx/default.nix
index 13fecb9b56bfc..842be540a67f2 100644
--- a/pkgs/development/libraries/libpqxx/default.nix
+++ b/pkgs/development/libraries/libpqxx/default.nix
@@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
     homepage = "https://pqxx.org/development/libpqxx/";
     license = lib.licenses.bsd3;
     platforms = lib.platforms.unix;
-    maintainers = [ lib.maintainers.eelco ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libproxy/default.nix b/pkgs/development/libraries/libproxy/default.nix
index 1183f46799ef5..59b2966711dd0 100644
--- a/pkgs/development/libraries/libproxy/default.nix
+++ b/pkgs/development/libraries/libproxy/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libproxy";
-  version = "0.5.6";
+  version = "0.5.7";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "libproxy";
     repo = "libproxy";
     rev = finalAttrs.version;
-    hash = "sha256-2uDlKjxzrKlyZKV0BSUDzmLSo2voJKDerbZZkamgNYk=";
+    hash = "sha256-VKVazLkmm1BZeGxrQmkpHors27bki0l8US3ZGI6OR0w=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libproxy/hardcode-gsettings.patch b/pkgs/development/libraries/libproxy/hardcode-gsettings.patch
index 22aeb5836f9c5..6f4b3ec0e0314 100644
--- a/pkgs/development/libraries/libproxy/hardcode-gsettings.patch
+++ b/pkgs/development/libraries/libproxy/hardcode-gsettings.patch
@@ -1,8 +1,8 @@
 diff --git a/src/backend/plugins/config-gnome/config-gnome.c b/src/backend/plugins/config-gnome/config-gnome.c
-index 820827b..338e269 100644
+index 52e812e..a1141c5 100644
 --- a/src/backend/plugins/config-gnome/config-gnome.c
 +++ b/src/backend/plugins/config-gnome/config-gnome.c
-@@ -85,11 +85,60 @@ px_config_gnome_init (PxConfigGnome *self)
+@@ -83,11 +83,60 @@ px_config_gnome_init (PxConfigGnome *self)
    if (!self->available)
      return;
  
@@ -69,7 +69,7 @@ index 820827b..338e269 100644
  
  static void
 diff --git a/tests/config-gnome-test.c b/tests/config-gnome-test.c
-index f80914a..118d429 100644
+index 677a3e9..a28d277 100644
 --- a/tests/config-gnome-test.c
 +++ b/tests/config-gnome-test.c
 @@ -60,11 +60,60 @@ static void
diff --git a/pkgs/development/libraries/libpsl/default.nix b/pkgs/development/libraries/libpsl/default.nix
index a8fcd2581caa5..1659a55cb4ef9 100644
--- a/pkgs/development/libraries/libpsl/default.nix
+++ b/pkgs/development/libraries/libpsl/default.nix
@@ -10,7 +10,7 @@
 , libxslt
 , pkg-config
 , python3
-, valgrind
+, buildPackages
 , publicsuffix-list
 }:
 
@@ -23,8 +23,9 @@ stdenv.mkDerivation rec {
     hash = "sha256-mp9qjG7bplDPnqVUdc0XLdKEhzFoBOnHMgLZdXLNOi0=";
   };
 
-  # bin/psl-make-dafsa brings a large runtime closure through python3
-  outputs = [ "bin" "out" "dev" ];
+  outputs = [ "out" "dev" ]
+    # bin/psl-make-dafsa brings a large runtime closure through python3
+    ++ lib.optional (!stdenv.hostPlatform.isStatic) "bin";
 
   nativeBuildInputs = [
     autoreconfHook
@@ -33,7 +34,6 @@ stdenv.mkDerivation rec {
     gtk-doc
     lzip
     pkg-config
-    python3
     libxslt
   ];
 
@@ -41,13 +41,13 @@ stdenv.mkDerivation rec {
     libidn2
     libunistring
     libxslt
-  ];
+  ] ++ lib.optional (!stdenv.hostPlatform.isStatic) python3;
 
   propagatedBuildInputs = [
     publicsuffix-list
   ];
 
-  postPatch = ''
+  postPatch = lib.optionalString (!stdenv.hostPlatform.isStatic) ''
     patchShebangs src/psl-make-dafsa
   '';
 
@@ -61,6 +61,7 @@ stdenv.mkDerivation rec {
     "--with-psl-distfile=${publicsuffix-list}/share/publicsuffix/public_suffix_list.dat"
     "--with-psl-file=${publicsuffix-list}/share/publicsuffix/public_suffix_list.dat"
     "--with-psl-testfile=${publicsuffix-list}/share/publicsuffix/test_psl.txt"
+    "PYTHON=${lib.getExe buildPackages.python3}"
   ];
 
   enableParallelBuilding = true;
@@ -77,7 +78,7 @@ stdenv.mkDerivation rec {
       the domain in a user interface or sorting domain lists by site.
     '';
     homepage = "https://rockdaboot.github.io/libpsl/";
-    changelog = "https://raw.githubusercontent.com/rockdaboot/${pname}/${pname}-${version}/NEWS";
+    changelog = "https://raw.githubusercontent.com/rockdaboot/libpsl/libpsl-${version}/NEWS";
     license = licenses.mit;
     maintainers = [ maintainers.c0bw3b ];
     mainProgram = "psl";
diff --git a/pkgs/development/libraries/libpst/default.nix b/pkgs/development/libraries/libpst/default.nix
index 9b2ff09850262..a608b6741b0c0 100644
--- a/pkgs/development/libraries/libpst/default.nix
+++ b/pkgs/development/libraries/libpst/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "0.6.76";
 
   src = fetchurl {
-    url = "http://www.five-ten-sg.com/libpst/packages/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "http://www.five-ten-sg.com/libpst/packages/libpst-${finalAttrs.version}.tar.gz";
     hash = "sha256-PSkb7rvbSNK5NGCLwGGVtkHaY9Ko9eDThvLp1tBaC0I=";
   };
 
diff --git a/pkgs/development/libraries/libpulsar/default.nix b/pkgs/development/libraries/libpulsar/default.nix
index 2dabe89bc50b5..f083ef0414570 100644
--- a/pkgs/development/libraries/libpulsar/default.nix
+++ b/pkgs/development/libraries/libpulsar/default.nix
@@ -46,13 +46,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: rec {
   pname = "libpulsar";
-  version = "3.5.1";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "apache";
     repo = "pulsar-client-cpp";
     rev = "v${version}";
-    hash = "sha256-BSDkF0MAc54N59t7ozMLof0of4sURL3qiksLZhb+6I8=";
+    hash = "sha256-P1LhUH7V3EtWBXwPHQdN11mCjuyUyVdrtZsUItvC8xU=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ]
diff --git a/pkgs/development/libraries/libqglviewer/default.nix b/pkgs/development/libraries/libqglviewer/default.nix
index fd10ccc5375c1..ec2234bb9a284 100644
--- a/pkgs/development/libraries/libqglviewer/default.nix
+++ b/pkgs/development/libraries/libqglviewer/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ qmake ];
   buildInputs = [ qtbase libGLU ]
-    ++ lib.optional stdenv.isDarwin AGL;
+    ++ lib.optional stdenv.hostPlatform.isDarwin AGL;
 
   dontWrapQtApps = true;
 
diff --git a/pkgs/development/libraries/libqofono/default.nix b/pkgs/development/libraries/libqofono/default.nix
index ff72711c8a75f..a7d7868f30b37 100644
--- a/pkgs/development/libraries/libqofono/default.nix
+++ b/pkgs/development/libraries/libqofono/default.nix
@@ -1,7 +1,8 @@
 { lib
 , substituteAll
 , mkDerivation
-, fetchFromGitLab
+, fetchFromGitHub
+, gitUpdater
 , mobile-broadband-provider-info
 , qmake
 , qtbase
@@ -10,14 +11,13 @@
 
 mkDerivation rec {
   pname = "libqofono";
-  version = "0.103";
+  version = "0.123";
 
-  src = fetchFromGitLab {
-    domain = "git.sailfishos.org";
-    owner = "mer-core";
+  src = fetchFromGitHub {
+    owner = "sailfishos";
     repo = "libqofono";
     rev = version;
-    sha256 = "1ly5aj412ljcjvhqyry6nhiglbzzhczsy1a6w4i4fja60b2m1z45";
+    hash = "sha256-Ml86wHejSDyR2ibamuzg14GZ5S7zHBgPC9K5G+sgtC0=";
   };
 
   patches = [
@@ -48,11 +48,13 @@ mkDerivation rec {
     qtdeclarative
   ];
 
+  passthru.updateScript = gitUpdater { };
+
   meta = with lib; {
     description = "Library for accessing the ofono daemon, and declarative plugin for it";
     homepage = "https://git.sailfishos.org/mer-core/libqofono/";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libqtav/default.nix b/pkgs/development/libraries/libqtav/default.nix
deleted file mode 100644
index 17862e23b75bc..0000000000000
--- a/pkgs/development/libraries/libqtav/default.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ mkDerivation
-, lib
-, fetchFromGitHub
-, extra-cmake-modules
-, qtbase
-, qtmultimedia
-, qttools
-, libGL
-, libX11
-, libass
-, openal
-, ffmpeg_4
-, libuchardet
-, alsa-lib
-, libpulseaudio
-, libva
-}:
-
-mkDerivation rec {
-  pname = "libqtav";
-  version = "unstable-2020-09-10";
-
-  nativeBuildInputs = [ extra-cmake-modules qttools ];
-  buildInputs = [
-    qtbase
-    qtmultimedia
-    libGL
-    libX11
-    libass
-    openal
-    ffmpeg_4
-    libuchardet
-    alsa-lib
-    libpulseaudio
-    libva
-  ];
-
-  src = fetchFromGitHub {
-    sha256 = "0qwrk40dihkbwmm7krz6qaqyn9v3qdjnd2k9b4s3a67x4403pib3";
-    rev = "2a470d2a8d2fe22fae969bee5d594909a07b350a";
-    repo = "QtAV";
-    owner = "wang-bin";
-    fetchSubmodules = true;
-  };
-
-  # Make sure libqtav finds its libGL dependency at both link and run time
-  # by adding libGL to rpath. Not sure why it wasn't done automatically like
-  # the other libraries as `libGL` is part of our `buildInputs`.
-  NIX_CFLAGS_LINK = "-Wl,-rpath,${libGL}/lib";
-
-  cmakeFlags = [
-    # RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/
-    "-DCMAKE_SKIP_BUILD_RPATH=ON"
-  ];
-
-  preFixup = ''
-    mkdir -p "$out/bin"
-    cp -a "./bin/"* "$out/bin"
-  '';
-
-  stripDebugList = [ "lib" "libexec" "bin" "qml" ];
-
-  meta =  with lib; {
-    description = "Multimedia playback framework based on Qt + FFmpeg";
-    #license = licenses.lgpl21; # For the libraries / headers only.
-    license = licenses.gpl3; # With the examples (under bin) and most likely some of the optional dependencies used.
-    homepage = "http://www.qtav.org/";
-    maintainers = [ maintainers.jraygauthier ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libraqm/default.nix b/pkgs/development/libraries/libraqm/default.nix
index 98769f2e374a0..9899c70b8089e 100644
--- a/pkgs/development/libraries/libraqm/default.nix
+++ b/pkgs/development/libraries/libraqm/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libraqm";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "HOST-Oman";
     repo = "libraqm";
     rev = "v${version}";
-    sha256 = "sha256-H9W+7Mob3o5ctxfp5UhIxatSdXqqvkpyEibJx9TO7a8=";
+    sha256 = "sha256-KhGE66GS5rIieVXJUFA3jSsXEpbdnzN0VIAF/zOelU4=";
   };
 
   buildInputs = [ freetype harfbuzz fribidi ];
diff --git a/pkgs/development/libraries/librasterlite2/default.nix b/pkgs/development/libraries/librasterlite2/default.nix
index de9fa02d44db1..0286d944691f0 100644
--- a/pkgs/development/libraries/librasterlite2/default.nix
+++ b/pkgs/development/libraries/librasterlite2/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
     libspatialite
     libtiff
     libwebp
-    libxml2
+    (libxml2.override { enableHttp = true; })
     lz4
     minizip
     openjpeg
diff --git a/pkgs/development/libraries/librdf/raptor2.nix b/pkgs/development/libraries/librdf/raptor2.nix
index 424022b7ab4bc..a747ad8eb8de3 100644
--- a/pkgs/development/libraries/librdf/raptor2.nix
+++ b/pkgs/development/libraries/librdf/raptor2.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , libxml2
+, curl
 , libxslt
 , pkg-config
 , cmake
@@ -45,7 +46,11 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ pkg-config cmake perl bison flex ];
-  buildInputs = [ libxml2 libxslt ];
+  buildInputs = [
+    curl
+    libxml2
+    libxslt
+  ];
 
   meta = {
     description = "RDF Parser Toolkit";
diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix
index fa419830f3c7c..ebdf2ec4d8a63 100644
--- a/pkgs/development/libraries/libre/default.nix
+++ b/pkgs/development/libraries/libre/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     openssl
     zlib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     SystemConfiguration
   ];
 
diff --git a/pkgs/development/libraries/librealsense/default.nix b/pkgs/development/libraries/librealsense/default.nix
index 527f61b603937..5dc620fd5c01d 100644
--- a/pkgs/development/libraries/librealsense/default.nix
+++ b/pkgs/development/libraries/librealsense/default.nix
@@ -2,9 +2,9 @@
 , config
 , lib
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , libusb1
+, nlohmann_json
 , ninja
 , pkg-config
 , gcc
@@ -23,7 +23,7 @@ assert enablePython -> pythonPackages != null;
 
 stdenv.mkDerivation rec {
   pname = "librealsense";
-  version = "2.54.2";
+  version = "2.56.1";
 
   outputs = [ "out" "dev" ];
 
@@ -31,31 +31,36 @@ stdenv.mkDerivation rec {
     owner = "IntelRealSense";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-EbnIHnsUgsqN/SVv4m9H7K8gfwni+u82+M55QBstAGI=";
+    sha256 = "sha256-1ICSJqr5WRePLIHsD3T2L0Nxdn1LWaHqHDJrfTIRl88=";
   };
 
   buildInputs = [
     libusb1
     gcc.cc.lib
-  ] ++ lib.optional cudaSupport cudaPackages.cudatoolkit
+    nlohmann_json
+  ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ]
     ++ lib.optionals enablePython (with pythonPackages; [ python pybind11 ])
     ++ lib.optionals enableGUI [ mesa gtk3 glfw libGLU curl ];
 
   patches = [
     ./py_pybind11_no_external_download.patch
     ./install-presets.patch
-    # https://github.com/IntelRealSense/librealsense/pull/11917
-    (fetchpatch {
-      name = "fix-gcc13-missing-cstdint.patch";
-      url = "https://github.com/IntelRealSense/librealsense/commit/b59b13671658910fc453a4a6bbd61f13ba6e83cc.patch";
-      hash = "sha256-zaW8HG8rfsApI5S/3x+x9Fx8xhyTIPNn/fJVFtkmlEA=";
-    })
   ];
 
+  postPatch = ''
+    # use nixpkgs nlohmann_json instead of fetching it
+    substituteInPlace third-party/CMakeLists.txt \
+      --replace-fail \
+        'include(CMake/external_json.cmake)' \
+        'find_package(nlohmann_json 3.11.3 REQUIRED)'
+  '';
+
   nativeBuildInputs = [
     cmake
     ninja
     pkg-config
+  ] ++ lib.optionals cudaSupport [
+    cudaPackages.cuda_nvcc
   ];
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/libredwg/default.nix b/pkgs/development/libraries/libredwg/default.nix
index 6eb06a1ebe675..aff1fc1a1d686 100644
--- a/pkgs/development/libraries/libredwg/default.nix
+++ b/pkgs/development/libraries/libredwg/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     cp ${printVersion} build-aux/git-version-gen
   '';
 
-  preConfigure = lib.optionalString (stdenv.isDarwin && enablePython) ''
+  preConfigure = lib.optionalString (stdenv.hostPlatform.isDarwin && enablePython) ''
     # prevent configure picking up stack_size from distutils.sysconfig
     export PYTHON_EXTRA_LDFLAGS=" "
   '';
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   configureFlags = lib.optional (!enablePython) "--disable-python";
 
   # FAIL: alive.test
-  doCheck = !stdenv.isLinux;
+  doCheck = !stdenv.hostPlatform.isLinux;
 
   # the "xmlsuite" test requires the libxml2 c library as well as the python module
   nativeCheckInputs = lib.optionals enablePython [ libxml2 libxml2.dev ];
diff --git a/pkgs/development/libraries/libremidi/default.nix b/pkgs/development/libraries/libremidi/default.nix
index 48014bea07416..6717b97203b7a 100644
--- a/pkgs/development/libraries/libremidi/default.nix
+++ b/pkgs/development/libraries/libremidi/default.nix
@@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = lib.optional stdenv.isLinux alsa-lib
-    ++ lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optional stdenv.hostPlatform.isLinux alsa-lib
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
     CoreAudio
     CoreFoundation
     CoreMIDI
diff --git a/pkgs/development/libraries/librep/default.nix b/pkgs/development/libraries/librep/default.nix
deleted file mode 100644
index 84f610ce24746..0000000000000
--- a/pkgs/development/libraries/librep/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-, autoreconfHook
-, gdbm
-, gmp
-, libffi
-, pkg-config
-, readline
-, texinfo
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "librep";
-  version = "0.92.7";
-
-  src = fetchurl {
-    url = "https://download.tuxfamily.org/librep/librep_${finalAttrs.version}.tar.xz";
-    hash = "sha256-SKGWeax8BTCollfeGP/knFdZpf9w/IRJKLDl0AOVrK4=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-    texinfo
-  ];
-
-  buildInputs = [
-    gdbm
-    gmp
-    libffi
-    readline
-  ];
-
-  strictDeps = true;
-
-  # ensure libsystem/ctype functions don't get duplicated when using clang
-  configureFlags = lib.optionals stdenv.isDarwin [ "CFLAGS=-std=gnu89" ];
-
-  setupHook = ./setup-hook.sh;
-
-  meta = {
-    homepage = "http://sawfish.tuxfamily.org/";
-    description = "Fast, lightweight, and versatile Lisp environment";
-    longDescription = ''
-      librep is a Lisp system for UNIX, comprising an interpreter, a byte-code
-      compiler, and a virtual machine. It can serve as an application extension
-      language but is also suitable for standalone scripts.
-    '';
-    license = lib.licenses.gpl2Plus;
-    maintainers = [ lib.maintainers.AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
-# TODO: investigate fetchFromGithub
diff --git a/pkgs/development/libraries/librep/setup-hook.sh b/pkgs/development/libraries/librep/setup-hook.sh
deleted file mode 100644
index 4d875b6933040..0000000000000
--- a/pkgs/development/libraries/librep/setup-hook.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-addRepDLLoadPath () {
-    addToSearchPath REP_DL_LOAD_PATH $1/lib/rep
-}
-
-addEnvHooks "$hostOffset" addRepDLLoadPath
diff --git a/pkgs/development/libraries/libresample/default.nix b/pkgs/development/libraries/libresample/default.nix
deleted file mode 100644
index 6ca1d09ef202f..0000000000000
--- a/pkgs/development/libraries/libresample/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{lib, stdenv, fetchurl, cmake}:
-
-let
-  patch = fetchurl {
-    url = "mirror://debian/pool/main/libr/libresample/libresample_0.1.3-3.diff.gz";
-    sha256 = "063w8rqxw87fc89gas47vk0ll7xl8cy7d8g70gm1l62bqkkajklx";
-  };
-in
-stdenv.mkDerivation rec {
-  pname = "libresample";
-  version = "0.1.3";
-  src = fetchurl {
-    url = "mirror://debian/pool/main/libr/libresample/libresample_${version}.orig.tar.gz";
-    sha256 = "05a8mmh1bw5afqx0kfdqzmph4x2npcs4idx0p0v6q95lwf22l8i0";
-  };
-  patches = [ patch ];
-  preConfigure = ''
-    cat debian/patches/1001_shlib-cmake.patch | patch -p1
-  '';
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    description = "Real-time library for sampling rate conversion library";
-    license = lib.licenses.lgpl2Plus;
-    homepage = "https://ccrma.stanford.edu/~jos/resample/Free_Resampling_Software.html";
-    maintainers = [ lib.maintainers.sander ];
-    platforms = lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/development/libraries/libressl/default.nix
index f8350f7c4a53f..f6cf4a6e62c87 100644
--- a/pkgs/development/libraries/libressl/default.nix
+++ b/pkgs/development/libraries/libressl/default.nix
@@ -8,7 +8,7 @@
 }:
 
 let
-  ldLibPathEnvName = if stdenv.isDarwin
+  ldLibPathEnvName = if stdenv.hostPlatform.isDarwin
     then "DYLD_LIBRARY_PATH"
     else "LD_LIBRARY_PATH";
 
@@ -127,10 +127,28 @@ in {
   libressl_3_8 = generic {
     version = "3.8.4";
     hash = "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0=";
+
+    patches = [
+      # Fixes build on ppc64
+      # https://github.com/libressl/portable/pull/1073
+      (fetchpatch {
+        url = "https://github.com/libressl/portable/commit/e6c7de3f03c51fbdcf5ad88bf12fe9e128521f0d.patch";
+        hash = "sha256-LJy3fjbnc9h5DG3/+8bLECwJeBpPxy3hU8sPuhovmcw=";
+      })
+    ];
   };
 
   libressl_3_9 = generic {
     version = "3.9.2";
     hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=";
+
+    patches = [
+      # Fixes build on ppc64
+      # https://github.com/libressl/portable/pull/1073
+      (fetchpatch {
+        url = "https://github.com/libressl/portable/commit/e6c7de3f03c51fbdcf5ad88bf12fe9e128521f0d.patch";
+        hash = "sha256-LJy3fjbnc9h5DG3/+8bLECwJeBpPxy3hU8sPuhovmcw=";
+      })
+    ];
   };
 }
diff --git a/pkgs/development/libraries/librime/default.nix b/pkgs/development/libraries/librime/default.nix
index 4a95915d4205b..6ff2abb11de9a 100644
--- a/pkgs/development/libraries/librime/default.nix
+++ b/pkgs/development/libraries/librime/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake, boost, glog, leveldb, marisa, opencc,
-  yaml-cpp, gtest, capnproto, pkg-config, plugins ? [ ] }:
+  yaml-cpp, gtest, capnproto, pkg-config, librime-lua, librime-octagram,
+  plugins ? [ librime-lua librime-octagram ] }:
 
 let
   copySinglePlugin = plug: "cp -r ${plug} plugins/${plug.name}";
diff --git a/pkgs/development/libraries/librsb/default.nix b/pkgs/development/libraries/librsb/default.nix
index d9dc209a7139e..4a995cbbe89db 100644
--- a/pkgs/development/libraries/librsb/default.nix
+++ b/pkgs/development/libraries/librsb/default.nix
@@ -83,6 +83,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ KarlJoad ];
     platforms = platforms.all;
     # ./rsb_common.h:56:10: fatal error: 'omp.h' file not found
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index e9a9eb977db3f..932d0f19a7d2b 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -42,7 +42,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "librsvg";
-  version = "2.58.1";
+  version = "2.58.2";
 
   outputs = [ "out" "dev" ] ++ lib.optionals withIntrospection [
     "devdoc"
@@ -50,13 +50,13 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = "mirror://gnome/sources/librsvg/${lib.versions.majorMinor finalAttrs.version}/librsvg-${finalAttrs.version}.tar.xz";
-    hash = "sha256-NyhZYpCoV20wXQbsiv30c1Fv7unf8i4DI16sQz1Wgk4=";
+    hash = "sha256-GOnXDAjPJfUNYQ1tWvVxVh1nz0F5+WLgQmZHXfbi4iQ=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit (finalAttrs) src;
     name = "librsvg-deps-${finalAttrs.version}";
-    hash = "sha256-FIW92Cr83YkGTOe/xjyZGZvHYSrG70GBpHc9l0sMjLg=";
+    hash = "sha256-E0bXSxWI0MkJmNvl8gxklXHgy4zlkiee59+s0h4Gw5s=";
     # TODO: move this to fetchCargoTarball
     dontConfigure = true;
   };
@@ -87,7 +87,7 @@ stdenv.mkDerivation (finalAttrs: {
     pango
     libintl
     vala # for share/vala/Makefile.vapigen
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
     Foundation
     libobjc
@@ -104,7 +104,7 @@ stdenv.mkDerivation (finalAttrs: {
     (lib.enableFeature withIntrospection "vala")
 
     "--enable-always-build-tests"
-  ] ++ lib.optional stdenv.isDarwin "--disable-Bsymbolic"
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin "--disable-Bsymbolic"
     ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "RUST_TARGET=${stdenv.hostPlatform.rust.rustcTarget}";
 
   doCheck = false; # all tests fail on libtool-generated rsvg-convert not being able to find coreutils
@@ -115,7 +115,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   # librsvg only links Foundation, but it also requiers libobjc. The Framework.tbd in the 11.0 SDK
   # reexports libobjc, but the one in the 10.12 SDK does not, so link it manually.
-  env = lib.optionalAttrs (stdenv.isDarwin && stdenv.isx86_64) {
+  env = lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) {
     NIX_LDFLAGS = "-lobjc";
   };
 
diff --git a/pkgs/development/libraries/librtprocess/default.nix b/pkgs/development/libraries/librtprocess/default.nix
index dabb5e62e45de..a8366f8a92df1 100644
--- a/pkgs/development/libraries/librtprocess/default.nix
+++ b/pkgs/development/libraries/librtprocess/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ llvmPackages.openmp ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ llvmPackages.openmp ];
 
   meta = with lib; {
     description = "Highly optimized library for processing RAW images";
diff --git a/pkgs/development/libraries/libs3/default.nix b/pkgs/development/libraries/libs3/default.nix
deleted file mode 100644
index 10b10529f7ba0..0000000000000
--- a/pkgs/development/libraries/libs3/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, curl, libxml2 }:
-
-stdenv.mkDerivation {
-  pname = "libs3";
-  version = "unstable-2019-04-10";
-
-  src = fetchFromGitHub {
-    owner = "bji";
-    repo = "libs3";
-    rev = "287e4bee6fd430ffb52604049de80a27a77ff6b4";
-    hash = "sha256-xgiY8oJlRMiXB1fw5dhNidfaq18YVwaJ8aErKU11O6U=";
-  };
-
-  patches = [
-    (fetchpatch { # Fix compilation with openssl 3.0
-      url = "https://github.com/bji/libs3/pull/112/commits/3c3a1cf915e62b730db854d8007ba835cb38677c.patch";
-      hash = "sha256-+rWRh8dOznHlamc/T9qbgN0E2Rww3Hn94UeErxNDccs=";
-    })
-  ];
-
-  buildInputs = [ curl libxml2 ];
-
-  makeFlags = [ "DESTDIR=${placeholder "out"}" ];
-
-  meta = with lib; {
-    homepage = "https://github.com/bji/libs3";
-    description = "Library for interfacing with amazon s3";
-    mainProgram = "s3";
-    license = licenses.lgpl3Plus;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libsamplerate/default.nix b/pkgs/development/libraries/libsamplerate/default.nix
index bebe6c591ba43..ec4da5a34784e 100644
--- a/pkgs/development/libraries/libsamplerate/default.nix
+++ b/pkgs/development/libraries/libsamplerate/default.nix
@@ -14,13 +14,13 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libsndfile ]
-    ++ optionals stdenv.isDarwin [ ApplicationServices CoreServices ];
+    ++ optionals stdenv.hostPlatform.isDarwin [ ApplicationServices CoreServices ];
 
   configureFlags = [ "--disable-fftw" ];
 
   outputs = [ "dev" "out" ];
 
-  postConfigure = optionalString stdenv.isDarwin ''
+  postConfigure = optionalString stdenv.hostPlatform.isDarwin ''
     # need headers from the Carbon.framework in /System/Library/Frameworks to
     # compile this on darwin -- not sure how to handle
     NIX_CFLAGS_COMPILE+=" -I${Carbon}/Library/Frameworks/Carbon.framework/Headers"
@@ -32,5 +32,7 @@ in stdenv.mkDerivation rec {
     license     = licenses.bsd2;
     maintainers = with maintainers; [ lovek323 ];
     platforms   = platforms.all;
+    # Linker is unhappy with the `.def` file.
+    broken      = stdenv.hostPlatform.isMinGW;
   };
 }
diff --git a/pkgs/development/libraries/libsass/default.nix b/pkgs/development/libraries/libsass/default.nix
index 027cfa2b5c8be..aedcafd4ce73b 100644
--- a/pkgs/development/libraries/libsass/default.nix
+++ b/pkgs/development/libraries/libsass/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "sass";
-    repo = finalAttrs.pname;
+    repo = "libsass";
     rev = finalAttrs.version;
     hash = "sha256-FkLL3OAJXDptRQY6ZkYbss2pcc40f/wasIvEIyHRQFo=";
     # Remove unicode file names which leads to different checksums on HFS+
diff --git a/pkgs/development/libraries/libsbsms/common.nix b/pkgs/development/libraries/libsbsms/common.nix
index f206f68de42a4..7215c23667b8b 100644
--- a/pkgs/development/libraries/libsbsms/common.nix
+++ b/pkgs/development/libraries/libsbsms/common.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     # Fix buidling on platforms other than x86
     (substituteAll {
       src = ./configure.patch;
-      msse = lib.optionalString stdenv.isx86_64 "-msse";
+      msse = lib.optionalString stdenv.hostPlatform.isx86_64 "-msse";
     })
   ];
 
diff --git a/pkgs/development/libraries/libscrypt/default.nix b/pkgs/development/libraries/libscrypt/default.nix
index 6adc2124a3ab2..4f8f0deba9021 100644
--- a/pkgs/development/libraries/libscrypt/default.nix
+++ b/pkgs/development/libraries/libscrypt/default.nix
@@ -11,10 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-QWWqC10bENemG5FYEog87tT7IxDaBJUDqu6j/sO3sYE=";
   };
 
-  buildFlags = lib.optional stdenv.isDarwin "LDFLAGS= LDFLAGS_EXTRA= CFLAGS_EXTRA=";
+  buildFlags = lib.optional stdenv.hostPlatform.isDarwin "LDFLAGS= LDFLAGS_EXTRA= CFLAGS_EXTRA=";
 
   installFlags = [ "PREFIX=$(out)" ];
-  installTargets = lib.optional stdenv.isDarwin "install-osx";
+  installTargets = lib.optional stdenv.hostPlatform.isDarwin "install-osx";
 
   doCheck = true;
 
diff --git a/pkgs/development/libraries/libseccomp/default.nix b/pkgs/development/libraries/libseccomp/default.nix
index 19ba1f2b8911b..a8b2a98850dd9 100644
--- a/pkgs/development/libraries/libseccomp/default.nix
+++ b/pkgs/development/libraries/libseccomp/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeCheckInputs = [ util-linuxMinimal which ];
-  doCheck = true;
+  doCheck = !(stdenv.targetPlatform.useLLVM or false);
 
   # Hack to ensure that patchelf --shrink-rpath get rids of a $TMPDIR reference.
   preFixup = "rm -rfv src";
diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix
index d0b1515d0bad9..8ae0754a0abd7 100644
--- a/pkgs/development/libraries/libsecret/default.nix
+++ b/pkgs/development/libraries/libsecret/default.nix
@@ -83,7 +83,7 @@ stdenv.mkDerivation rec {
     (lib.mesonBool "gtk_doc" withIntrospection)
   ];
 
-  doCheck = stdenv.isLinux && withIntrospection;
+  doCheck = stdenv.hostPlatform.isLinux && withIntrospection;
   separateDebugInfo = true;
 
   postPatch = ''
diff --git a/pkgs/development/libraries/libsegfault/default.nix b/pkgs/development/libraries/libsegfault/default.nix
index 58896c3e2bc27..e9f014381c5ba 100644
--- a/pkgs/development/libraries/libsegfault/default.nix
+++ b/pkgs/development/libraries/libsegfault/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     sha256 = "vKtY6ZEkyK2K+BzJCSo30f9MpERpPlUnarFIlvJ1Giw=";
   };
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin) "-DBOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED=1";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin) "-DBOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED=1";
 
   nativeBuildInputs = [
     meson
diff --git a/pkgs/development/libraries/libserdes/default.nix b/pkgs/development/libraries/libserdes/default.nix
index 11d10ff64d7c2..9c61d6a4079e4 100644
--- a/pkgs/development/libraries/libserdes/default.nix
+++ b/pkgs/development/libraries/libserdes/default.nix
@@ -13,7 +13,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libserdes";
-  version = "7.6.1";
+  version = "7.7.1";
 
   src = fetchFromGitHub {
     owner = "confluentinc";
diff --git a/pkgs/development/libraries/libserialport/default.nix b/pkgs/development/libraries/libserialport/default.nix
index 79f46ffca1f83..0b3314d9b0e14 100644
--- a/pkgs/development/libraries/libserialport/default.nix
+++ b/pkgs/development/libraries/libserialport/default.nix
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = lib.optional stdenv.isLinux udev
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.IOKit;
+  buildInputs = lib.optional stdenv.hostPlatform.isLinux udev
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.IOKit;
 
   meta = with lib; {
     description = "Cross-platform shared library for serial port access";
diff --git a/pkgs/development/libraries/libshout/default.nix b/pkgs/development/libraries/libshout/default.nix
index e9547cc2af930..8f97b09a3138d 100644
--- a/pkgs/development/libraries/libshout/default.nix
+++ b/pkgs/development/libraries/libshout/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config
-, libvorbis, libtheora, speex }:
+, openssl, libvorbis, libtheora, speex }:
 
 # need pkg-config so that libshout installs ${out}/lib/pkgconfig/shout.pc
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ pkg-config ];
-  propagatedBuildInputs = [ libvorbis libtheora speex ];
+  propagatedBuildInputs = [ openssl libvorbis libtheora speex ];
 
   meta = {
     description = "icecast 'c' language bindings";
diff --git a/pkgs/development/libraries/libshumate/default.nix b/pkgs/development/libraries/libshumate/default.nix
index d0e6e95ad0c7b..f449c5e1c1b74 100644
--- a/pkgs/development/libraries/libshumate/default.nix
+++ b/pkgs/development/libraries/libshumate/default.nix
@@ -22,14 +22,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libshumate";
-  version = "1.2.2";
+  version = "1.2.3";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
 
   src = fetchurl {
     url = "mirror://gnome/sources/libshumate/${lib.versions.majorMinor finalAttrs.version}/libshumate-${finalAttrs.version}.tar.xz";
-    hash = "sha256-b1h1effy1gs40/RyfrGo0v6snL3AGOU/9fdyqGCPpEs=";
+    hash = "sha256-TMbNc/bYcVX2J2arY+WqzEc72aDONZBpMqz8g56WTAw=";
   };
 
   depsBuildBuild = [
@@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Ddemos=true"
   ];
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   checkPhase = ''
     runHook preCheck
diff --git a/pkgs/development/libraries/libsidplayfp/default.nix b/pkgs/development/libraries/libsidplayfp/default.nix
index 095406cd5fbb9..803189719272b 100644
--- a/pkgs/development/libraries/libsidplayfp/default.nix
+++ b/pkgs/development/libraries/libsidplayfp/default.nix
@@ -18,14 +18,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libsidplayfp";
-  version = "2.8.0";
+  version = "2.9.0";
 
   src = fetchFromGitHub {
     owner = "libsidplayfp";
     repo = "libsidplayfp";
     rev = "v${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-qZharhEZ16q3Vd2PwVsKQaP/b6bT/okwEPKKwvRl5D8=";
+    hash = "sha256-m1bbbtNJvoY6l2+jMbEN/dR9V7LZ4f1lHHGnn0F4bmU=";
   };
 
   outputs = [
diff --git a/pkgs/development/libraries/libsignon-glib/default.nix b/pkgs/development/libraries/libsignon-glib/default.nix
index bdb6df0e52f89..95541c97eb89f 100644
--- a/pkgs/development/libraries/libsignon-glib/default.nix
+++ b/pkgs/development/libraries/libsignon-glib/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     description = "Library for managing single signon credentials which can be used from GLib applications";
     homepage = "https://gitlab.com/accounts-sso/libsignon-glib";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libsixel/default.nix b/pkgs/development/libraries/libsixel/default.nix
index 5bdaafc9f15c6..81f13acb340a6 100644
--- a/pkgs/development/libraries/libsixel/default.nix
+++ b/pkgs/development/libraries/libsixel/default.nix
@@ -5,7 +5,6 @@
 , ninja
 , gdk-pixbuf
 , gd
-, libjpeg
 , pkg-config
 }:
 stdenv.mkDerivation rec {
@@ -40,7 +39,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "SIXEL library for console graphics, and converter programs";
     homepage = "https://github.com/libsixel/libsixel";
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = [ ];
     license = licenses.mit;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/libskk/default.nix b/pkgs/development/libraries/libskk/default.nix
index 8256f0525bbc6..88b1991c5473a 100644
--- a/pkgs/development/libraries/libskk/default.nix
+++ b/pkgs/development/libraries/libskk/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub,
   libtool, gettext, pkg-config,
   vala, gnome-common, gobject-introspection,
-  libgee, json-glib, skk-dicts, libxkbcommon }:
+  libgee, json-glib, skkDictionaries, libxkbcommon }:
 
 stdenv.mkDerivation rec {
   pname = "libskk";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "0y279pcgs3jrsi9vzx086xhz9jbz23dqqijp4agygc9ackp9sxy5";
   };
 
-  buildInputs = [ skk-dicts libxkbcommon ];
+  buildInputs = [ libxkbcommon ];
   nativeBuildInputs = [ vala gnome-common gobject-introspection libtool gettext pkg-config ];
   propagatedBuildInputs = [ libgee json-glib ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   preInstall = ''
     dictDir=$out/share/skk
     mkdir -p $dictDir
-    ln -s ${skk-dicts}/share/SKK-JISYO.L $dictDir/
+    ln -s ${skkDictionaries.l}/share/skk/SKK-JISYO.L $dictDir/
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/libslirp/default.nix b/pkgs/development/libraries/libslirp/default.nix
index 9ce3241e8fbb4..a8a8c3e77e08b 100644
--- a/pkgs/development/libraries/libslirp/default.nix
+++ b/pkgs/development/libraries/libslirp/default.nix
@@ -9,14 +9,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libslirp";
-  version = "4.7.0";
+  version = "4.8.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "slirp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-avUbgXPPV3IhUwZyARxCvctbVlLqDKWmMhAjdVBA3jY=";
+    sha256 = "sha256-t2LpOPx+S2iABQv3+xFdHj/FjWns40cNKToDKMZhAuw=";
   };
 
   separateDebugInfo = true;
diff --git a/pkgs/development/libraries/libsndfile/default.nix b/pkgs/development/libraries/libsndfile/default.nix
index 0e1dfb0bc08b0..ad3ab58b0e13f 100644
--- a/pkgs/development/libraries/libsndfile/default.nix
+++ b/pkgs/development/libraries/libsndfile/default.nix
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook autogen pkg-config python3 ];
   buildInputs = [ flac lame libmpg123 libogg libopus libvorbis ]
-    ++ lib.optionals stdenv.isLinux [ alsa-lib ]
-    ++ lib.optionals stdenv.isDarwin [ Carbon AudioToolbox ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon AudioToolbox ];
 
   enableParallelBuilding = true;
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   # need headers from the Carbon.framework in /System/Library/Frameworks to
   # compile this on darwin -- not sure how to handle
-  preConfigure = lib.optionalString stdenv.isDarwin
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin
     ''
       NIX_CFLAGS_COMPILE+=" -I$SDKROOT/System/Library/Frameworks/Carbon.framework/Versions/A/Headers"
     '';
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     changelog   = "https://github.com/libsndfile/libsndfile/releases/tag/${version}";
     license     = licenses.lgpl2Plus;
     maintainers = with maintainers; [ lovek323 ];
-    platforms   = platforms.unix;
+    platforms   = platforms.all;
 
     longDescription = ''
       Libsndfile is a C library for reading and writing files containing
diff --git a/pkgs/development/libraries/libsodium/default.nix b/pkgs/development/libraries/libsodium/default.nix
index ac304ce31a048..a9de633d46d7e 100644
--- a/pkgs/development/libraries/libsodium/default.nix
+++ b/pkgs/development/libraries/libsodium/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.0.20";
 
   src = fetchurl {
-    url = "https://download.libsodium.org/libsodium/releases/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "https://download.libsodium.org/libsodium/releases/libsodium-${finalAttrs.version}.tar.gz";
     hash = "sha256-67Ze9spDkzPCu0GgwZkFhyiNoH9sf9B8s6GMwY0wzhk=";
   };
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  separateDebugInfo = stdenv.isLinux && stdenv.hostPlatform.libc != "musl";
+  separateDebugInfo = stdenv.hostPlatform.isLinux && stdenv.hostPlatform.libc != "musl";
 
   enableParallelBuilding = true;
   hardeningDisable = lib.optional (stdenv.hostPlatform.isMusl && stdenv.hostPlatform.isx86_32) "stackprotector";
diff --git a/pkgs/development/libraries/libsolv/default.nix b/pkgs/development/libraries/libsolv/default.nix
index d8c49efd43caa..df40a06339882 100644
--- a/pkgs/development/libraries/libsolv/default.nix
+++ b/pkgs/development/libraries/libsolv/default.nix
@@ -10,21 +10,21 @@
 , zchunk
 , zstd
 , expat
-, withRpm ? !stdenv.isDarwin
+, withRpm ? !stdenv.hostPlatform.isDarwin
 , rpm
 , db
 , withConda ? true
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.29";
+  version = "0.7.30";
   pname = "libsolv";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "libsolv";
     rev = version;
-    hash = "sha256-867sCGFvKib1As9BCiCi6LYVrLUK0pjtM5Bw9Yuu0D8=";
+    hash = "sha256-De2lQu80MjKvjnN0W3/Y9JwFbA8g7tleflVXC9Lib5Y=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/libsoundio/default.nix b/pkgs/development/libraries/libsoundio/default.nix
index b7de8bf04e888..c4b5016282723 100644
--- a/pkgs/development/libraries/libsoundio/default.nix
+++ b/pkgs/development/libraries/libsoundio/default.nix
@@ -14,14 +14,14 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ libjack2 ]
-    ++ lib.optionals stdenv.isLinux [ libpulseaudio alsa-lib ]
-    ++ lib.optional stdenv.isDarwin AudioUnit;
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libpulseaudio alsa-lib ]
+    ++ lib.optional stdenv.hostPlatform.isDarwin AudioUnit;
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-DBUILD_TESTS=OFF"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-strict-prototypes";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-Wno-strict-prototypes";
 
   meta = with lib; {
     description = "Cross platform audio input and output";
diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix
index 4d5f30cf0b6e8..b0588373dee3c 100644
--- a/pkgs/development/libraries/libsoup/3.x.nix
+++ b/pkgs/development/libraries/libsoup/3.x.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     glib.out
     brotli
     libnghttp2
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libsysprof-capture
   ];
 
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
 
     (lib.mesonEnable "docs" withIntrospection)
     (lib.mesonEnable "introspection" withIntrospection)
-    (lib.mesonEnable "sysprof" stdenv.isLinux)
+    (lib.mesonEnable "sysprof" stdenv.hostPlatform.isLinux)
     (lib.mesonEnable "vapi" withIntrospection)
   ];
 
diff --git a/pkgs/development/libraries/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix
index e92c59bc2f2c0..a88cd93553269 100644
--- a/pkgs/development/libraries/libsoup/default.nix
+++ b/pkgs/development/libraries/libsoup/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     libpsl
     glib.out
     brotli
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libsysprof-capture
   ];
 
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     "-Dintrospection=${if withIntrospection then "enabled" else "disabled"}"
     "-Dgnome=${lib.boolToString gnomeSupport}"
     "-Dntlm=disabled"
-  ] ++ lib.optionals (!stdenv.isLinux) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Dsysprof=disabled"
   ];
 
diff --git a/pkgs/development/libraries/libspatialindex/default.nix b/pkgs/development/libraries/libspatialindex/default.nix
deleted file mode 100644
index e1f93c8224714..0000000000000
--- a/pkgs/development/libraries/libspatialindex/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libspatialindex";
-  version = "1.9.3";
-
-  src = fetchFromGitHub {
-    owner = "libspatialindex";
-    repo = "libspatialindex";
-    rev = finalAttrs.version;
-    hash = "sha256-zsvS0IkCXyuNLCQpccKdAsFKoq0l+y66ifXlTHLNTkc=";
-  };
-
-  patches = [
-    # Allow building static libs
-    (fetchpatch {
-      name = "fix-static-lib-build.patch";
-      url = "https://github.com/libspatialindex/libspatialindex/commit/caee28d84685071da3ff3a4ea57ff0b6ae64fc87.patch";
-      hash = "sha256-nvTW/t9tw1ZLeycJY8nj7rQgZogxQb765Ca2b9NDvRo=";
-    })
-  ];
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [
-    "-DSIDX_BUILD_TESTS=${if finalAttrs.finalPackage.doCheck then "ON" else "OFF"}"
-  ];
-
-  doCheck = true;
-
-  meta = with lib; {
-    description = "Extensible spatial index library in C++";
-    homepage = "https://libspatialindex.org";
-    license = licenses.mit;
-    maintainers = teams.geospatial.members;
-    platforms = platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/libspatialite/default.nix b/pkgs/development/libraries/libspatialite/default.nix
index b8d1fe45e44ee..8eeec2dbfe0c1 100644
--- a/pkgs/development/libraries/libspatialite/default.nix
+++ b/pkgs/development/libraries/libspatialite/default.nix
@@ -11,6 +11,7 @@
 , proj
 , sqlite
 , libiconv
+, zlib
 }:
 
 stdenv.mkDerivation rec {
@@ -34,17 +35,18 @@ stdenv.mkDerivation rec {
     freexl
     geos
     librttopo
-    libxml2
+    (libxml2.override { enableHttp = true; })
     minizip
     proj
     sqlite
-  ] ++ lib.optionals stdenv.isDarwin [
+    zlib
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv
   ];
 
   enableParallelBuilding = true;
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     ln -s $out/lib/mod_spatialite.{so,dylib}
   '';
 
diff --git a/pkgs/development/libraries/libspiro/default.nix b/pkgs/development/libraries/libspiro/default.nix
index f583900e35d95..c14117305f04b 100644
--- a/pkgs/development/libraries/libspiro/default.nix
+++ b/pkgs/development/libraries/libspiro/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libspiro";
-  version = "20221101";
+  version = "20240903";
 
   src = fetchFromGitHub {
     owner = "fontforge";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/9UCrdq69RO22593qiA8pZ4qfY9UVGqlGYB9zatsOgw=";
+    sha256 = "sha256-psEF1SWkire6ngEUcMU0xnGYaT8ktqDCBlBckToGUMg=";
   };
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
diff --git a/pkgs/development/libraries/libspnav/default.nix b/pkgs/development/libraries/libspnav/default.nix
index d67b12a726b47..6a60bdb7f0905 100644
--- a/pkgs/development/libraries/libspnav/default.nix
+++ b/pkgs/development/libraries/libspnav/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "098h1jhlj87axpza5zgy58prp0zn94wyrbch6x0s7q4mzh7dc8ba";
   };
 
-  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
   buildInputs = [ libX11 ];
 
   patches = [
diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix
index 65770cb657101..e548b011f66d1 100644
--- a/pkgs/development/libraries/libssh2/default.nix
+++ b/pkgs/development/libraries/libssh2/default.nix
@@ -1,4 +1,17 @@
-{ lib, stdenv, fetchurl, openssl, zlib, windows }:
+{ lib
+, stdenv
+, fetchurl
+, openssl
+, zlib
+, windows
+
+# for passthru.tests
+, aria2
+, curl
+, libgit2
+, mc
+, vlc
+}:
 
 stdenv.mkDerivation rec {
   pname = "libssh2";
@@ -27,11 +40,16 @@ stdenv.mkDerivation rec {
   buildInputs = [ zlib ]
     ++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64;
 
+  passthru.tests = {
+    inherit aria2 libgit2 mc vlc;
+    curl = (curl.override { scpSupport = true; }).tests.withCheck;
+  };
+
   meta = with lib; {
     description = "Client-side C library implementing the SSH2 protocol";
     homepage = "https://www.libssh2.org";
     platforms = platforms.all;
-    license = with licenses; [ bsd3 libssh2 ];
+    license = with licenses; [ bsd3 ];
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/pkgs/development/libraries/libstatgrab/default.nix b/pkgs/development/libraries/libstatgrab/default.nix
index e5a17b68e0831..9b45ffb58ce7b 100644
--- a/pkgs/development/libraries/libstatgrab/default.nix
+++ b/pkgs/development/libraries/libstatgrab/default.nix
@@ -13,12 +13,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-VoiqSmhVR9cXSoo3PqnY7pJ+dm48wwK97jRSPCxdbBE=";
   };
 
-  buildInputs = lib.optional stdenv.isDarwin IOKit;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin IOKit;
 
   meta = with lib; {
     homepage = "https://www.i-scream.org/libstatgrab/";
     description = "Library that provides cross platforms access to statistics about the running system";
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     license = licenses.gpl2;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/libsurvive/default.nix b/pkgs/development/libraries/libsurvive/default.nix
index dc282886b9637..53ebe6f18e411 100644
--- a/pkgs/development/libraries/libsurvive/default.nix
+++ b/pkgs/development/libraries/libsurvive/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, freeglut
+, libglut
 , lapack
 , libusb1
 , blas
@@ -20,13 +20,13 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     # Fixes 'Unknown CMake command "cnkalman_generate_code"'
     fetchSubmodules = true;
-    sha256 = "sha256-NcxdTKra+YkLt/iu9+1QCeQZLV3/qlhma2Ns/+ZYVsk=";
+    hash = "sha256-NcxdTKra+YkLt/iu9+1QCeQZLV3/qlhma2Ns/+ZYVsk=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [
-    freeglut
+    libglut
     lapack
     libusb1
     blas
diff --git a/pkgs/development/libraries/libsvm/default.nix b/pkgs/development/libraries/libsvm/default.nix
index c3e168999e32a..1fd5141c9084f 100644
--- a/pkgs/development/libraries/libsvm/default.nix
+++ b/pkgs/development/libraries/libsvm/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libsvm";
-  version = "3.32";
+  version = "3.33";
 
   src = fetchurl {
     url = "https://www.csie.ntu.edu.tw/~cjlin/libsvm/libsvm-${version}.tar.gz";
-    sha256 = "sha256-hkTMZRjKiLvFDYyOrRc08aubbxcBcEXvmuOHc6plPa0=";
+    sha256 = "sha256-1doSzMPQ7thFP732+sfZ8AUvPopfB6IXTk7wqdg9zfg=";
   };
 
   patches = lib.optionals withOpenMP [ ./openmp.patch ];
@@ -23,13 +23,13 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "bin" "dev" ];
 
-  nativeBuildInputs = lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
+  nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
 
   installPhase =
     let
       libSuff = stdenv.hostPlatform.extensions.sharedLibrary;
       soVersion = "3";
-      libName = if stdenv.isDarwin then "libsvm.${soVersion}${libSuff}" else "libsvm${libSuff}.${soVersion}";
+      libName = if stdenv.hostPlatform.isDarwin then "libsvm.${soVersion}${libSuff}" else "libsvm${libSuff}.${soVersion}";
     in
     ''
       runHook preInstall
diff --git a/pkgs/development/libraries/libtap/default.nix b/pkgs/development/libraries/libtap/default.nix
deleted file mode 100644
index 46b2e492cb353..0000000000000
--- a/pkgs/development/libraries/libtap/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, cmake, perl }:
-
-stdenv.mkDerivation rec {
-
-  pname = "libtap";
-  version = "1.14.0";
-
-  src = fetchurl {
-    url = "https://web-cpan.shlomifish.org/downloads/${pname}-${version}.tar.xz";
-    sha256 = "1ga7rqmppa8ady665736cx443icscqlgflkqmxd4xbkzypmdj9bk";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  propagatedBuildInputs = [ cmake perl ];
-
-  meta = with lib; {
-    description = "Library to implement a test protocol";
-    longDescription = ''
-      libtap is a library to implement the Test Anything Protocol for
-      C originally created by Nik Clayton. This is a maintenance
-      branch by Shlomi Fish.
-    '';
-    homepage = "https://www.shlomifish.org/open-source/projects/libtap/";
-    license = licenses.bsd3;
-    maintainers = [ maintainers.AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libtasn1/default.nix b/pkgs/development/libraries/libtasn1/default.nix
index 3c630bac630de..069d8706e74df 100644
--- a/pkgs/development/libraries/libtasn1/default.nix
+++ b/pkgs/development/libraries/libtasn1/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ texinfo perl ];
 
   doCheck = true;
-  preCheck = if stdenv.isDarwin then
+  preCheck = if stdenv.hostPlatform.isDarwin then
     "export DYLD_LIBRARY_PATH=`pwd`/lib/.libs"
   else
     null;
diff --git a/pkgs/development/libraries/libtcod/default.nix b/pkgs/development/libraries/libtcod/default.nix
deleted file mode 100644
index 3674f25b46590..0000000000000
--- a/pkgs/development/libraries/libtcod/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchFromBitbucket, cmake, SDL, libGLU, libGL, upx, zlib }:
-
-stdenv.mkDerivation {
-
-  pname = "libtcod";
-  version = "1.5.1";
-
-  src = fetchFromBitbucket {
-    owner = "libtcod";
-    repo = "libtcod";
-    rev = "1.5.1";
-    sha256 = "1ibsnmnim712npxkqklc5ibnd32hgsx2yzyfzzc5fis5mhinbl63";
-  };
-
-  prePatch = ''
-    sed -i CMakeLists.txt \
-      -e "s,SET(ROOT_DIR.*,SET(ROOT_DIR $out),g" \
-      -e "s,SET(INSTALL_DIR.*,SET(INSTALL_DIR $out),g"
-    echo 'INSTALL(DIRECTORY include DESTINATION .)' >> CMakeLists.txt
-  '';
-
-  cmakeFlags = [ "-DLIBTCOD_SAMPLES=OFF" ];
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ SDL libGLU libGL upx zlib ];
-
-  meta = {
-    description = "API for roguelike games";
-    homepage = "http://roguecentral.org/doryen/libtcod/";
-    license = lib.licenses.bsd3;
-    platforms = lib.platforms.linux;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-  };
-}
diff --git a/pkgs/development/libraries/libthai/default.nix b/pkgs/development/libraries/libthai/default.nix
index a88b427e3349a..a72bfc6f25d59 100644
--- a/pkgs/development/libraries/libthai/default.nix
+++ b/pkgs/development/libraries/libthai/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, makeWrapper, installShellFiles, pkg-config, libdatrie }:
+{ lib, stdenv, fetchurl, installShellFiles, pkg-config, libdatrie }:
 
 stdenv.mkDerivation rec {
   pname = "libthai";
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     description = "Set of Thai language support routines";
     license = licenses.lgpl21Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ crertel ];
     pkgConfigModules = [ "libthai" ];
   };
 }
diff --git a/pkgs/development/libraries/libtheora/default.nix b/pkgs/development/libraries/libtheora/default.nix
deleted file mode 100644
index 45b7e4caaf1dd..0000000000000
--- a/pkgs/development/libraries/libtheora/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv, fetchurl, libogg, libvorbis, pkg-config, autoreconfHook, fetchpatch }:
-
-stdenv.mkDerivation rec {
-  pname = "libtheora";
-  version = "1.1.1";
-
-  src = fetchurl {
-    url = "https://downloads.xiph.org/releases/theora/${pname}-${version}.tar.gz";
-    sha256 = "0swiaj8987n995rc7hw0asvpwhhzpjiws8kr3s6r44bqqib2k5a0";
-  };
-
-  patches = [
-    # fix error in autoconf scripts
-    (fetchpatch {
-      url = "https://github.com/xiph/theora/commit/28cc6dbd9b2a141df94f60993256a5fca368fa54.diff";
-      sha256 = "16jqrq4h1b3krj609vbpzd5845cvkbh3mwmjrcdg35m490p19x9k";
-    })
-  ] ++ lib.optionals stdenv.hostPlatform.isMinGW [
-    ./mingw-remove-export.patch
-  ];
-
-  configureFlags = [ "--disable-examples" ];
-
-  outputs = [ "out" "dev" "devdoc" ];
-  outputDoc = "devdoc";
-
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
-  propagatedBuildInputs = [ libogg libvorbis ];
-
-  meta = with lib; {
-    homepage = "https://www.theora.org/";
-    description = "Library for Theora, a free and open video compression format";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.unix ++ platforms.windows;
-  };
-}
diff --git a/pkgs/development/libraries/libtheora/mingw-remove-export.patch b/pkgs/development/libraries/libtheora/mingw-remove-export.patch
deleted file mode 100644
index bf0ffc07fc439..0000000000000
--- a/pkgs/development/libraries/libtheora/mingw-remove-export.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/win32/xmingw32/libtheoradec-all.def b/win32/xmingw32/libtheoradec-all.def
-index 566eeb3..4a2e766 100644
---- a/win32/xmingw32/libtheoradec-all.def
-+++ b/win32/xmingw32/libtheoradec-all.def
-@@ -1,4 +1,3 @@
--EXPORTS

- ; Old alpha API

- 	theora_version_string @ 1

- 	theora_version_number @ 2

-diff --git a/win32/xmingw32/libtheoraenc-all.def b/win32/xmingw32/libtheoraenc-all.def
-index 36d2dad..d1da2f4 100644
---- a/win32/xmingw32/libtheoraenc-all.def
-+++ b/win32/xmingw32/libtheoraenc-all.def
-@@ -1,4 +1,3 @@
--EXPORTS

- ; Old alpha API

- 	theora_encode_init @ 1

- 	theora_encode_YUVin @ 2

diff --git a/pkgs/development/libraries/libticalcs2/default.nix b/pkgs/development/libraries/libticalcs2/default.nix
index 2488a5bbb0b4a..551bfed8fc8b2 100644
--- a/pkgs/development/libraries/libticalcs2/default.nix
+++ b/pkgs/development/libraries/libticalcs2/default.nix
@@ -33,9 +33,9 @@ stdenv.mkDerivation rec {
     libticables2
     xz
     bzip2
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     acl
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libobjc
   ];
 
diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix
index f1e5c7da1803d..b66c8c288bc8b 100644
--- a/pkgs/development/libraries/libtiff/default.nix
+++ b/pkgs/development/libraries/libtiff/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, fetchpatch
 , nix-update-script
 
 , autoreconfHook
@@ -43,6 +44,15 @@ stdenv.mkDerivation (finalAttrs: {
     # libc++abi 11 has an `#include <version>`, this picks up files name
     # `version` in the project's include paths
     ./rename-version.patch
+    # Fix static linking of `libtiff` via `pkg-config` not working
+    # because `libtiff` does not declare `Lerc` dependency.
+    # nixpkgs has `lerc` >= 4 which provides a `.pc` file.
+    # TODO: Close when https://gitlab.com/libtiff/libtiff/-/merge_requests/633 is merged and available
+    (fetchpatch {
+      name = "libtiff-4.pc-Fix-Requires.private-missing-Lerc.patch";
+      url = "https://gitlab.com/libtiff/libtiff/-/commit/ea882c3c240c14a897b9be38d815cc1893aafa59.patch";
+      hash = "sha256-C0xA3k1sgKmGJjEnyG9UxhXqYBYShKUDQsyjhbEDJbQ=";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/development/libraries/libtiger/default.nix b/pkgs/development/libraries/libtiger/default.nix
index cd198dac309d1..149f5e65fc418 100644
--- a/pkgs/development/libraries/libtiger/default.nix
+++ b/pkgs/development/libraries/libtiger/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
   buildInputs = [ libkate pango cairo ]
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.ApplicationServices;
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.ApplicationServices;
 
   meta = {
     homepage = "https://code.google.com/archive/p/libtiger/";
diff --git a/pkgs/development/libraries/libtomcrypt/default.nix b/pkgs/development/libraries/libtomcrypt/default.nix
index 1457030f874cb..568d1a22c6a80 100644
--- a/pkgs/development/libraries/libtomcrypt/default.nix
+++ b/pkgs/development/libraries/libtomcrypt/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   # Fixes a build failure on aarch64-darwin. Define for all Darwin targets for when x86_64-darwin
   # upgrades to a newer SDK.
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-DTARGET_OS_IPHONE=0";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-DTARGET_OS_IPHONE=0";
 
   patches = [
     (fetchpatch {
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.libtom.net/LibTomCrypt/";
     changelog = "https://github.com/libtom/libtomcrypt/raw/v${version}/changes";
     license = with licenses; [ publicDomain wtfpl ];
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libtommath/default.nix b/pkgs/development/libraries/libtommath/default.nix
index 2501bc827faed..56225f96de8c4 100644
--- a/pkgs/development/libraries/libtommath/default.nix
+++ b/pkgs/development/libraries/libtommath/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   makefile = "makefile.shared";
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-DTARGET_OS_IPHONE=0";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-DTARGET_OS_IPHONE=0";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix b/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix
deleted file mode 100644
index 6b4be4b832a44..0000000000000
--- a/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, automake, autoconf
-, zlib, boost, openssl, libtool, python, libiconv, ncurses, SystemConfiguration
-}:
-
-let
-  version = "1.2.11";
-
-  # Make sure we override python, so the correct version is chosen
-  # for the bindings, if overridden
-  boostPython = boost.override { enablePython = true; inherit python; };
-
-in stdenv.mkDerivation {
-  pname = "libtorrent-rasterbar";
-  inherit version;
-
-  src = fetchFromGitHub {
-    owner = "arvidn";
-    repo = "libtorrent";
-    rev = "v${version}";
-    sha256 = "05qm8mcyxsnb6zb8nckln1gkk8ncwzfhsz7d7p3fhx6gdsc8j71b";
-  };
-
-  enableParallelBuilding = true;
-
-  nativeBuildInputs = [ automake autoconf libtool pkg-config ];
-
-  buildInputs = [ boostPython openssl zlib python libiconv ncurses ]
-    ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ];
-
-  preConfigure = "./autotool.sh";
-
-  postInstall = ''
-    moveToOutput "include" "$dev"
-    moveToOutput "lib/${python.libPrefix}" "$python"
-  '';
-
-  outputs = [ "out" "dev" "python" ];
-
-  configureFlags = [
-    "--enable-python-binding"
-    "--with-libiconv=yes"
-    "--with-boost=${boostPython.dev}"
-    "--with-boost-libdir=${boostPython.out}/lib"
-  ];
-
-  meta = with lib; {
-    homepage = "https://libtorrent.org/";
-    description = "C++ BitTorrent implementation focusing on efficiency and scalability";
-    license = licenses.bsd3;
-    maintainers = [ ];
-    broken = stdenv.isDarwin;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
deleted file mode 100644
index 118d143e2cd5e..0000000000000
--- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake
-, zlib, boost, openssl, python, ncurses, SystemConfiguration
-}:
-
-let
-  version = "2.0.10";
-
-  # Make sure we override python, so the correct version is chosen
-  boostPython = boost.override { enablePython = true; inherit python; };
-
-in stdenv.mkDerivation {
-  pname = "libtorrent-rasterbar";
-  inherit version;
-
-  src = fetchFromGitHub {
-    owner = "arvidn";
-    repo = "libtorrent";
-    rev = "v${version}";
-    sha256 = "sha256-JrAYtoS8wNmmhbgnprD7vNz1N64ekIryjK77rAKTyaQ=";
-    fetchSubmodules = true;
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  buildInputs = [ boostPython openssl zlib python ncurses ]
-    ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ];
-
-  # https://github.com/arvidn/libtorrent/issues/6865
-  postPatch = ''
-    substituteInPlace cmake/Modules/GeneratePkgConfig.cmake \
-      --replace @CMAKE_INSTALL_PREFIX@/'$<'1: '$<'1:
-    substituteInPlace cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in \
-      --replace 'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")' \
-                'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")
-                 set(_INSTALL_FULL_LIBDIR "@CMAKE_INSTALL_FULL_LIBDIR@")'
-    substituteInPlace cmake/Modules/GeneratePkgConfig/pkg-config.cmake.in \
-      --replace '$'{prefix}/@_INSTALL_LIBDIR@ @_INSTALL_FULL_LIBDIR@
-  '';
-
-  postInstall = ''
-    moveToOutput "include" "$dev"
-    moveToOutput "lib/${python.libPrefix}" "$python"
-  '';
-
-  postFixup = ''
-    substituteInPlace "$dev/lib/cmake/LibtorrentRasterbar/LibtorrentRasterbarTargets-release.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib" "$out/lib"
-  '';
-
-  outputs = [ "out" "dev" "python" ];
-
-  cmakeFlags = [
-    "-Dpython-bindings=on"
-  ];
-
-  meta = with lib; {
-    homepage = "https://libtorrent.org/";
-    description = "C++ BitTorrent implementation focusing on efficiency and scalability";
-    license = licenses.bsd3;
-    maintainers = [ ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libtsm/default.nix b/pkgs/development/libraries/libtsm/default.nix
index c8e00cf4a9419..bcf9270a7158e 100644
--- a/pkgs/development/libraries/libtsm/default.nix
+++ b/pkgs/development/libraries/libtsm/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     description = "Terminal-emulator State Machine";
     homepage = "https://www.freedesktop.org/wiki/Software/kmscon/libtsm/";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libubox/default.nix b/pkgs/development/libraries/libubox/default.nix
index e48748308bb2c..1a3a89a2d71d1 100644
--- a/pkgs/development/libraries/libubox/default.nix
+++ b/pkgs/development/libraries/libubox/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
     done
   '';
 
-  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     "-Wno-error=gnu-folding-constant"
   ]);
 
diff --git a/pkgs/development/libraries/libuchardet/default.nix b/pkgs/development/libraries/libuchardet/default.nix
index 642c39e5974a1..12f210593107e 100644
--- a/pkgs/development/libraries/libuchardet/default.nix
+++ b/pkgs/development/libraries/libuchardet/default.nix
@@ -13,14 +13,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  doCheck = !stdenv.isi686; # tests fail on i686
+  doCheck = !stdenv.hostPlatform.isi686; # tests fail on i686
 
   meta = with lib; {
     description = "Mozilla's Universal Charset Detector C/C++ API";
     mainProgram = "uchardet";
     homepage = "https://www.freedesktop.org/wiki/Software/uchardet/";
     license = licenses.mpl11;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/development/libraries/libucl/default.nix b/pkgs/development/libraries/libucl/default.nix
index 6275a85e6ee2e..0adb3a66465ef 100644
--- a/pkgs/development/libraries/libucl/default.nix
+++ b/pkgs/development/libraries/libucl/default.nix
@@ -36,17 +36,15 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
 
-  buildInputs = with lib;
-    concatLists (
-      mapAttrsToList (feat: enabled:
-        optionals enabled (featureDeps."${feat}" or [])
+  buildInputs = lib.concatLists (
+      lib.mapAttrsToList (feat: enabled:
+        lib.optionals enabled (featureDeps."${feat}" or [])
       ) features
     );
 
   enableParallelBuilding = true;
 
-  configureFlags = with lib;
-    mapAttrsToList (feat: enabled: strings.enableFeature enabled feat) features;
+  configureFlags = lib.mapAttrsToList (feat: enabled: lib.strings.enableFeature enabled feat) features;
 
   meta = with lib; {
     description = "Universal configuration library parser";
diff --git a/pkgs/development/libraries/libui/default.nix b/pkgs/development/libraries/libui/default.nix
index a798977b1f413..77197986343f6 100644
--- a/pkgs/development/libraries/libui/default.nix
+++ b/pkgs/development/libraries/libui/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, gtk3, Cocoa }:
 
 let
-  backend   = if stdenv.isDarwin then "darwin" else "unix";
+  backend   = if stdenv.hostPlatform.isDarwin then "darwin" else "unix";
 in
 
 stdenv.mkDerivation rec {
@@ -15,20 +15,20 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  propagatedBuildInputs = lib.optional stdenv.isLinux gtk3
-    ++ lib.optionals stdenv.isDarwin [ Cocoa ];
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isLinux gtk3
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ];
 
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i 's/set(CMAKE_OSX_DEPLOYMENT_TARGET "10.8")//' ./CMakeLists.txt
   '';
 
   installPhase = ''
     mkdir -p $out/{include,lib}
     mkdir -p $out/lib/pkgconfig
-  '' + lib.optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.hostPlatform.isLinux ''
     mv ./out/libui.so.0 $out/lib/
     ln -s $out/lib/libui.so.0 $out/lib/libui.so
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     mv ./out/libui.A.dylib $out/lib/
     ln -s $out/lib/libui.A.dylib $out/lib/libui.dylib
   '' + ''
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       --subst-var-by out $out \
       --subst-var-by version "${version}"
   '';
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libui.A.dylib $out/lib/libui.A.dylib
   '';
 
diff --git a/pkgs/development/libraries/libuiohook/default.nix b/pkgs/development/libraries/libuiohook/default.nix
index 4fe42dad6c898..7d58b78149584 100644
--- a/pkgs/development/libraries/libuiohook/default.nix
+++ b/pkgs/development/libraries/libuiohook/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs =
-    if stdenv.isDarwin then [ AppKit ApplicationServices Carbon ]
+    if stdenv.hostPlatform.isDarwin then [ AppKit ApplicationServices Carbon ]
     else [
       libX11
       libxkbcommon
diff --git a/pkgs/development/libraries/libunarr/default.nix b/pkgs/development/libraries/libunarr/default.nix
index d73bed773dffc..c53196afe4201 100644
--- a/pkgs/development/libraries/libunarr/default.nix
+++ b/pkgs/development/libraries/libunarr/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-Mo76BOqZbdOJFrEkeozxdqwpuFyvkhdONNMZmN5BdNI=";
   };
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace CMakeLists.txt \
       --replace "-flto" "" \
       --replace "AppleClang" "Clang"
diff --git a/pkgs/development/libraries/libuninameslist/default.nix b/pkgs/development/libraries/libuninameslist/default.nix
index f0d153c700800..ff438f749fd8a 100644
--- a/pkgs/development/libraries/libuninameslist/default.nix
+++ b/pkgs/development/libraries/libuninameslist/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libuninameslist";
-  version = "20240524";
+  version = "20240910";
 
   src = fetchFromGitHub {
     owner = "fontforge";
-    repo = pname;
+    repo = "libuninameslist";
     rev = version;
-    sha256 = "sha256-LANwM0fhCsscXAdI/qGOmUWDzAhe3g9w3J68g4szDZQ=";
+    hash = "sha256-Pi30c3To57AzY59i39JVG2IUkGnq7CEAQkqJ1f5AZhw=";
   };
 
   nativeBuildInputs = [
@@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/fontforge/libuninameslist/";
+    changelog = "https://github.com/fontforge/libuninameslist/blob/${version}/ChangeLog";
     description = "Library of Unicode names and annotation data";
     license = licenses.bsd3;
     maintainers = with maintainers; [ erictapen ];
diff --git a/pkgs/development/libraries/libunistring/default.nix b/pkgs/development/libraries/libunistring/default.nix
index 51eb5558d626b..abf5f0df25589 100644
--- a/pkgs/development/libraries/libunistring/default.nix
+++ b/pkgs/development/libraries/libunistring/default.nix
@@ -1,41 +1,56 @@
-{ fetchurl, lib, stdenv, libiconv }:
+{
+  fetchurl,
+  lib,
+  stdenv,
+  libiconv,
+  updateAutotoolsGnuConfigScriptsHook,
+  darwin
+}:
 
 # Note: this package is used for bootstrapping fetchurl, and thus
 # cannot use fetchpatch! All mutable patches (generated by GitHub or
 # cgit) that are needed here should be included directly in Nixpkgs as
 # files.
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libunistring";
-  version = "1.1";
+  version = "1.2";
 
   src = fetchurl {
-    url = "mirror://gnu/libunistring/${pname}-${version}.tar.gz";
-    sha256 = "sha256-oiUr7uyDCsREufaNazitiD2xmRnbNbUiIs+CfDhb22o=";
+    url = "mirror://gnu/libunistring/libunistring-${finalAttrs.version}.tar.gz";
+    hash = "sha256-/W1WYvpwZIfEg0mnWLV7wUnOlOxsMGJOyf3Ec86rvI4=";
   };
 
-  outputs = [ "out" "dev" "info" "doc" ];
+  outputs = [
+    "out"
+    "dev"
+    "info"
+    "doc"
+  ];
 
   strictDeps = true;
-  propagatedBuildInputs = lib.optional (!stdenv.isLinux) libiconv;
-
-  configureFlags = [
-    "--with-libiconv-prefix=${libiconv}"
+  propagatedBuildInputs = lib.optional (!stdenv.hostPlatform.isLinux) libiconv;
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
+    darwin.apple_sdk.frameworks.CoreServices
   ];
+  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
+
+  configureFlags = [ "--with-libiconv-prefix=${libiconv}" ];
 
   doCheck = false;
 
-  /* This seems to cause several random failures like these, which I assume
-     is because of bad or missing target dependencies in their build system:
+  /*
+    This seems to cause several random failures like these, which I assume
+    is because of bad or missing target dependencies in their build system:
 
-        ./unistdio/test-u16-vasnprintf2.sh: line 16: ./test-u16-vasnprintf1: No such file or directory
-        FAIL unistdio/test-u16-vasnprintf2.sh (exit status: 1)
+      ./unistdio/test-u16-vasnprintf2.sh: line 16: ./test-u16-vasnprintf1: No such file or directory
+      FAIL unistdio/test-u16-vasnprintf2.sh (exit status: 1)
 
-        FAIL: unistdio/test-u16-vasnprintf3.sh
-        ======================================
+      FAIL: unistdio/test-u16-vasnprintf3.sh
+      ======================================
 
-        ./unistdio/test-u16-vasnprintf3.sh: line 16: ./test-u16-vasnprintf1: No such file or directory
-        FAIL unistdio/test-u16-vasnprintf3.sh (exit status: 1)
+      ./unistdio/test-u16-vasnprintf3.sh: line 16: ./test-u16-vasnprintf1: No such file or directory
+      FAIL unistdio/test-u16-vasnprintf3.sh (exit status: 1)
   */
   enableParallelChecking = false;
   enableParallelBuilding = true;
@@ -71,4 +86,4 @@ stdenv.mkDerivation rec {
     maintainers = [ ];
     platforms = lib.platforms.all;
   };
-}
+})
diff --git a/pkgs/development/libraries/libunity/default.nix b/pkgs/development/libraries/libunity/default.nix
index 066f23cf542aa..5905798ee8808 100644
--- a/pkgs/development/libraries/libunity/default.nix
+++ b/pkgs/development/libraries/libunity/default.nix
@@ -65,6 +65,6 @@ stdenv.mkDerivation {
     homepage = "https://launchpad.net/libunity";
     license = licenses.lgpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libunwind/default.nix b/pkgs/development/libraries/libunwind/default.nix
index 7999fa4971877..6f491a5c527f0 100644
--- a/pkgs/development/libraries/libunwind/default.nix
+++ b/pkgs/development/libraries/libunwind/default.nix
@@ -1,16 +1,24 @@
-{ stdenv, lib, fetchFromGitHub, autoreconfHook, xz, buildPackages }:
+{ stdenv, lib, fetchpatch, fetchFromGitHub, autoreconfHook, buildPackages
+, xz
+, testers
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libunwind";
   version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "libunwind";
     repo = "libunwind";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-rCFBHs6rCSnp5FEwbUR5veNNTqSQpFblAv8ebSPX0qE=";
   };
 
+  patches = lib.optional (stdenv.targetPlatform.useLLVM or false) (fetchpatch {
+    url = "https://github.com/libunwind/libunwind/pull/770/commits/a69d0f14c9e6c46e82ba6e02fcdedb2eb63b7f7f.patch";
+    hash = "sha256-9oBZimCXonNN++jJs3emp9w+q1aj3eNzvSKPgh92itA=";
+  });
+
   postPatch = if (stdenv.cc.isClang || stdenv.hostPlatform.isStatic) then ''
     substituteInPlace configure.ac --replace "-lgcc_s" ""
   '' else lib.optionalString stdenv.hostPlatform.isMusl ''
@@ -45,12 +53,18 @@ stdenv.mkDerivation rec {
 
   doCheck = false; # fails
 
+  passthru.tests.pkg-config = testers.hasPkgConfigModules {
+    package = finalAttrs.finalPackage;
+    versionCheck = true;
+  };
+
   meta = with lib; {
     homepage = "https://www.nongnu.org/libunwind";
     description = "Portable and efficient API to determine the call-chain of a program";
     maintainers = with maintainers; [ orivej ];
+    pkgConfigModules = [ "libunwind" "libunwind-coredump" "libunwind-generic" "libunwind-ptrace" "libunwind-setjmp" ];
     # https://github.com/libunwind/libunwind#libunwind
     platforms = [ "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7a-linux" "armv7l-linux" "i686-freebsd" "i686-linux" "loongarch64-linux" "mips64el-linux" "mipsel-linux" "powerpc64-linux" "powerpc64le-linux" "riscv64-linux" "s390x-linux" "x86_64-freebsd" "x86_64-linux" "x86_64-solaris" ];
     license = licenses.mit;
   };
-}
+})
diff --git a/pkgs/development/libraries/liburing/default.nix b/pkgs/development/libraries/liburing/default.nix
index a42aab3d59e8c..c35df57b6052f 100644
--- a/pkgs/development/libraries/liburing/default.nix
+++ b/pkgs/development/libraries/liburing/default.nix
@@ -1,44 +1,66 @@
-{ lib, stdenv, fetchgit }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+}:
 
 stdenv.mkDerivation rec {
   pname = "liburing";
-  version = "2.5";
+  version = "2.7";
 
-  src = fetchgit {
-    url    = "http://git.kernel.dk/${pname}";
-    rev    = "liburing-${version}";
-    sha256 = "sha256-hPyEZ0P1rfos53OCNd2OYFiqmv6TgpWaj5/xPLccCvM=";
+  src = fetchFromGitHub {
+    owner = "axboe";
+    repo = "liburing";
+    rev = "refs/tags/liburing-${version}";
+    hash = "sha256-WhNlO2opPM7v4LOLWpmzPv31++zmn5Hmb6Su9IQBDH8=";
   };
 
   separateDebugInfo = true;
   enableParallelBuilding = true;
   # Upstream's configure script is not autoconf generated, but a hand written one.
   setOutputFlags = false;
+  dontDisableStatic = true;
+  dontAddStaticConfigureFlags = true;
   configureFlags = [
     "--includedir=${placeholder "dev"}/include"
     "--mandir=${placeholder "man"}/share/man"
   ];
 
+  # mysterious link failure
+  hardeningDisable = [ "trivialautovarinit" ];
+
   # Doesn't recognize platform flags
-  configurePlatforms = [];
+  configurePlatforms = [ ];
 
-  outputs = [ "out" "bin" "dev" "man" ];
+  outputs = [
+    "out"
+    "bin"
+    "dev"
+    "man"
+  ];
 
   postInstall = ''
-    # Copy the examples into $bin. Most reverse dependency of this package should
-    # reference only the $out output
-    mkdir -p $bin/bin
-    cp ./examples/io_uring-cp examples/io_uring-test $bin/bin
-    cp ./examples/link-cp $bin/bin/io_uring-link-cp
-  '' + lib.optionalString stdenv.hostPlatform.isGnu ''
-    cp ./examples/ucontext-cp $bin/bin/io_uring-ucontext-cp
+    # Always builds both static and dynamic libraries, so we need to remove the
+    # libraries that don't match stdenv type.
+    rm $out/lib/liburing*${
+      if stdenv.hostPlatform.isStatic then ".so*" else ".a"
+    }
+
+    # Copy the examples into $bin. Most reverse dependency of
+    # this package should reference only the $out output
+    for file in $(find ./examples -executable -type f); do
+      install -Dm555 -t "$bin/bin" "$file"
+    done
   '';
 
   meta = with lib; {
     description = "Userspace library for the Linux io_uring API";
-    homepage    = "https://git.kernel.dk/cgit/liburing/";
-    license     = licenses.lgpl21;
-    platforms   = platforms.linux;
-    maintainers = with maintainers; [ thoughtpolice nickcao ];
+    homepage = "https://github.com/axboe/liburing";
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [
+      thoughtpolice
+      nickcao
+    ];
   };
 }
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index bd8561e0e8a3f..f03ae09b2895e 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -4,7 +4,7 @@
 , autoreconfHook
 , doxygen
 , pkg-config
-, enableUdev ? stdenv.isLinux && !stdenv.hostPlatform.isStatic
+, enableUdev ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isStatic
 , udev
 , libobjc
 , IOKit
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals withDocs [ doxygen ];
   propagatedBuildInputs =
     lib.optional enableUdev udev ++
-    lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
+    lib.optionals stdenv.hostPlatform.isDarwin [ libobjc IOKit Security ];
 
   dontDisableStatic = withStatic;
 
diff --git a/pkgs/development/libraries/libusbgx/default.nix b/pkgs/development/libraries/libusbgx/default.nix
index 1f6e8f1697729..dacaf6d42da9e 100644
--- a/pkgs/development/libraries/libusbgx/default.nix
+++ b/pkgs/development/libraries/libusbgx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, cmake, bash-completion, pkg-config, libconfig, autoreconfHook }:
+{ stdenv, lib, fetchFromGitHub, pkg-config, libconfig, autoreconfHook }:
 stdenv.mkDerivation {
   pname = "libusbgx";
   version = "unstable-2021-10-31";
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
       lgpl21Plus # library
       gpl2Plus # examples
     ];
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libusbmuxd/default.nix b/pkgs/development/libraries/libusbmuxd/default.nix
deleted file mode 100644
index 33c821302cb2e..0000000000000
--- a/pkgs/development/libraries/libusbmuxd/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, pkg-config
-, libplist
-, libimobiledevice-glue
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libusbmuxd";
-  version = "2.0.2+date=2023-04-30";
-
-  src = fetchFromGitHub {
-    owner = "libimobiledevice";
-    repo = pname;
-    rev = "f47c36f5bd2a653a3bd7fb1cf1d2c50b0e6193fb";
-    hash = "sha256-ojFnFD0lcdJLP27oFukwzkG5THx1QE+tRBsaMj4ZCc4=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-  ];
-
-  buildInputs = [
-    libplist
-    libimobiledevice-glue
-  ];
-
-  preAutoreconf = ''
-    export RELEASE_VERSION=${version}
-  '';
-
-  meta = with lib; {
-    description = "Client library to multiplex connections from and to iOS devices";
-    homepage = "https://github.com/libimobiledevice/libusbmuxd";
-    license = licenses.lgpl21Plus;
-    platforms = platforms.unix;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/libraries/libusbsio/default.nix b/pkgs/development/libraries/libusbsio/default.nix
index 090683898a16d..21c7e3f1396ec 100644
--- a/pkgs/development/libraries/libusbsio/default.nix
+++ b/pkgs/development/libraries/libusbsio/default.nix
@@ -28,17 +28,17 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
   buildInputs = [
     libusb1
-  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     AppKit
     CoreFoundation
     IOKit
-  ]) ++ lib.optionals stdenv.isLinux [
+  ]) ++ lib.optionals stdenv.hostPlatform.isLinux [
     systemdMinimal # libudev
   ];
 
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index 82a37d0434d0a..8d1d36344d7e1 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
       "tcp_bind6_error_addrinuse" "tcp_bind_error_addrinuse_listen"
       # https://github.com/libuv/libuv/pull/4075#issuecomment-1935572237
       "thread_priority"
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
         # Sometimes: timeout (no output), failed uv_listen. Someone
         # should report these failures to libuv team. There tests should
         # be much more robust.
@@ -71,10 +71,10 @@ stdenv.mkDerivation (finalAttrs: {
         "fs_event_watch_dir_recursive" "fs_event_watch_file"
         "fs_event_watch_file_current_dir" "fs_event_watch_file_exact_path"
         "process_priority" "udp_create_early_bad_bind"
-    ] ++ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+    ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
         # fail on macos < 10.15 (starting in libuv 1.47.0)
         "fs_write_alotof_bufs_with_offset" "fs_write_multiple_bufs" "fs_read_bufs"
-    ] ++ lib.optionals stdenv.isAarch32 [
+    ] ++ lib.optionals stdenv.hostPlatform.isAarch32 [
       # I observe this test failing with some regularity on ARMv7:
       # https://github.com/libuv/libuv/issues/1871
       "shutdown_close_pipe"
@@ -120,7 +120,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage    = "https://libuv.org/";
     changelog   = "https://github.com/libuv/libuv/blob/v${finalAttrs.version}/ChangeLog";
     pkgConfigModules = [ "libuv" ];
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms   = platforms.all;
     license     = with licenses; [ mit isc bsd2 bsd3 cc-by-40 ];
   };
diff --git a/pkgs/development/libraries/libva/1.nix b/pkgs/development/libraries/libva/1.nix
index 63be647f015a7..15e4d0a9e8017 100644
--- a/pkgs/development/libraries/libva/1.nix
+++ b/pkgs/development/libraries/libva/1.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   # TODO: share libs between minimal and !minimal - perhaps just symlink them
 
   # Add FHS paths for non-NixOS applications.
-  configureFlags = [ "--with-drivers-path=${mesa.drivers.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri" ]
+  configureFlags = lib.optionals stdenv.hostPlatform.isLinux [ "--with-drivers-path=${mesa.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri" ]
     ++ lib.optionals (!minimal) [ "--enable-glx" ];
 
   installFlags = [ "dummy_drv_video_ladir=$(out)/lib/dri" ];
diff --git a/pkgs/development/libraries/libva/default.nix b/pkgs/development/libraries/libva/default.nix
index eceba4ac8ebf0..f88404682b44c 100644
--- a/pkgs/development/libraries/libva/default.nix
+++ b/pkgs/development/libraries/libva/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libva" + lib.optionalString minimal "-minimal";
-  version = "2.21.0";
+  version = "2.22.0";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "libva";
     rev    = finalAttrs.version;
-    sha256 = "sha256-X9H5nxbYFSMfxZMxs3iWwCgdrJ2FTVWW7tlgQek3WIg=";
+    sha256 = "sha256-0eOYxyMt2M2lkhoWOhoUQgP/1LYY3QQqSF5TdRUuCbs=";
   };
 
   outputs = [ "dev" "out" ];
@@ -33,11 +33,17 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [ libdrm ]
     ++ lib.optionals (!minimal) [ libX11 libXext libXfixes wayland libffi libGL ];
 
-  mesonFlags = [
+  mesonFlags = lib.optionals stdenv.hostPlatform.isLinux [
     # Add FHS and Debian paths for non-NixOS applications
-    "-Ddriverdir=${mesa.drivers.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri:/usr/lib/x86_64-linux-gnu/dri:/usr/lib/i386-linux-gnu/dri"
+    "-Ddriverdir=${mesa.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri:/usr/lib/x86_64-linux-gnu/dri:/usr/lib/i386-linux-gnu/dri"
   ];
 
+  env = lib.optionalAttrs (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17") {
+    NIX_LDFLAGS = "--undefined-version";
+  } // lib.optionalAttrs (stdenv.targetPlatform.useLLVM or false) {
+    NIX_CFLAGS_COMPILE = "-DHAVE_SECURE_GETENV";
+  };
+
   passthru.tests = {
     # other drivers depending on libva and selected application users.
     # Please get a confirmation from the maintainer before adding more applications.
diff --git a/pkgs/development/libraries/libvarlink/default.nix b/pkgs/development/libraries/libvarlink/default.nix
index 0efca00a3e100..28a80052def87 100644
--- a/pkgs/development/libraries/libvarlink/default.nix
+++ b/pkgs/development/libraries/libvarlink/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "varlink";
-    repo = finalAttrs.pname;
+    repo = "libvarlink";
     rev = finalAttrs.version;
     sha256 = "sha256-oUy9HhybNMjRBWoqqal1Mw8cC5RddgN4izxAl0cgnKE=";
   };
diff --git a/pkgs/development/libraries/libvdpau/default.nix b/pkgs/development/libraries/libvdpau/default.nix
index 906a3c59234a3..75c61995071e2 100644
--- a/pkgs/development/libraries/libvdpau/default.nix
+++ b/pkgs/development/libraries/libvdpau/default.nix
@@ -17,10 +17,9 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ xorg.libX11 ];
 
-  mesonFlags = lib.optionals stdenv.isLinux
-    [ "-Dmoduledir=${mesa.drivers.driverLink}/lib/vdpau" ];
+  mesonFlags = lib.optionals stdenv.hostPlatform.isLinux [ "-Dmoduledir=${mesa.driverLink}/lib/vdpau" ];
 
-  NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-lX11";
+  NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-lX11";
 
   meta = with lib; {
     homepage = "https://www.freedesktop.org/wiki/Software/VDPAU/";
diff --git a/pkgs/development/libraries/libverto/default.nix b/pkgs/development/libraries/libverto/default.nix
deleted file mode 100644
index d161f2b92b2b5..0000000000000
--- a/pkgs/development/libraries/libverto/default.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, glib
-, libev
-, libevent
-, pkg-config
-, glibSupport ? true
-, libevSupport ? true
-, libeventSupport ? true
-}:
-
-let
-  inherit (lib) optional;
-in
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libverto";
-  version = "0.3.2";
-
-  src = fetchFromGitHub {
-    owner = "latchset";
-    repo = "libverto";
-    rev = finalAttrs.version;
-    hash = "sha256-csoJ0WdKyrza8kBSMKoaItKvcbijI6Wl8nWCbywPScQ=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-  ];
-
-  buildInputs =
-    optional glibSupport glib
-    ++ optional libevSupport libev
-    ++ optional libeventSupport libevent;
-
-  meta = with lib; {
-    homepage = "https://github.com/latchset/libverto";
-    description = "Asynchronous event loop abstraction library";
-    longDescription = ''
-      Libverto exists to solve an important problem: many applications and
-      libraries are unable to write asynchronous code because they are unable to
-      pick an event loop. This is particularly true of libraries who want to be
-      useful to many applications who use loops that do not integrate with one
-      another or which use home-grown loops. libverto provides a loop-neutral
-      async api which allows the library to expose asynchronous interfaces and
-      offload the choice of the main loop to the application.
-    '';
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix
index b01a9a788bad7..c750d2a255513 100644
--- a/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/pkgs/development/libraries/libvirt-glib/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libvirt
     libxml2
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libcap_ng
   ];
 
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index 097f19a29366f..f6e5807f69581 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -9,7 +9,6 @@
 , dnsmasq
 , docutils
 , fetchFromGitLab
-, fetchpatch
 , gettext
 , glib
 , gnutls
@@ -73,14 +72,14 @@
 , enableIscsi ? false
 , openiscsi
 , libiscsi
-, enableXen ? false
+, enableXen ? stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64
 , xen
-, enableZfs ? stdenv.isLinux
+, enableZfs ? stdenv.hostPlatform.isLinux
 , zfs
 }:
 
 let
-  inherit (stdenv) isDarwin isLinux isx86_64;
+  inherit (stdenv.hostPlatform) isDarwin isLinux isx86_64;
   binPath = lib.makeBinPath ([
     dnsmasq
   ] ++ lib.optionals isLinux [
@@ -115,13 +114,13 @@ stdenv.mkDerivation rec {
   # NOTE: You must also bump:
   # <nixpkgs/pkgs/development/python-modules/libvirt/default.nix>
   # SysVirt in <nixpkgs/pkgs/top-level/perl-packages.nix>
-  version = "10.4.0";
+  version = "10.5.0";
 
   src = fetchFromGitLab {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-grQyILVy0IYbbz/Wau8QRfCub7j+5nhnkfs2tprfpO0=";
+    hash = "sha256-Nku4l1f34NOUr23KWDH9uZu72OgMK3KfYjsRRbuTvf8=";
     fetchSubmodules = true;
   };
 
@@ -163,6 +162,12 @@ stdenv.mkDerivation rec {
     sed -i '/qemuhotplugtest/d' tests/meson.build
     sed -i '/qemuvhostusertest/d' tests/meson.build
     sed -i '/qemuxml2xmltest/d' tests/meson.build
+    sed -i '/domaincapstest/d' tests/meson.build
+  '' + lib.optionalString enableXen ''
+    # Has various hardcoded paths that don't exist outside of a Xen dom0.
+    sed -i '/libxlxml2domconfigtest/d' tests/meson.build
+    substituteInPlace src/libxl/libxl_capabilities.h \
+     --replace-fail /usr/lib/xen ${xen}/libexec/xen
   '';
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/libvisio/default.nix b/pkgs/development/libraries/libvisio/default.nix
index e6a425660cc8d..4b66ef5b4e1d1 100644
--- a/pkgs/development/libraries/libvisio/default.nix
+++ b/pkgs/development/libraries/libvisio/default.nix
@@ -32,6 +32,8 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  enableParallelBuilding = true;
+
   meta = with lib; {
     description = "Library providing ability to interpret and import visio diagrams into various applications";
     homepage = "https://wiki.documentfoundation.org/DLP/Libraries/libvisio";
diff --git a/pkgs/development/libraries/libvmi/default.nix b/pkgs/development/libraries/libvmi/default.nix
deleted file mode 100644
index 265e19a1ae77b..0000000000000
--- a/pkgs/development/libraries/libvmi/default.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ lib, stdenv,
-  fetchFromGitHub,
-  autoreconfHook,
-  bison,
-  flex,
-  glib,
-  pkg-config,
-  json_c,
-  xen,
-  libvirt,
-  xenSupport ? true }:
-
-stdenv.mkDerivation rec {
-  pname = "libvmi";
-  version = "0.12.0";
-  libVersion = "0.0.12";
-
-  src = fetchFromGitHub {
-    owner = "libvmi";
-    repo = "libvmi";
-    rev = "v${version}";
-    sha256 = "0wbi2nasb1gbci6cq23g6kq7i10rwi1y7r44rl03icr5prqjpdyv";
-  };
-
-  buildInputs = [ glib libvirt json_c ] ++ (lib.optional xenSupport xen);
-  nativeBuildInputs = [ autoreconfHook bison flex pkg-config ];
-
-  configureFlags = lib.optional (!xenSupport) "--disable-xen";
-
-  # libvmi uses dlopen() for the xen libraries, however autoPatchelfHook doesn't work here
-  postFixup = lib.optionalString xenSupport ''
-    libvmi="$out/lib/libvmi.so.${libVersion}"
-    oldrpath=$(patchelf --print-rpath "$libvmi")
-    patchelf --set-rpath "$oldrpath:${lib.makeLibraryPath [ xen ]}" "$libvmi"
-  '';
-
-  meta = with lib; {
-    homepage = "https://libvmi.com/";
-    description = "C library for virtual machine introspection";
-    longDescription = ''
-      LibVMI is a C library with Python bindings that makes it easy to monitor the low-level
-      details of a running virtual machine by viewing its memory, trapping on hardware events,
-      and accessing the vCPU registers.
-    '';
-    license = with licenses; [ gpl3 lgpl3 ];
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/libraries/libvncserver/default.nix b/pkgs/development/libraries/libvncserver/default.nix
index 84e0dba1dd252..e6b5bf4acb5b6 100644
--- a/pkgs/development/libraries/libvncserver/default.nix
+++ b/pkgs/development/libraries/libvncserver/default.nix
@@ -25,6 +25,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-kqVZeCTp+Z6BtB6nzkwmtkJ4wtmjlSQBg05lD02cVvQ=";
   };
 
+  patches = [
+    # fix generated pkg-config files
+    ./pkgconfig.patch
+  ];
+
   nativeBuildInputs = [
     cmake
   ];
@@ -40,7 +45,7 @@ stdenv.mkDerivation rec {
     libpng
   ] ++ lib.optionals withSystemd [
     systemd
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Carbon
   ];
 
diff --git a/pkgs/development/libraries/libvncserver/pkgconfig.patch b/pkgs/development/libraries/libvncserver/pkgconfig.patch
new file mode 100644
index 0000000000000..0b98e9e0a79b8
--- /dev/null
+++ b/pkgs/development/libraries/libvncserver/pkgconfig.patch
@@ -0,0 +1,28 @@
+diff --git a/libvncclient.pc.cmakein b/libvncclient.pc.cmakein
+index ceeda39d..2516e643 100644
+--- a/libvncclient.pc.cmakein
++++ b/libvncclient.pc.cmakein
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
+-includedir=@CMAKE_INSTALL_PREFIX@/include
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+ 
+ Name: LibVNCClient
+ Description: A library for easy implementation of a VNC client.
+diff --git a/libvncserver.pc.cmakein b/libvncserver.pc.cmakein
+index 33ec6685..57244742 100644
+--- a/libvncserver.pc.cmakein
++++ b/libvncserver.pc.cmakein
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
+-includedir=@CMAKE_INSTALL_PREFIX@/include
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+ 
+ Name: LibVNCServer
+ Description: A library for easy implementation of a VNC server.
diff --git a/pkgs/development/libraries/libvpx/1_8.nix b/pkgs/development/libraries/libvpx/1_8.nix
deleted file mode 100644
index 643dcb4d8f401..0000000000000
--- a/pkgs/development/libraries/libvpx/1_8.nix
+++ /dev/null
@@ -1,185 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, perl, yasm
-, vp8DecoderSupport ? true # VP8 decoder
-, vp8EncoderSupport ? true # VP8 encoder
-, vp9DecoderSupport ? true # VP9 decoder
-, vp9EncoderSupport ? true # VP9 encoder
-, extraWarningsSupport ? false # emit non-fatal warnings
-, werrorSupport ? false # treat warnings as errors (not available with all compilers)
-, debugSupport ? false # debug mode
-, gprofSupport ? false # gprof profiling instrumentation
-, gcovSupport ? false # gcov coverage instrumentation
-, sizeLimitSupport ? true # limit max size to allow in the decoder
-, optimizationsSupport ? true # compiler optimization flags
-, runtimeCpuDetectSupport ? true # detect cpu capabilities at runtime
-, thumbSupport ? false # build arm assembly in thumb mode
-, examplesSupport ? true # build examples (vpxdec & vpxenc are part of examples)
-, debugLibsSupport ? false # include debug version of each library
-, postprocSupport ? true # postprocessing
-, multithreadSupport ? true # multithreaded decoding & encoding
-, internalStatsSupport ? false # output of encoder internal stats for debug, if supported (encoders)
-, spatialResamplingSupport ? true # spatial sampling (scaling)
-, realtimeOnlySupport ? false # build for real-time encoding
-, ontheflyBitpackingSupport ? false # on-the-fly bitpacking in real-time encoding
-, errorConcealmentSupport ? false # decoder conceals losses
-, smallSupport ? false # favor smaller binary over speed
-, postprocVisualizerSupport ? false # macro block/block level visualizers
-, unitTestsSupport ? false, curl ? null, coreutils ? null # unit tests
-, webmIOSupport ? true # input from and output to webm container
-, libyuvSupport ? true # libyuv
-, decodePerfTestsSupport ? false # build decoder perf tests with unit tests
-, encodePerfTestsSupport ? false # build encoder perf tests with unit tests
-, multiResEncodingSupport ? false # multiple-resolution encoding
-, temporalDenoisingSupport ? true # use temporal denoising instead of spatial denoising
-, coefficientRangeCheckingSupport ? false # decoder checks if intermediate transform coefficients are in valid range
-, vp9HighbitdepthSupport ? true # 10/12 bit color support in VP9
-# Experimental features
-, experimentalSpatialSvcSupport ? false # Spatial scalable video coding
-, experimentalFpMbStatsSupport ? false
-, experimentalEmulateHardwareSupport ? false
-}:
-
-let
-  inherit (stdenv) is64bit isMips isDarwin isCygwin;
-  inherit (lib) enableFeature optional optionals;
-in
-
-assert vp8DecoderSupport || vp8EncoderSupport || vp9DecoderSupport || vp9EncoderSupport;
-assert internalStatsSupport && (vp9DecoderSupport || vp9EncoderSupport) -> postprocSupport;
-/* If spatialResamplingSupport not enabled, build will fail with undeclared variable errors.
-   Variables called in vpx_scale/generic/vpx_scale.c are declared by vpx_scale/vpx_scale_rtcd.pl,
-   but is only executed if spatialResamplingSupport is enabled */
-assert spatialResamplingSupport;
-assert postprocVisualizerSupport -> postprocSupport;
-assert unitTestsSupport -> curl != null && coreutils != null;
-assert vp9HighbitdepthSupport -> (vp9DecoderSupport || vp9EncoderSupport);
-assert isCygwin -> unitTestsSupport && webmIOSupport && libyuvSupport;
-
-stdenv.mkDerivation rec {
-  pname = "libvpx";
-  version = "1.8.2";
-
-  src = fetchFromGitHub {
-    owner = "webmproject";
-    repo = "libvpx";
-    rev = "v${version}";
-    sha256 = "0gyq4fkbd2fv7m1mm9xrvn6rk6f4jsmbv8bnlhingmnrvyncnmnr";
-  };
-
-  patches = [
-#    ./CVE-2019-9232.CVE-2019-9325.CVE-2019-9371.CVE-2019-9433.patch
-  ];
-
-  postPatch = ''
-    patchShebangs --build \
-      build/make/*.sh \
-      build/make/*.pl \
-      build/make/*.pm \
-      test/*.sh \
-      configure
-  '';
-
-  outputs = [ "bin" "dev" "out" ];
-  setOutputFlags = false;
-
-  configurePlatforms = [];
-  configureFlags = [
-    (enableFeature (vp8EncoderSupport || vp8DecoderSupport) "vp8")
-    (enableFeature vp8EncoderSupport "vp8-encoder")
-    (enableFeature vp8DecoderSupport "vp8-decoder")
-    (enableFeature (vp9EncoderSupport || vp9DecoderSupport) "vp9")
-    (enableFeature vp9EncoderSupport "vp9-encoder")
-    (enableFeature vp9DecoderSupport "vp9-decoder")
-    (enableFeature extraWarningsSupport "extra-warnings")
-    (enableFeature werrorSupport "werror")
-    "--disable-install-docs"
-    (enableFeature examplesSupport "install-bins")
-    "--enable-install-libs"
-    "--disable-install-srcs"
-    (enableFeature debugSupport "debug")
-    (enableFeature gprofSupport "gprof")
-    (enableFeature gcovSupport "gcov")
-    # Required to build shared libraries
-    (enableFeature (!isCygwin) "pic")
-    (enableFeature optimizationsSupport "optimizations")
-    (enableFeature runtimeCpuDetectSupport "runtime-cpu-detect")
-    (enableFeature thumbSupport "thumb")
-    "--enable-libs"
-    (enableFeature examplesSupport "examples")
-    "--disable-docs"
-    "--as=yasm"
-    # Limit default decoder max to WHXGA
-    (if sizeLimitSupport then "--size-limit=5120x3200" else null)
-    "--disable-codec-srcs"
-    (enableFeature debugLibsSupport "debug-libs")
-    (enableFeature isMips "dequant-tokens")
-    (enableFeature isMips "dc-recon")
-    (enableFeature postprocSupport "postproc")
-    (enableFeature (postprocSupport && (vp9DecoderSupport || vp9EncoderSupport)) "vp9-postproc")
-    (enableFeature multithreadSupport "multithread")
-    (enableFeature internalStatsSupport "internal-stats")
-    (enableFeature spatialResamplingSupport "spatial-resampling")
-    (enableFeature realtimeOnlySupport "realtime-only")
-    (enableFeature ontheflyBitpackingSupport "onthefly-bitpacking")
-    (enableFeature errorConcealmentSupport "error-concealment")
-    # Shared libraries are only supported on ELF platforms
-    (if isDarwin || isCygwin then
-       "--enable-static --disable-shared"
-     else
-       "--enable-shared")
-    (enableFeature smallSupport "small")
-    (enableFeature postprocVisualizerSupport "postproc-visualizer")
-    (enableFeature unitTestsSupport "unit-tests")
-    (enableFeature webmIOSupport "webm-io")
-    (enableFeature libyuvSupport "libyuv")
-    (enableFeature decodePerfTestsSupport "decode-perf-tests")
-    (enableFeature encodePerfTestsSupport "encode-perf-tests")
-    (enableFeature multiResEncodingSupport "multi-res-encoding")
-    (enableFeature temporalDenoisingSupport "temporal-denoising")
-    (enableFeature (temporalDenoisingSupport && (vp9DecoderSupport || vp9EncoderSupport)) "vp9-temporal-denoising")
-    (enableFeature coefficientRangeCheckingSupport "coefficient-range-checking")
-    (enableFeature (vp9HighbitdepthSupport && is64bit) "vp9-highbitdepth")
-    (enableFeature (experimentalSpatialSvcSupport ||
-                    experimentalFpMbStatsSupport ||
-                    experimentalEmulateHardwareSupport) "experimental")
-  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
-    "--enable-external-build"
-    # libvpx darwin targets include darwin version (ie. ARCH-darwinXX-gcc, XX being the darwin version)
-    # See all_platforms: https://github.com/webmproject/libvpx/blob/master/configure
-    # Darwin versions: 10.4=8, 10.5=9, 10.6=10, 10.7=11, 10.8=12, 10.9=13, 10.10=14
-    "--force-target=${stdenv.hostPlatform.config}${
-            if stdenv.hostPlatform.isDarwin then
-              if      stdenv.hostPlatform.osxMinVersion == "10.10" then "14"
-              else if stdenv.hostPlatform.osxMinVersion == "10.9"  then "13"
-              else if stdenv.hostPlatform.osxMinVersion == "10.8"  then "12"
-              else if stdenv.hostPlatform.osxMinVersion == "10.7"  then "11"
-              else if stdenv.hostPlatform.osxMinVersion == "10.6"  then "10"
-              else if stdenv.hostPlatform.osxMinVersion == "10.5"  then "9"
-              else "8"
-            else ""}-gcc"
-    (lib.optionalString stdenv.hostPlatform.isCygwin "--enable-static-msvcrt")
-  ] # Experimental features
-    ++ optional experimentalSpatialSvcSupport "--enable-spatial-svc"
-    ++ optional experimentalFpMbStatsSupport "--enable-fp-mb-stats"
-    ++ optional experimentalEmulateHardwareSupport "--enable-emulate-hardware";
-
-  nativeBuildInputs = [ perl yasm ];
-
-  buildInputs = [ ]
-    ++ optionals unitTestsSupport [ coreutils curl ];
-
-  NIX_LDFLAGS = [
-    "-lpthread" # fixes linker errors
-  ];
-
-  enableParallelBuilding = true;
-
-  postInstall = ''moveToOutput bin "$bin" '';
-
-  meta = with lib; {
-    description = "WebM VP8/VP9 codec SDK";
-    homepage    = "https://www.webmproject.org/";
-    license     = licenses.bsd3;
-    maintainers = with maintainers; [ codyopel ];
-    platforms   = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/libvpx/default.nix b/pkgs/development/libraries/libvpx/default.nix
index 5f5fc710d14dc..4f6c91d65c716 100644
--- a/pkgs/development/libraries/libvpx/default.nix
+++ b/pkgs/development/libraries/libvpx/default.nix
@@ -36,10 +36,14 @@
 , experimentalSpatialSvcSupport ? false # Spatial scalable video coding
 , experimentalFpMbStatsSupport ? false
 , experimentalEmulateHardwareSupport ? false
+
+# for passthru.tests
+, ffmpeg
+, gst_all_1
 }:
 
 let
-  inherit (stdenv) is64bit isMips isDarwin isCygwin;
+  inherit (stdenv.hostPlatform) is64bit isMips isDarwin isCygwin;
   inherit (lib) enableFeature optional optionals;
 
   # libvpx darwin targets include darwin version (ie. ARCH-darwinXX-gcc, XX being the darwin version)
@@ -62,16 +66,17 @@ let
 
   kernel =
     # Build system doesn't understand BSD, so pretend to be Linux.
-    /**/ if stdenv.isBSD then "linux"
-    else if stdenv.isDarwin then "darwin${darwinVersion}"
+    /**/ if stdenv.hostPlatform.isBSD then "linux"
+    else if stdenv.hostPlatform.isDarwin then "darwin${darwinVersion}"
     else stdenv.hostPlatform.parsed.kernel.name;
 
   isGeneric =
     /**/ (stdenv.hostPlatform.isPower && stdenv.hostPlatform.isLittleEndian)
-    || stdenv.hostPlatform.parsed.cpu.name == "armv6l";
+    || stdenv.hostPlatform.parsed.cpu.name == "armv6l"
+    || stdenv.hostPlatform.isRiscV;
 
   target =
-    /**/ if (stdenv.isBSD || stdenv.hostPlatform != stdenv.buildPlatform) then
+    /**/ if (stdenv.hostPlatform.isBSD || stdenv.hostPlatform != stdenv.buildPlatform) then
       (if isGeneric then "generic-gnu" else "${cpu}-${kernel}-gcc")
     else null;
 in
@@ -89,13 +94,13 @@ assert isCygwin -> unitTestsSupport && webmIOSupport && libyuvSupport;
 
 stdenv.mkDerivation rec {
   pname = "libvpx";
-  version = "1.14.0";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "webmproject";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-duU1exUg7JiKCtZfNxyb/y40hxsXeTIMShf9YounTWA=";
+    hash = "sha256-Pfg7g4y/dqn2VKDQU1LnTJQSj1Tont9/8Je6ShDb2GQ=";
   };
 
   postPatch = ''
@@ -198,6 +203,11 @@ stdenv.mkDerivation rec {
 
   postInstall = ''moveToOutput bin "$bin" '';
 
+  passthru.tests = {
+    inherit (gst_all_1) gst-plugins-good;
+    ffmpeg = ffmpeg.override { withVpx = true; };
+  };
+
   meta = with lib; {
     description = "WebM VP8/VP9 codec SDK";
     homepage    = "https://www.webmproject.org/";
diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix
deleted file mode 100644
index 58c9b7c7f6669..0000000000000
--- a/pkgs/development/libraries/libwacom/default.nix
+++ /dev/null
@@ -1,77 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, meson
-, ninja
-, glib
-, pkg-config
-, udev
-, libevdev
-, libgudev
-, libxml2
-, python3
-, valgrind
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libwacom";
-  version = "2.11.0";
-
-  outputs = [ "out" "dev" ];
-
-  src = fetchFromGitHub {
-    owner = "linuxwacom";
-    repo = "libwacom";
-    rev = "libwacom-${version}";
-    hash = "sha256-TQOe954Zos3VpAG5M/O5je9dr8d4gOXIwy4xl3o+e1g=";
-  };
-
-  postPatch = ''
-    patchShebangs test/check-files-in-git.sh
-  '';
-
-  nativeBuildInputs = [
-    pkg-config
-    meson
-    ninja
-    python3
-  ];
-
-  buildInputs = [
-    glib
-    udev
-    libevdev
-    libgudev
-  ];
-
-  doCheck = stdenv.hostPlatform == stdenv.buildPlatform
-            && lib.meta.availableOn stdenv.hostPlatform valgrind
-            && !stdenv.hostPlatform.isPower  # one test times out
-  ;
-
-  mesonFlags = [
-    "-Dtests=${if doCheck then "enabled" else "disabled"}"
-  ];
-
-  checkInputs = [
-    libxml2
-  ];
-
-  nativeCheckInputs = [
-    valgrind
-    (python3.withPackages (ps: with ps; [
-      ps.libevdev
-      pytest
-      pyudev
-    ]))
-  ];
-
-  meta = with lib; {
-    platforms = platforms.linux;
-    homepage = "https://linuxwacom.github.io/";
-    changelog = "https://github.com/linuxwacom/libwacom/blob/${src.rev}/NEWS";
-    description = "Libraries, configuration, and diagnostic tools for Wacom tablets running under Linux";
-    maintainers = teams.freedesktop.members;
-    license = licenses.hpnd;
-  };
-}
diff --git a/pkgs/development/libraries/libwacom/surface.nix b/pkgs/development/libraries/libwacom/surface.nix
deleted file mode 100644
index 54f5c424fda31..0000000000000
--- a/pkgs/development/libraries/libwacom/surface.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, fetchFromGitHub
-, libwacom
-}:
-
-let
-  libwacom-surface = fetchFromGitHub {
-    owner = "linux-surface";
-    repo = "libwacom-surface";
-    rev = "v2.10.0-1";
-    hash = "sha256-5/9X20veXazXEdSDGY5aMGQixulqMlC5Av0NGOF9m98=";
-  };
-in libwacom.overrideAttrs (old: {
-  pname = "libwacom-surface";
-
-  # These patches will not be included upstream:
-  # https://github.com/linux-surface/libwacom/issues/2
-  patches = old.patches or [ ] ++ map (p: "${libwacom-surface}/patches/v2/${p}") [
-    "0001-Add-support-for-BUS_VIRTUAL.patch"
-    "0002-Add-support-for-Intel-Management-Engine-bus.patch"
-    "0003-data-Add-Microsoft-Surface-Pro-3.patch"
-    "0004-data-Add-Microsoft-Surface-Pro-4.patch"
-    "0005-data-Add-Microsoft-Surface-Pro-5.patch"
-    "0006-data-Add-Microsoft-Surface-Pro-6.patch"
-    "0007-data-Add-Microsoft-Surface-Pro-7.patch"
-    "0008-data-Add-Microsoft-Surface-Pro-7.patch"
-    "0009-data-Add-Microsoft-Surface-Pro-8.patch"
-    "0010-data-Add-Microsoft-Surface-Pro-9.patch"
-    "0011-data-Add-Microsoft-Surface-Book.patch"
-    "0012-data-Add-Microsoft-Surface-Book-2-13.5.patch"
-    "0013-data-Add-Microsoft-Surface-Book-2-15.patch"
-    "0014-data-Add-Microsoft-Surface-Book-3-13.5.patch"
-    "0015-data-Add-Microsoft-Surface-Book-3-15.patch"
-    "0016-data-Add-Microsoft-Surface-Laptop-Studio.patch"
-  ];
-
-  meta = old.meta // {
-    homepage = "https://github.com/linux-surface/libwacom-surface";
-    maintainers = with lib.maintainers; [ dotlambda ];
-  };
-})
diff --git a/pkgs/development/libraries/libwebp/default.nix b/pkgs/development/libraries/libwebp/default.nix
index 2662d4e940081..f788a7f59b9c6 100644
--- a/pkgs/development/libraries/libwebp/default.nix
+++ b/pkgs/development/libraries/libwebp/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, libtool
 , threadingSupport ? true # multi-threading
-, openglSupport ? false, freeglut, libGL, libGLU # OpenGL (required for vwebp)
+, openglSupport ? false, libglut, libGL, libGLU # OpenGL (required for vwebp)
 , pngSupport ? true, libpng # PNG image format
 , jpegSupport ? true, libjpeg # JPEG image format
 , tiffSupport ? true, libtiff # TIFF image format
@@ -13,7 +13,6 @@
 , libwebpdecoderSupport ? true # Build libwebpdecoder
 
 # for passthru.tests
-, freeimage
 , gd
 , graphicsmagick
 , haskellPackages
@@ -53,7 +52,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook libtool ];
   buildInputs = [ ]
-    ++ lib.optionals openglSupport [ freeglut libGL libGLU ]
+    ++ lib.optionals openglSupport [ libglut libGL libGLU ]
     ++ lib.optionals pngSupport [ libpng ]
     ++ lib.optionals jpegSupport [ libjpeg ]
     ++ lib.optionals tiffSupport [ libtiff ]
diff --git a/pkgs/development/libraries/libwnck/2.nix b/pkgs/development/libraries/libwnck/2.nix
index bc5a89dc120dc..890b1a7651a8b 100644
--- a/pkgs/development/libraries/libwnck/2.nix
+++ b/pkgs/development/libraries/libwnck/2.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     maintainers = with lib.maintainers; [ johnazoidberg ];
     # ./xutils.h:31:10: fatal error: 'gdk/gdkx.h' file not found
     # #include <gdk/gdkx.h>
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/libwpe/fdo.nix b/pkgs/development/libraries/libwpe/fdo.nix
index d54d9706cbd18..3d2df9259a545 100644
--- a/pkgs/development/libraries/libwpe/fdo.nix
+++ b/pkgs/development/libraries/libwpe/fdo.nix
@@ -4,6 +4,7 @@
 , meson
 , pkg-config
 , ninja
+, wayland-scanner
 , wayland
 , libepoxy
 , glib
@@ -30,7 +31,7 @@ stdenv.mkDerivation rec {
     pkg-config
     meson
     ninja
-    wayland
+    wayland-scanner
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libx86/default.nix b/pkgs/development/libraries/libx86/default.nix
index 1abefa8f43749..69b4ec4a32cad 100644
--- a/pkgs/development/libraries/libx86/default.nix
+++ b/pkgs/development/libraries/libx86/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   #  http://www.mail-archive.com/suspend-devel@lists.sourceforge.net/msg02355.html
   makeFlags = [
     "DESTDIR=$(out)"
-  ] ++ lib.optional (!stdenv.isi686) "BACKEND=x86emu";
+  ] ++ lib.optional (!stdenv.hostPlatform.isi686) "BACKEND=x86emu";
 
   preBuild = ''
     sed -i lrmi.c -e 's@defined(__i386__)@(defined(__i386__) || defined(__x86_64__))@'
diff --git a/pkgs/development/libraries/libx86emu/default.nix b/pkgs/development/libraries/libx86emu/default.nix
index c4df61bd22bbe..4ace07d2cf0e4 100644
--- a/pkgs/development/libraries/libx86emu/default.nix
+++ b/pkgs/development/libraries/libx86emu/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     substituteInPlace Makefile --replace "/usr" "/"
   '';
 
-  buildFlags = [ "shared" ];
+  buildFlags = [ "shared" "CC=${stdenv.cc.targetPrefix}cc" ];
   enableParallelBuilding = true;
 
   installFlags = [ "DESTDIR=$(out)" "LIBDIR=/lib" ];
diff --git a/pkgs/development/libraries/libxkbcommon/default.nix b/pkgs/development/libraries/libxkbcommon/default.nix
index 7c635eb98b694..9a0ebd6d59da1 100644
--- a/pkgs/development/libraries/libxkbcommon/default.nix
+++ b/pkgs/development/libraries/libxkbcommon/default.nix
@@ -13,8 +13,8 @@
 , libX11
   # To enable the "interactive-wayland" subcommand of xkbcli. This is the
   # wayland equivalent of `xev` on X11.
-, xorgserver # for Xvfb in tests
-, withWaylandTools ? stdenv.isLinux
+, xorg
+, withWaylandTools ? stdenv.hostPlatform.isLinux
 , wayland
 , wayland-protocols
 , wayland-scanner
@@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
   outputs = [ "out" "dev" "doc" ];
 
   depsBuildBuild = [ pkg-config ];
-  nativeBuildInputs = [ meson ninja pkg-config bison doxygen xorgserver ]
+  nativeBuildInputs = [ meson ninja pkg-config bison doxygen xorg.xvfb ]
     ++ lib.optional withWaylandTools wayland-scanner;
   buildInputs = [ xkeyboard_config libxcb libxml2 ]
     ++ lib.optionals withWaylandTools [ wayland wayland-protocols ];
diff --git a/pkgs/development/libraries/libxklavier/default.nix b/pkgs/development/libraries/libxklavier/default.nix
index 3fa295279f0cd..b6a217d9fbf8e 100644
--- a/pkgs/development/libraries/libxklavier/default.nix
+++ b/pkgs/development/libraries/libxklavier/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./honor-XKB_CONFIG_ROOT.patch
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     (fetchpatch {
       url = "https://gitlab.freedesktop.org/archived-projects/libxklavier/-/commit/1387c21a788ec1ea203c8392ea1460fc29d83f70.patch";
       sha256 = "sha256-fyWu7sVfDv/ozjhLSLCVsv+iNFawWgJqHUsQHHSkQn4=";
diff --git a/pkgs/development/libraries/libxl/default.nix b/pkgs/development/libraries/libxl/default.nix
index 0263b25f3ba4d..3a6c0ca18edd4 100644
--- a/pkgs/development/libraries/libxl/default.nix
+++ b/pkgs/development/libraries/libxl/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
     homepage    = "https://www.libxl.com/";
     license     = licenses.unfree;
     platforms   = platforms.linux;
-    maintainers = with maintainers; [  ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libxlsxwriter/default.nix b/pkgs/development/libraries/libxlsxwriter/default.nix
index 6859caff61aa9..b5128c1180e4a 100644
--- a/pkgs/development/libraries/libxlsxwriter/default.nix
+++ b/pkgs/development/libraries/libxlsxwriter/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libxlsxwriter";
-  version = "1.1.7";
+  version = "1.1.8";
 
   src = fetchFromGitHub {
     owner = "jmcnamara";
     repo = "libxlsxwriter";
-    rev = "RELEASE_${version}";
-    hash = "sha256-bJ0NMbK9c21YYdcg/TW3ePSDVi5hly6lSW7wXFskI8M=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-GtH8324whOUizGZTzQtD53WTy4BNPnpTSkCX/iOIolQ=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index 79fe8c9f52dac..66f16b11a74e2 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -1,7 +1,6 @@
 { stdenv
 , lib
 , fetchurl
-, zlib
 , pkg-config
 , autoreconfHook
 , libintl
@@ -20,27 +19,23 @@
 , enableStatic ? !enableShared
 , gnome
 , testers
+, enableHttp ? false
 }:
 
-stdenv.mkDerivation (finalAttrs: rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libxml2";
-  version = "2.12.7";
+  version = "2.13.3";
 
-  outputs = [ "bin" "dev" "out" "doc" ]
+  outputs = [ "bin" "dev" "out" "devdoc" ]
     ++ lib.optional pythonSupport "py"
     ++ lib.optional (enableStatic && enableShared) "static";
   outputMan = "bin";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/libxml2/${lib.versions.majorMinor version}/libxml2-${version}.tar.xz";
-    hash = "sha256-JK54/xNjqXPm2L66lBp5RdoqwFbhm1OVautpJ/1s+1Y=";
+    url = "mirror://gnome/sources/libxml2/${lib.versions.majorMinor finalAttrs.version}/libxml2-${finalAttrs.version}.tar.xz";
+    hash = "sha256-CAXXwYDPCcqtcWZsekWKdPBBVhpTKQJFTaUEfYOUgTg=";
   };
 
-  # https://gitlab.gnome.org/GNOME/libxml2/-/issues/725
-  postPatch = if stdenv.hostPlatform.isFreeBSD then ''
-    substituteInPlace ./configure.ac --replace-fail pthread_join pthread_create
-  '' else null;
-
   strictDeps = true;
 
   nativeBuildInputs = [
@@ -54,14 +49,13 @@ stdenv.mkDerivation (finalAttrs: rec {
     gettext
   ] ++ lib.optionals (pythonSupport && python?isPy3 && python.isPy3) [
     ncurses
-  ] ++ lib.optionals (stdenv.isDarwin && pythonSupport && python?isPy2 && python.isPy2) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && pythonSupport && python?isPy2 && python.isPy2) [
     libintl
   ];
 
   propagatedBuildInputs = [
-    zlib
     findXMLCatalogs
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libiconv
   ] ++ lib.optionals icuSupport [
     icu
@@ -74,7 +68,7 @@ stdenv.mkDerivation (finalAttrs: rec {
     (lib.withFeature icuSupport "icu")
     (lib.withFeature pythonSupport "python")
     (lib.optionalString pythonSupport "PYTHON=${python.pythonOnBuildForHost.interpreter}")
-  ];
+  ] ++ lib.optional enableHttp "--with-http";
 
   installFlags = lib.optionals pythonSupport [
     "pythondir=\"${placeholder "py"}/${python.sitePackages}\""
@@ -86,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: rec {
   doCheck =
     (stdenv.hostPlatform == stdenv.buildPlatform) &&
     stdenv.hostPlatform.libc != "musl";
-  preCheck = lib.optional stdenv.isDarwin ''
+  preCheck = lib.optional stdenv.hostPlatform.isDarwin ''
     export DYLD_LIBRARY_PATH="$PWD/.libs:$DYLD_LIBRARY_PATH"
   '';
 
@@ -95,7 +89,7 @@ stdenv.mkDerivation (finalAttrs: rec {
   '';
 
   preInstall = lib.optionalString pythonSupport ''
-    substituteInPlace python/libxml2mod.la --replace "$dev/${python.sitePackages}" "$py/${python.sitePackages}"
+    substituteInPlace python/libxml2mod.la --replace-fail "$dev/${python.sitePackages}" "$py/${python.sitePackages}"
   '';
 
   postFixup = ''
@@ -106,11 +100,10 @@ stdenv.mkDerivation (finalAttrs: rec {
   '';
 
   passthru = {
-    inherit version;
-    pythonSupport = pythonSupport;
+    inherit pythonSupport;
 
     updateScript = gnome.updateScript {
-      packageName = pname;
+      packageName = "libxml2";
       versionPolicy = "none";
     };
     tests = {
@@ -125,7 +118,7 @@ stdenv.mkDerivation (finalAttrs: rec {
     description = "XML parsing library for C";
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = with maintainers; [ eelco jtojnar ];
+    maintainers = with maintainers; [ jtojnar ];
     pkgConfigModules = [ "libxml-2.0" ];
   };
 })
diff --git a/pkgs/development/libraries/libxmlb/default.nix b/pkgs/development/libraries/libxmlb/default.nix
index 4cc4e2b15c43b..a90ae30fec1ee 100644
--- a/pkgs/development/libraries/libxmlb/default.nix
+++ b/pkgs/development/libraries/libxmlb/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
     mainProgram = "xb-tool";
     homepage = "https://github.com/hughsie/libxmlb";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libxmlxx/default.nix b/pkgs/development/libraries/libxmlxx/default.nix
index 9ec4090f60f0b..5d55e242f0064 100644
--- a/pkgs/development/libraries/libxmlxx/default.nix
+++ b/pkgs/development/libraries/libxmlxx/default.nix
@@ -34,6 +34,6 @@ stdenv.mkDerivation rec {
     description = "C++ wrapper for the libxml2 XML parser library";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libxnd/default.nix b/pkgs/development/libraries/libxnd/default.nix
index 1fac0d86d4c72..205e9425a74e5 100644
--- a/pkgs/development/libraries/libxnd/default.nix
+++ b/pkgs/development/libraries/libxnd/default.nix
@@ -1,18 +1,19 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, libndtypes
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  libndtypes,
 }:
 
 stdenv.mkDerivation {
   pname = "libxnd";
-  version = "unstable-2019-08-01";
+  version = "0.2.0-unstable-2023-11-17";
 
   src = fetchFromGitHub {
     owner = "xnd-project";
-    repo = "xnd";
-    rev = "6f305cd40d90b4f3fc2fe51ae144b433d186a6cc";
-    sha256 = "1n31d64qwlc7m3qkzbafhp0dgrvgvkdx89ykj63kll7r1n3yk59y";
+    repo = "libxnd";
+    rev = "e1a06d9f6175f4f4e1da369b7e907ad6b2952c00";
+    hash = "sha256-RWt2Nx0tfMghQES2SM+0jbAU7IunuuTORhBe2tvqVTY=";
   };
 
   buildInputs = [ libndtypes ];
@@ -20,12 +21,12 @@ stdenv.mkDerivation {
   # Override linker with cc (symlink to either gcc or clang)
   # Library expects to use cc for linking
   configureFlags = [
-      # Override linker with cc (symlink to either gcc or clang)
-      # Library expects to use cc for linking
-      "LD=${stdenv.cc.targetPrefix}cc"
-      # needed for tests
-      "--with-includes=${libndtypes}/include"
-      "--with-libs=${libndtypes}/lib"
+    # Override linker with cc (symlink to either gcc or clang)
+    # Library expects to use cc for linking
+    "LD=${stdenv.cc.targetPrefix}cc"
+    # needed for tests
+    "--with-includes=${libndtypes}/include"
+    "--with-libs=${libndtypes}/lib"
   ];
 
   # other packages which depend on libxnd seem to expect overflow.h, but
diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix
index 1938c523006b2..34092649067c0 100644
--- a/pkgs/development/libraries/libxslt/default.nix
+++ b/pkgs/development/libraries/libxslt/default.nix
@@ -15,16 +15,16 @@
 , gnome
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libxslt";
-  version = "1.1.39";
+  version = "1.1.42";
 
   outputs = [ "bin" "dev" "out" "doc" "devdoc" ] ++ lib.optional pythonSupport "py";
   outputMan = "bin";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-KiCtYhFIM5sHWcTU6WcZNi3uZMmgltu6YlugU4RjSfA=";
+    url = "mirror://gnome/sources/libxslt/${lib.versions.majorMinor finalAttrs.version}/libxslt-${finalAttrs.version}.tar.xz";
+    hash = "sha256-hcpiysDUH8d9P2Az2p32/XPSDqL8GLCjYJ/7QRDhuus=";
   };
 
   strictDeps = true;
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     libxml2.dev libxcrypt
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     gettext
   ] ++ lib.optionals pythonSupport [
     libxml2.py
@@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
     inherit pythonSupport;
 
     updateScript = gnome.updateScript {
-      packageName = pname;
+      packageName = "libxslt";
       versionPolicy = "none";
     };
   };
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
     description = "C library and tools to do XSL transformations";
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = with maintainers; [ eelco jtojnar ];
+    maintainers = with maintainers; [ jtojnar ];
     broken = pythonSupport && !libxml2.pythonSupport; # see #73102 for why this is not an assert
   };
-}
+})
diff --git a/pkgs/development/libraries/libxsmm/default.nix b/pkgs/development/libraries/libxsmm/default.nix
index 178e524fd1b78..3276354240f4a 100644
--- a/pkgs/development/libraries/libxsmm/default.nix
+++ b/pkgs/development/libraries/libxsmm/default.nix
@@ -6,16 +6,20 @@
 
 stdenv.mkDerivation rec {
   pname = "libxsmm";
-  version = "1.16.3";
+  version = "1.17";
 
   src = fetchFromGitHub {
-    owner = "hfp";
+    owner = "libxsmm";
     repo = "libxsmm";
     rev = version;
-    sha256 = "sha256-PpMiD/PeQ0pe5hqFG6VFHWpR8y3wnO2z1dJfHHeItlQ=";
+    sha256 = "sha256-s/NEFU4IwQPLyPLwMmrrpMDd73q22Sk2BNid/kedawY=";
   };
 
+  # Fixes /build references in the rpath
+  patches = [ ./rpath.patch ];
+
   outputs = [ "out" "dev" "doc" ];
+
   nativeBuildInputs = [
     gfortran
     python3
@@ -39,7 +43,7 @@ stdenv.mkDerivation rec {
     mkdir -p $dev/lib/pkgconfig
     mv $out/lib/*.pc $dev/lib/pkgconfig
 
-    moveToOutput "share/libxsmm" "$doc"
+    moveToOutput "share/libxsmm" ''${!outputDoc}
   '';
 
   prePatch = ''
@@ -47,7 +51,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
     description = "Library targeting Intel Architecture for specialized dense and sparse matrix operations, and deep learning primitives";
     mainProgram = "libxsmm_gemm_generator";
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/libxsmm/rpath.patch b/pkgs/development/libraries/libxsmm/rpath.patch
new file mode 100644
index 0000000000000..bd3feca413b7d
--- /dev/null
+++ b/pkgs/development/libraries/libxsmm/rpath.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.inc b/Makefile.inc
+index 424d7b2e4..87934fee0 100644
+--- a/Makefile.inc
++++ b/Makefile.inc
+@@ -918,7 +918,7 @@ ifneq (Darwin,$(UNAME))
+   XLNKVERBOSE := --verbose
+   linkopt = $(if $1,$(XLNKOPT)$(if $2,$1=$(call quote,$2),$1))
+   abslibrpath = $(strip $(if $(findstring .$(ILIBEXT),$1)$(wildcard $1/), \
+-    $(call linkopt,--rpath,$(call qxdir,$(call qapath,$1)))))
++    $(call linkopt,--rpath,$(PREFIX)/lib)))
+   XGROUP_BEGIN := $(call linkopt,--start-group)
+   XGROUP_END := $(call linkopt,--end-group)
+   ifneq (0,$(ASNEEDED))
diff --git a/pkgs/development/libraries/libykclient/default.nix b/pkgs/development/libraries/libykclient/default.nix
index 240f771e49f19..0f99c86f93921 100644
--- a/pkgs/development/libraries/libykclient/default.nix
+++ b/pkgs/development/libraries/libykclient/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation {
     mainProgram = "ykclient";
     homepage = "https://developers.yubico.com/yubico-c-client";
     license = licenses.bsd2;
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/libyuv/default.nix b/pkgs/development/libraries/libyuv/default.nix
index 77e32c09de8f0..1062d527fa2a1 100644
--- a/pkgs/development/libraries/libyuv/default.nix
+++ b/pkgs/development/libraries/libyuv/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   src = fetchgit {
     url = "https://chromium.googlesource.com/libyuv/libyuv.git";
     rev = "eb6e7bb63738e29efd82ea3cf2a115238a89fa51"; # refs/heads/stable
-    sha256 = "sha256-DtRYoaAXb9ZD2OLiKbzKzH5vzuu+Lzu4eHaDgPB9hjU=";
+    hash = "sha256-DtRYoaAXb9ZD2OLiKbzKzH5vzuu+Lzu4eHaDgPB9hjU=";
   };
 
   nativeBuildInputs = [
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   ];
 
   # NEON does not work on aarch64, we disable it
-  cmakeFlags = lib.optionals stdenv.isAarch64 ["-DCMAKE_CXX_FLAGS=-DLIBYUV_DISABLE_NEON"];
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isAarch64 ["-DCMAKE_CXX_FLAGS=-DLIBYUV_DISABLE_NEON"];
 
   buildInputs = [ libjpeg ];
 
diff --git a/pkgs/development/libraries/libz/default.nix b/pkgs/development/libraries/libz/default.nix
deleted file mode 100644
index ac859e1a0bb8b..0000000000000
--- a/pkgs/development/libraries/libz/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitLab
-, unstableGitUpdater
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libz";
-  version = "1.2.8.2015.12.26-unstable-2018-03-31";
-
-  src = fetchFromGitLab {
-    owner = "sortix";
-    repo = "libz";
-    rev = "752c1630421502d6c837506d810f7918ac8cdd27";
-    hash = "sha256-AQuZ0BOl1iP5Nub+tVwctlE2tfJe4Sq/KDGkjwBbsV4=";
-  };
-
-  outputs = [ "out" "dev" ];
-  outputDoc = "dev"; # single tiny man3 page
-
-  passthru.updateScript = unstableGitUpdater {
-    tagPrefix = "libz-";
-  };
-
-  meta = {
-    homepage = "https://sortix.org/libz/";
-    description = "Clean fork of zlib";
-    license = [ lib.licenses.zlib ];
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/libzapojit/default.nix b/pkgs/development/libraries/libzapojit/default.nix
index 43f9065dfa615..cb7038d5355ce 100644
--- a/pkgs/development/libraries/libzapojit/default.nix
+++ b/pkgs/development/libraries/libzapojit/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     description = "GObject wrapper for the SkyDrive and Hotmail REST APIs";
     homepage = "https://gitlab.gnome.org/Archive/libzapojit";
     license = licenses.lgpl21Plus;
-    maintainers = teams.gnome.members;
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libzdb/default.nix b/pkgs/development/libraries/libzdb/default.nix
index b90a2691e4cec..bb40e05b9e6fb 100644
--- a/pkgs/development/libraries/libzdb/default.nix
+++ b/pkgs/development/libraries/libzdb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec
 {
-  version = "3.2.3";
+  version = "3.4.0";
   pname = "libzdb";
 
   src = fetchurl
   {
     url = "https://www.tildeslash.com/libzdb/dist/libzdb-${version}.tar.gz";
-    sha256 = "sha256-oZV4Jvq3clSE/Ft0eApqfQ2Lf14uVNJuEGs5ngqGvrA=";
+    sha256 = "sha256-q9Z1cZvL3eQwqk7hOXW5gNVdKry1zCKAgqMDIKa7nw8=";
   };
 
   buildInputs = [ sqlite ];
diff --git a/pkgs/development/libraries/libzim/default.nix b/pkgs/development/libraries/libzim/default.nix
index bf3a640bd8217..83a225576e065 100644
--- a/pkgs/development/libraries/libzim/default.nix
+++ b/pkgs/development/libraries/libzim/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libzim";
-  version = "9.2.2";
+  version = "9.2.3";
 
   src = fetchFromGitHub {
     owner = "openzim";
     repo = "libzim";
     rev = "refs/tags/${version}";
-    hash = "sha256-V81TzoYUFiI+07ooDQtG7ahxQFEh/6Y8IgoceHMSgOk=";
+    hash = "sha256-z22+cDlFQtLMLFh5+7Nt9LsGFyBPi3HeZhYb0LK86Oc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libzip/default.nix b/pkgs/development/libraries/libzip/default.nix
index 82f7f88b19a69..453722ccf49ba 100644
--- a/pkgs/development/libraries/libzip/default.nix
+++ b/pkgs/development/libraries/libzip/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.10.1";
 
   src = fetchurl {
-    url = "https://libzip.org/download/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
+    url = "https://libzip.org/download/libzip-${finalAttrs.version}.tar.gz";
     sha256 = "sha256-lmmuXf46xbOJdTbchGaodMjPLA47H90I11snOIQpk2M=";
   };
 
diff --git a/pkgs/development/libraries/lief/default.nix b/pkgs/development/libraries/lief/default.nix
index 4b691ba3d8880..1e9a95bc4ed54 100644
--- a/pkgs/development/libraries/lief/default.nix
+++ b/pkgs/development/libraries/lief/default.nix
@@ -11,13 +11,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "lief";
-  version = "0.13.2";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "lief-project";
     repo = "LIEF";
     rev = version;
-    sha256 = "sha256-lH4SqwPB2Jp/wUI2Cll67PQbHbwMqpNuLy/ei8roiHg=";
+    sha256 = "sha256-2W/p6p7YXqSNaVs8yPAnLQhbBVIQWEbUVnhx9edV5gI=";
   };
 
   outputs = [ "out" "py" ];
@@ -29,21 +29,26 @@ stdenv.mkDerivation rec {
 
   # Not a propagatedBuildInput because only the $py output needs it; $out is
   # just the library itself (e.g. C/C++ headers).
-  buildInputs = [
+  buildInputs = with python.pkgs; [
     python
+    build
+    pathspec
+    pip
+    pydantic
+    scikit-build-core
   ];
 
-  env.CXXFLAGS = toString (lib.optional stdenv.isDarwin [ "-faligned-allocation" "-fno-aligned-new" "-fvisibility=hidden" ]);
+  env.CXXFLAGS = toString (lib.optional stdenv.hostPlatform.isDarwin [ "-faligned-allocation" "-fno-aligned-new" "-fvisibility=hidden" ]);
 
   postBuild = ''
     pushd ../api/python
-    ${pyEnv.interpreter} setup.py build --parallel=$NIX_BUILD_CORES
+    ${pyEnv.interpreter} -m build --no-isolation --wheel --skip-dependency-check --config-setting=--parallel=$NIX_BUILD_CORES
     popd
   '';
 
   postInstall = ''
     pushd ../api/python
-    ${pyEnv.interpreter} setup.py install --skip-build --root=/ --prefix=$py
+    ${pyEnv.interpreter} -m pip install --prefix $py dist/*.whl
     popd
   '';
 
diff --git a/pkgs/development/libraries/lightgbm/default.nix b/pkgs/development/libraries/lightgbm/default.nix
index abb52eb5f0aa1..934b0cab5a3e6 100644
--- a/pkgs/development/libraries/lightgbm/default.nix
+++ b/pkgs/development/libraries/lightgbm/default.nix
@@ -4,9 +4,9 @@
 , rLibrary ? false, cudaPackages, opencl-headers, ocl-icd, boost
 , llvmPackages, openmpi, openjdk, swig, hadoop, R, rPackages, pandoc }:
 
-assert doCheck -> mpiSupport != true;
-assert openclSupport -> cudaSupport != true;
-assert cudaSupport -> openclSupport != true;
+assert doCheck -> !mpiSupport;
+assert openclSupport -> !cudaSupport;
+assert cudaSupport -> !openclSupport;
 
 stdenv.mkDerivation rec {
   pnameBase = "lightgbm";
@@ -23,18 +23,18 @@ stdenv.mkDerivation rec {
   #   in \
   #   rWrapper.override{ packages = [ lgbm ]; }"
   pname = lib.optionalString rLibrary "r-" + pnameBase;
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = pnameBase;
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-i4mtJwSwnbGMXVfQ8a9jZZPUBBibXyQPgMVJ3uXxeGQ=";
+    hash = "sha256-nST6+/c3Y4/hqwgEUhx03gWtjxhlmUu1XKDCy2pSsvU=";
   };
 
   nativeBuildInputs = [ cmake ]
-    ++ lib.optionals stdenv.isDarwin [ llvmPackages.openmp ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ llvmPackages.openmp ]
     ++ lib.optionals openclSupport [ opencl-headers ocl-icd boost ]
     ++ lib.optionals mpiSupport [ openmpi ]
     ++ lib.optionals hdfsSupport [ hadoop ]
@@ -109,7 +109,7 @@ stdenv.mkDerivation rec {
       mkdir -p $out/lib
       mkdir -p $out/bin
       cp -r ../include $out
-      install -Dm755 ../lib_lightgbm.so $out/lib/lib_lightgbm.so
+      install -Dm755 ../lib_lightgbm${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/lib_lightgbm${stdenv.hostPlatform.extensions.sharedLibrary}
     '' + lib.optionalString (!rLibrary && !pythonLibrary) ''
       install -Dm755 ../lightgbm $out/bin/lightgbm
     '' + lib.optionalString javaWrapper ''
diff --git a/pkgs/development/libraries/linbox/default.nix b/pkgs/development/libraries/linbox/default.nix
index 4d0158dbcbe3c..f9258f9913614 100644
--- a/pkgs/development/libraries/linbox/default.nix
+++ b/pkgs/development/libraries/linbox/default.nix
@@ -8,7 +8,6 @@
 , lapack
 , fflas-ffpack
 , gmpxx
-, withSage ? false # sage support
 }:
 
 assert (!blas.isILP64) && (!lapack.isILP64);
@@ -46,7 +45,7 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-blas-libs=-lblas"
     "--without-archnative"
-  ] ++ lib.optionals stdenv.isx86_64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [
     # disable SIMD instructions (which are enabled *when available* by default)
     "--${if stdenv.hostPlatform.sse3Support   then "enable" else "disable"}-sse3"
     "--${if stdenv.hostPlatform.ssse3Support  then "enable" else "disable"}-ssse3"
@@ -56,8 +55,6 @@ stdenv.mkDerivation rec {
     "--${if stdenv.hostPlatform.avx2Support   then "enable" else "disable"}-avx2"
     "--${if stdenv.hostPlatform.fmaSupport    then "enable" else "disable"}-fma"
     "--${if stdenv.hostPlatform.fma4Support   then "enable" else "disable"}-fma4"
-  ] ++ lib.optionals withSage [
-    "--enable-sage"
   ];
 
   # https://github.com/linbox-team/linbox/issues/304
diff --git a/pkgs/development/libraries/linenoise-ng/default.nix b/pkgs/development/libraries/linenoise-ng/default.nix
index 0832ef5c6caf2..c52b7085796cc 100644
--- a/pkgs/development/libraries/linenoise-ng/default.nix
+++ b/pkgs/development/libraries/linenoise-ng/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://github.com/arangodb/linenoise-ng";
     description = "Small, portable GNU readline replacement for Linux, Windows and MacOS which is capable of handling UTF-8 characters";
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.all;
     license = lib.licenses.bsd3;
   };
diff --git a/pkgs/development/libraries/linenoise/default.nix b/pkgs/development/libraries/linenoise/default.nix
index 42017e5e17182..13891d08f1133 100644
--- a/pkgs/development/libraries/linenoise/default.nix
+++ b/pkgs/development/libraries/linenoise/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , validatePkgConfig
+, fixDarwinDylibNames
 }:
 
 stdenv.mkDerivation {
@@ -15,7 +16,8 @@ stdenv.mkDerivation {
     hash = "sha256-GsrYg16gpjHkkmpCU3yGzqNS/buZl+JoWALLvwzmT4A=";
   };
 
-  nativeBuildInputs = [ validatePkgConfig ];
+  nativeBuildInputs = [ validatePkgConfig ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
 
   buildPhase = ''
     runHook preBuild
diff --git a/pkgs/development/libraries/liquid-dsp/default.nix b/pkgs/development/libraries/liquid-dsp/default.nix
index 6667aa4882e0f..0700b645e30ab 100644
--- a/pkgs/development/libraries/liquid-dsp/default.nix
+++ b/pkgs/development/libraries/liquid-dsp/default.nix
@@ -18,10 +18,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-3UKAwhYaYZ42+d+wiW/AB6x5TSOel8d++d3HeZqAg/8=";
   };
 
-  configureFlags = lib.optionals stdenv.isDarwin [ "LIBTOOL=${cctools}/bin/libtool" ];
+  configureFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "LIBTOOL=${cctools}/bin/libtool" ];
 
   nativeBuildInputs = [ autoreconfHook ]
-    ++ lib.optionals stdenv.isDarwin [ cctools autoSignDarwinBinariesHook fixDarwinDylibNames ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ cctools autoSignDarwinBinariesHook fixDarwinDylibNames ];
 
   meta = {
     homepage = "https://liquidsdr.org/";
diff --git a/pkgs/development/libraries/lmdb/default.nix b/pkgs/development/libraries/lmdb/default.nix
index 7c907e9ef70f4..69100b9dffd62 100644
--- a/pkgs/development/libraries/lmdb/default.nix
+++ b/pkgs/development/libraries/lmdb/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     "CC=${stdenv.cc.targetPrefix}cc"
     "AR=${stdenv.cc.targetPrefix}ar"
   ]
-    ++ lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/liblmdb.so"
+    ++ lib.optional stdenv.hostPlatform.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/liblmdb.so"
     ++ lib.optionals stdenv.hostPlatform.isWindows [ "SOEXT=.dll" "BINEXT=.exe" ];
 
   doCheck = true;
diff --git a/pkgs/development/libraries/loudmouth/default.nix b/pkgs/development/libraries/loudmouth/default.nix
index 21dd9db2797c4..e949cd57e62ee 100644
--- a/pkgs/development/libraries/loudmouth/default.nix
+++ b/pkgs/development/libraries/loudmouth/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") [
+  buildInputs = lib.optionals (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") [
     darwin.apple_sdk.frameworks.AppKit
     darwin.apple_sdk.frameworks.Foundation
   ];
diff --git a/pkgs/development/libraries/lpcnetfreedv/default.nix b/pkgs/development/libraries/lpcnetfreedv/default.nix
index b3b1d7059d81b..c8af5c6baf33e 100644
--- a/pkgs/development/libraries/lpcnetfreedv/default.nix
+++ b/pkgs/development/libraries/lpcnetfreedv/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchurl, cmake, codec2 }:
+{ lib, stdenv, fetchFromGitHub, fetchurl, cmake }:
 
 let
   dataVersion = "191005_v1.0";
diff --git a/pkgs/development/libraries/lrdf/default.nix b/pkgs/development/libraries/lrdf/default.nix
index bd78a4329a597..c9597f8320cb6 100644
--- a/pkgs/development/libraries/lrdf/default.nix
+++ b/pkgs/development/libraries/lrdf/default.nix
@@ -1,6 +1,5 @@
 { config, lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook
-, librdf_raptor2, ladspaH, openssl, zlib
-, doCheck ? config.doCheckByDefault or false, ladspaPlugins
+, librdf_raptor2, doCheck ? config.doCheckByDefault or false, ladspaPlugins
 }:
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/libraries/luabridge/default.nix b/pkgs/development/libraries/luabridge/default.nix
index b2f4db56f66ee..16f8841f89c3f 100644
--- a/pkgs/development/libraries/luabridge/default.nix
+++ b/pkgs/development/libraries/luabridge/default.nix
@@ -30,6 +30,6 @@ stdenvNoCC.mkDerivation rec {
     changelog = "https://github.com/vinniefalco/LuaBridge/blob/${version}/CHANGES.md";
     platforms = platforms.unix;
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/lyra/default.nix b/pkgs/development/libraries/lyra/default.nix
index 0a907bf4d2858..0d34c42b81221 100644
--- a/pkgs/development/libraries/lyra/default.nix
+++ b/pkgs/development/libraries/lyra/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, installShellFiles, meson, ninja }:
+{ lib, stdenv, fetchFromGitHub, meson, ninja }:
 
 stdenv.mkDerivation rec {
   pname = "lyra";
diff --git a/pkgs/development/libraries/mac/default.nix b/pkgs/development/libraries/mac/default.nix
index 8bb245342ca54..ca58c20eab9b6 100644
--- a/pkgs/development/libraries/mac/default.nix
+++ b/pkgs/development/libraries/mac/default.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.deb-multimedia.org/dists/testing/main/binary-amd64/package/monkeys-audio.php";
     license = licenses.unfreeRedistributable;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/magic-enum/default.nix b/pkgs/development/libraries/magic-enum/default.nix
index 7f65505793c74..93bcb8a624d86 100644
--- a/pkgs/development/libraries/magic-enum/default.nix
+++ b/pkgs/development/libraries/magic-enum/default.nix
@@ -4,7 +4,6 @@
 , cmake
 , nix-update-script
 , testers
-, magic-enum
 }:
 stdenv.mkDerivation rec{
   pname = "magic-enum";
@@ -29,7 +28,6 @@ stdenv.mkDerivation rec{
 
   passthru = {
     updateScript = nix-update-script { };
-    tests.version = testers.testVersion { package = magic-enum; };
   };
 
   meta = {
diff --git a/pkgs/development/libraries/mailcore2/default.nix b/pkgs/development/libraries/mailcore2/default.nix
index dddd224ca6faa..1381a48315df4 100644
--- a/pkgs/development/libraries/mailcore2/default.nix
+++ b/pkgs/development/libraries/mailcore2/default.nix
@@ -19,11 +19,11 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libetpan cyrus_sasl libctemplate libuchardet
     html-tidy libxml2 openssl
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     glib
     icu
     libuuid
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.Foundation
   ];
 
@@ -37,12 +37,12 @@ stdenv.mkDerivation rec {
       --replace buffio.h tidybuffio.h
     substituteInPlace src/core/basetypes/MCString.cpp \
       --replace "xmlErrorPtr" "const xmlError *"
-  '' + lib.optionalString (!stdenv.isDarwin) ''
+  '' + lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     substituteInPlace src/core/basetypes/MCICUTypes.h \
       --replace "__CHAR16_TYPE__ UChar" "char16_t UChar"
   '';
 
-  cmakeFlags = lib.optionals (!stdenv.isDarwin) [
+  cmakeFlags = lib.optionals (!stdenv.hostPlatform.isDarwin) [
     "-DBUILD_SHARED_LIBS=ON"
   ];
 
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     cp src/libMailCore.* $out/lib
   '';
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
   checkPhase = ''
     (
       cd unittest
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     description = "Simple and asynchronous API to work with e-mail protocols IMAP, POP and SMTP";
     homepage    = "http://libmailcore.com";
     license     = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/mapnik/catch2-src.patch b/pkgs/development/libraries/mapnik/catch2-src.patch
deleted file mode 100644
index 04c6f7add217c..0000000000000
--- a/pkgs/development/libraries/mapnik/catch2-src.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 0705ddce1..771291b88 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -7,8 +7,7 @@ include(FetchContent)
- 
- FetchContent_Declare(
-   Catch2
--  GIT_REPOSITORY https://github.com/catchorg/Catch2.git
--  GIT_TAG        v2.13.7)
-+  SOURCE_DIR @catch2_src@)
- FetchContent_MakeAvailable(Catch2)
- 
- if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.19.0") 
diff --git a/pkgs/development/libraries/mapnik/default.nix b/pkgs/development/libraries/mapnik/default.nix
index 0428dd585c661..94a5280181ec9 100644
--- a/pkgs/development/libraries/mapnik/default.nix
+++ b/pkgs/development/libraries/mapnik/default.nix
@@ -1,43 +1,46 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, buildPackages
-, cmake
-, pkg-config
-, substituteAll
-, boost
-, cairo
-, freetype
-, gdal
-, harfbuzz
-, icu
-, libjpeg
-, libpng
-, libtiff
-, libwebp
-, libxml2
-, proj
-, python3
-, sqlite
-, zlib
-, catch2
-, postgresql
-, protozero
-, sparsehash
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  gitUpdater,
+  buildPackages,
+  cmake,
+  pkg-config,
+  boost,
+  cairo,
+  freetype,
+  gdal,
+  harfbuzz,
+  icu,
+  libjpeg,
+  libpng,
+  libtiff,
+  libwebp,
+  libxml2,
+  proj,
+  python3,
+  sqlite,
+  zlib,
+  catch2,
+  postgresql,
+  protozero,
+  sparsehash,
 }:
 
 stdenv.mkDerivation rec {
   pname = "mapnik";
-  version = "4.0.0";
+  version = "4.0.2";
 
   src = fetchFromGitHub {
     owner = "mapnik";
     repo = "mapnik";
     rev = "v${version}";
-    hash = "sha256-CNFNGMJU3kzkRrOGsf8/uv5ebHPEQ0tkA+5OubRVEjs=";
+    hash = "sha256-U5QQ7I7ZBNlMm74Vpvv8lvJ4EefM3+jHURFAP03Lmvw=";
     fetchSubmodules = true;
   };
 
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
+
   postPatch = ''
     substituteInPlace configure \
       --replace '$PYTHON scons/scons.py' ${buildPackages.scons}/bin/scons
@@ -56,18 +59,16 @@ stdenv.mkDerivation rec {
     # Upstream HarfBuzz wants to drop CMake support anyway.
     # See discussion: https://github.com/mapnik/mapnik/issues/4265
     ./cmake-harfbuzz.patch
-    # prevent CMake from trying to get libraries on the Internet
-    (substituteAll {
-      src = ./catch2-src.patch;
-      catch2_src = catch2.src;
-    })
     # Account for full paths when generating libmapnik.pc
     ./export-pkg-config-full-paths.patch
     # Use 'sparsehash' package.
     ./use-sparsehash-package.patch
   ];
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
 
   buildInputs = [
     boost
@@ -84,7 +85,7 @@ stdenv.mkDerivation rec {
     python3
     sqlite
     zlib
-    libxml2
+    (libxml2.override { enableHttp = true; })
     postgresql
     protozero
     sparsehash
@@ -99,7 +100,9 @@ stdenv.mkDerivation rec {
     # Use 'protozero' package.
     (lib.cmakeBool "USE_EXTERNAL_MAPBOX_PROTOZERO" true)
     # macOS builds fail when using memory mapped file cache.
-    (lib.cmakeBool "USE_MEMORY_MAPPED_FILE" (!stdenv.isDarwin))
+    (lib.cmakeBool "USE_MEMORY_MAPPED_FILE" (!stdenv.hostPlatform.isDarwin))
+    # don't try to download sources for catch2, use our own
+    (lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_CATCH2" "${catch2.src}")
   ];
 
   doCheck = true;
@@ -122,7 +125,13 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Open source toolkit for developing mapping applications";
     homepage = "https://mapnik.org";
-    maintainers = with maintainers; [ hrdinka hummeltech ];
+    maintainers =
+      with maintainers;
+      teams.geospatial.members
+      ++ [
+        hrdinka
+        hummeltech
+      ];
     license = licenses.lgpl21Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/mapnik/export-pkg-config-full-paths.patch b/pkgs/development/libraries/mapnik/export-pkg-config-full-paths.patch
index ec80423689d3b..8da5dcd5b474e 100644
--- a/pkgs/development/libraries/mapnik/export-pkg-config-full-paths.patch
+++ b/pkgs/development/libraries/mapnik/export-pkg-config-full-paths.patch
@@ -1,13 +1,24 @@
 diff --git a/cmake/MapnikExportPkgConfig.cmake b/cmake/MapnikExportPkgConfig.cmake
-index e459f80ef..ec18a71a2 100644
+index f12ed57f1..548e1e6e9 100644
 --- a/cmake/MapnikExportPkgConfig.cmake
 +++ b/cmake/MapnikExportPkgConfig.cmake
-@@ -65,8 +65,8 @@ prefix=@CMAKE_INSTALL_PREFIX@
+@@ -3,7 +3,7 @@ function(create_pkg_config_file _target _lib_name _description)
+ prefix=@CMAKE_INSTALL_PREFIX@
  exec_prefix=${prefix}
  includedir=${prefix}/include
- libdir=${exec_prefix}/lib
+-libdir=${exec_prefix}/@MAPNIK_LIB_DIR@
++libdir=${exec_prefix}@MAPNIK_LIB_DIR@
+ 
+ Name: @_lib_name@
+ Description: @_description@
+@@ -64,9 +64,9 @@ function(create_pkg_config_file_mapnik _lib_name _description)
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+ includedir=${prefix}/include
+-libdir=${exec_prefix}/@MAPNIK_LIB_DIR@
 -fonts_dir=${prefix}/@FONTS_INSTALL_DIR@
 -plugins_dir=${prefix}/@PLUGINS_INSTALL_DIR@
++libdir=${exec_prefix}@MAPNIK_LIB_DIR@
 +fonts_dir=@FONTS_INSTALL_DIR@
 +plugins_dir=@PLUGINS_INSTALL_DIR@
  
diff --git a/pkgs/development/libraries/matrix-sdk-crypto-nodejs/generic.nix b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/generic.nix
index 63e9861421ab2..c0b068499cd33 100644
--- a/pkgs/development/libraries/matrix-sdk-crypto-nodejs/generic.nix
+++ b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/generic.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     nodejs
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
 
   buildPhase = ''
     runHook preBuild
diff --git a/pkgs/development/libraries/maui-core/default.nix b/pkgs/development/libraries/maui-core/default.nix
index b173498189d6e..901b26f4e646a 100644
--- a/pkgs/development/libraries/maui-core/default.nix
+++ b/pkgs/development/libraries/maui-core/default.nix
@@ -1,5 +1,4 @@
 { lib
-, pkgs
 , mkDerivation
 , libcanberra
 , pulseaudio
diff --git a/pkgs/development/libraries/mbedtls/2.nix b/pkgs/development/libraries/mbedtls/2.nix
index 42fb6edae78f2..1d02915527133 100644
--- a/pkgs/development/libraries/mbedtls/2.nix
+++ b/pkgs/development/libraries/mbedtls/2.nix
@@ -1,6 +1,6 @@
 { callPackage }:
 
 callPackage ./generic.nix {
-  version = "2.28.8";
-  hash = "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=";
+  version = "2.28.9";
+  hash = "sha256-/Bm05CvS9t7WSh4qoMconCaD7frlmA/H9YDyJOuGuFE=";
 }
diff --git a/pkgs/development/libraries/mbedtls/3.nix b/pkgs/development/libraries/mbedtls/3.nix
index d672e218f577f..f8f53522db134 100644
--- a/pkgs/development/libraries/mbedtls/3.nix
+++ b/pkgs/development/libraries/mbedtls/3.nix
@@ -1,18 +1,6 @@
-{ callPackage
-, fetchpatch
-}:
+{ callPackage }:
 
 callPackage ./generic.nix {
-  version = "3.6.0";
-  hash = "sha256-tCwAKoTvY8VCjcTPNwS3DeitflhpKHLr6ygHZDbR6wQ=";
-
-  patches = [
-    # https://github.com/Mbed-TLS/mbedtls/pull/9000
-    # Remove at next version update
-    (fetchpatch {
-      name = "fix-darwin-memcpy-error.patch";
-      url = "https://github.com/Mbed-TLS/mbedtls/commit/b32d7ae0fee2f906be59780b42a0cd4468a39bd1.patch";
-      hash = "sha256-BTkJs9NEkCl+/Q8EwB/LW9uwF95jQOKWmoCK4B/7/sU=";
-    })
-  ];
+  version = "3.6.1";
+  hash = "sha256-SVWz2uOvGIplnBr4g6nwfxKMWVpzdZjusseAhw6GOJ8=";
 }
diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix
deleted file mode 100644
index 53b60dd3159e4..0000000000000
--- a/pkgs/development/libraries/mdds/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib,
-  stdenv,
-  fetchFromGitLab,
-  autoreconfHook,
-  boost,
-  llvmPackages,
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "mdds";
-  version = "2.1.1";
-
-  src = fetchFromGitLab {
-    owner = "mdds";
-    repo = "mdds";
-    rev = finalAttrs.version;
-    hash = "sha256-a412LpgDiYM8TMToaUrTlHtblYS1HehzrDOwvIAAxiA=";
-  };
-
-  nativeBuildInputs = [ autoreconfHook ];
-
-  buildInputs = lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
-
-  nativeCheckInputs = [ boost ];
-
-  postInstall = ''
-    mkdir -p $out/lib/
-    mv $out/share/pkgconfig $out/lib/
-  '';
-
-  meta = with lib; {
-    homepage = "https://gitlab.com/mdds/mdds";
-    description = "Collection of multi-dimensional data structure and indexing algorithms";
-    changelog = "https://gitlab.com/mdds/mdds/-/blob/${finalAttrs.version}/CHANGELOG";
-    license = licenses.mit;
-    maintainers = [ maintainers.AndersonTorres ];
-    platforms = platforms.unix;
-  };
-})
-# TODO: multi-output
diff --git a/pkgs/development/libraries/mdk-sdk/default.nix b/pkgs/development/libraries/mdk-sdk/default.nix
index 89038628f2f91..3381282f675bf 100644
--- a/pkgs/development/libraries/mdk-sdk/default.nix
+++ b/pkgs/development/libraries/mdk-sdk/default.nix
@@ -1,15 +1,15 @@
 { lib, stdenv, fetchurl, autoPatchelfHook
 , alsa-lib, gcc-unwrapped, libX11, libcxx, libdrm, libglvnd, libpulseaudio, libxcb, mesa, wayland, xz, zlib
-, libva, libvdpau, addOpenGLRunpath
+, libva, libvdpau, addDriverRunpath
 }:
 
 stdenv.mkDerivation rec {
   pname = "mdk-sdk";
-  version = "0.27.0";
+  version = "0.29.1";
 
   src = fetchurl {
     url = "https://github.com/wang-bin/mdk-sdk/releases/download/v${version}/mdk-sdk-linux-x64.tar.xz";
-    hash = "sha256-JGYZ+Rodvyo/PkQfuW7xM0aIa3Gql75TwRUU1yZHJJ8=";
+    hash = "sha256-7dkvm5kP3gcQwXOE9DrjoOTzKRiwk/PVeRr7poLdCU0=";
   };
 
   nativeBuildInputs = [ autoPatchelfHook ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   ];
 
   appendRunpaths = lib.makeLibraryPath [
-    libva libvdpau addOpenGLRunpath.driverLink
+    libva libvdpau addDriverRunpath.driverLink
   ];
 
   installPhase = ''
diff --git a/pkgs/development/libraries/medfile/default.nix b/pkgs/development/libraries/medfile/default.nix
index 8c07b2aad31a1..296317788d217 100644
--- a/pkgs/development/libraries/medfile/default.nix
+++ b/pkgs/development/libraries/medfile/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
     substituteInPlace src/*/*.c --replace-warn \
       "#if H5_VERS_MINOR > 12" \
       "#if H5_VERS_MINOR > 14"
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     # Some medfile test files #define _a, which
     # breaks system header files that use _a as a function parameter
     substituteInPlace tests/c/*.c \
diff --git a/pkgs/development/libraries/mediastreamer/default.nix b/pkgs/development/libraries/mediastreamer/default.nix
index f7549376d0bdd..cdd1eb3bdbf7c 100644
--- a/pkgs/development/libraries/mediastreamer/default.nix
+++ b/pkgs/development/libraries/mediastreamer/default.nix
@@ -2,7 +2,8 @@
 , bzrtp
 , cmake
 , fetchFromGitLab
-, ffmpeg_4
+, fetchpatch2
+, ffmpeg_7
 , glew
 , gsm
 , lib
@@ -43,6 +44,12 @@ stdenv.mkDerivation rec {
     # plugin directory with desired plugins and wrap executables so that the
     # environment variable points to that directory.
     ./plugins_dir.patch
+
+    # Port to ffmpeg 5.0 API
+    (fetchpatch2 {
+      url = "https://salsa.debian.org/pkg-voip-team/linphone-stack/mediastreamer2/-/raw/4e7784802d2eac57dffe210c8c23e696f40ac6ec/debian/patches/ffmpeg_5_0_fixes.patch";
+      hash = "sha256-5ay4iVbx8IOX952HEFaKLBGKLRYUWRntufciApUVhh0=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -58,7 +65,7 @@ stdenv.mkDerivation rec {
     bzrtp
     ortp
 
-    ffmpeg_4
+    ffmpeg_7
     glew
     libX11
     libXext
diff --git a/pkgs/development/libraries/mediastreamer/msopenh264.nix b/pkgs/development/libraries/mediastreamer/msopenh264.nix
index 55ae2c8d9899e..7c987f6422691 100644
--- a/pkgs/development/libraries/mediastreamer/msopenh264.nix
+++ b/pkgs/development/libraries/mediastreamer/msopenh264.nix
@@ -1,9 +1,7 @@
-{ autoreconfHook
-, cmake
+{ cmake
 , fetchFromGitLab
 , mediastreamer
 , openh264
-, pkg-config
 , lib
 , stdenv
 }:
diff --git a/pkgs/development/libraries/memorymapping/default.nix b/pkgs/development/libraries/memorymapping/default.nix
index 91af205f0320b..1b3c17bc4f8c6 100644
--- a/pkgs/development/libraries/memorymapping/default.nix
+++ b/pkgs/development/libraries/memorymapping/default.nix
@@ -40,6 +40,6 @@ stdenv.mkDerivation {
     # Uses BSD-style funopen() to implement glibc-style fmemopen().
     # Add more BSDs if you need to.
     platforms = platforms.darwin;
-    broken = stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isAarch64;
   };
 }
diff --git a/pkgs/development/libraries/mesa-glu/default.nix b/pkgs/development/libraries/mesa-glu/default.nix
index bcff20f1847cd..bbcc0bb99a0e7 100644
--- a/pkgs/development/libraries/mesa-glu/default.nix
+++ b/pkgs/development/libraries/mesa-glu/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl
 , meson, ninja
-, pkg-config, libGL, ApplicationServices
+, pkg-config, libGLX
 , testers
 , gitUpdater
 }:
@@ -17,12 +17,11 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
-  propagatedBuildInputs = [ libGL ]
-    ++ lib.optional stdenv.isDarwin ApplicationServices;
+  propagatedBuildInputs = [ libGLX ];
 
   outputs = [ "out" "dev" ];
 
-  mesonFlags = lib.optionals stdenv.isDarwin [
+  mesonFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-Dgl_provider=gl" # glvnd is default
   ];
 
@@ -35,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
     updateScript = gitUpdater {
       # No nicer place to find latest release.
       url = "https://gitlab.freedesktop.org/mesa/glu";
-    rev-prefix = "glu-";
+      rev-prefix = "glu-";
     };
   };
 
diff --git a/pkgs/development/libraries/mesa/common.nix b/pkgs/development/libraries/mesa/common.nix
new file mode 100644
index 0000000000000..c78a3c31e0c2a
--- /dev/null
+++ b/pkgs/development/libraries/mesa/common.nix
@@ -0,0 +1,35 @@
+{ lib, fetchFromGitLab }:
+# When updating this package, please verify at least these build (assuming x86_64-linux):
+# nix build .#mesa .#pkgsi686Linux.mesa .#pkgsCross.aarch64-multiplatform.mesa .#pkgsMusl.mesa
+# Ideally also verify:
+# nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa
+rec {
+  pname = "mesa";
+  version = "24.2.2";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "mesa";
+    repo = "mesa";
+    rev = "mesa-${version}";
+    hash = "sha256-1aRnG5BnFDuBOnGIb7X3yDk4PkhpBbMpp+IjfpmgtkM=";
+  };
+
+  meta = {
+    description = "Open source 3D graphics library";
+    longDescription = ''
+      The Mesa project began as an open-source implementation of the OpenGL
+      specification - a system for rendering interactive 3D graphics. Over the
+      years the project has grown to implement more graphics APIs, including
+      OpenGL ES (versions 1, 2, 3), OpenCL, OpenMAX, VDPAU, VA API, XvMC, and
+      Vulkan.  A variety of device drivers allows the Mesa libraries to be used
+      in many different environments ranging from software emulation to
+      complete hardware acceleration for modern GPUs.
+    '';
+    homepage = "https://www.mesa3d.org/";
+    changelog = "https://docs.mesa3d.org/relnotes/${version}.html";
+    license = with lib.licenses; [ mit ]; # X11 variant, in most files
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ k900 primeos vcunat ]; # Help is welcome :)
+  };
+}
diff --git a/pkgs/development/libraries/mesa/darwin-build-fix.patch b/pkgs/development/libraries/mesa/darwin-build-fix.patch
new file mode 100644
index 0000000000000..f253169b1594c
--- /dev/null
+++ b/pkgs/development/libraries/mesa/darwin-build-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/src/glx/glxext.c b/src/glx/glxext.c
+index eee9f040151..289691db26b 100644
+--- a/src/glx/glxext.c
++++ b/src/glx/glxext.c
+@@ -800,7 +800,7 @@ AllocAndFetchScreenConfigs(Display * dpy, struct glx_display * priv, Bool zink,
+ 
+ #if defined(GLX_USE_APPLE)
+       if (psc == NULL && priv->driswDisplay) {
+-         psc = priv->driswDisplay->createScreen(i, priv);
++         psc = priv->driswDisplay->createScreen(i, priv, driver_name_is_inferred);
+       }
+ #endif
+ 
diff --git a/pkgs/development/libraries/mesa/darwin.nix b/pkgs/development/libraries/mesa/darwin.nix
new file mode 100644
index 0000000000000..5be2a27f74e98
--- /dev/null
+++ b/pkgs/development/libraries/mesa/darwin.nix
@@ -0,0 +1,63 @@
+# The Darwin build of Mesa is different enough that we just give it an entire separate expression.
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  bison,
+  flex,
+  libxml2,
+  llvmPackages,
+  meson,
+  ninja,
+  pkg-config,
+  python3Packages,
+  Xplugin,
+  xorg,
+  zlib,
+}:
+let
+  common = import ./common.nix { inherit lib fetchFromGitLab; };
+in stdenv.mkDerivation {
+  inherit (common) pname version src meta;
+
+  patches = [
+    ./darwin-build-fix.patch
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [
+    bison
+    flex
+    meson
+    ninja
+    pkg-config
+    python3Packages.packaging
+    python3Packages.python
+    python3Packages.mako
+    python3Packages.pyyaml
+  ];
+
+  buildInputs = [
+    libxml2  # should be propagated from libllvm
+    llvmPackages.libllvm
+    Xplugin
+    xorg.libX11
+    xorg.libXext
+    xorg.libXfixes
+    zlib
+  ];
+
+  mesonAutoFeatures = "disabled";
+
+  mesonFlags = [
+    "--sysconfdir=/etc"
+    "--datadir=${placeholder "out"}/share"
+    (lib.mesonEnable "glvnd" false)
+    (lib.mesonEnable "shared-glapi" true)
+    (lib.mesonEnable "llvm" true)
+  ];
+
+  # Don't need this on Darwin.
+  passthru.llvmpipeHook = null;
+}
diff --git a/pkgs/development/libraries/mesa/darwin.patch b/pkgs/development/libraries/mesa/darwin.patch
deleted file mode 100644
index 4649e09afb5ff..0000000000000
--- a/pkgs/development/libraries/mesa/darwin.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/src/glx/glxext.c b/src/glx/glxext.c
-index 8770863eb7c..537f0af112c 100644
---- a/src/glx/glxext.c
-+++ b/src/glx/glxext.c
-@@ -886,10 +886,11 @@ __glXInitialize(Display * dpy)
-    Bool zink = False;
-    Bool try_zink = False;
- 
-+   const char *env = getenv("MESA_LOADER_DRIVER_OVERRIDE");
-+
- #if defined(GLX_DIRECT_RENDERING) && (!defined(GLX_USE_APPLEGL) || defined(GLX_USE_APPLE))
-    Bool glx_direct = !debug_get_bool_option("LIBGL_ALWAYS_INDIRECT", false);
-    Bool glx_accel = !debug_get_bool_option("LIBGL_ALWAYS_SOFTWARE", false);
--   const char *env = getenv("MESA_LOADER_DRIVER_OVERRIDE");
- 
-    zink = env && !strcmp(env, "zink");
-    try_zink = False;
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index af5baf1bc3a5f..f5d44ff4623a6 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -1,20 +1,19 @@
 { lib
-, OpenGL
-, Xplugin
 , bison
 , buildPackages
 , directx-headers
 , elfutils
 , expat
 , fetchCrate
-, fetchurl
+, fetchFromGitLab
+, fetchpatch
 , file
 , flex
 , glslang
+, spirv-tools
 , intltool
 , jdupes
 , libdrm
-, libffi
 , libglvnd
 , libomxil-bellagio
 , libunwind
@@ -24,7 +23,6 @@
 , lm_sensors
 , meson
 , ninja
-, openssl
 , pkg-config
 , python3Packages
 , rust-bindgen
@@ -42,47 +40,35 @@
 , xcbutilkeysyms
 , xorg
 , zstd
-, withValgrind ?
-  lib.meta.availableOn stdenv.hostPlatform valgrind-light
-  && !valgrind-light.meta.broken
-, withLibunwind ? lib.meta.availableOn stdenv.hostPlatform libunwind
-, enableGalliumNine ? stdenv.isLinux
-, enableOSMesa ? stdenv.isLinux
-, enableOpenCL ? stdenv.isLinux && stdenv.isx86_64
-, enableTeflon ? stdenv.isLinux && stdenv.isAarch64  # currently only supports aarch64 SoCs, may change in the future
 , enablePatentEncumberedCodecs ? true
+, withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind-light
 
-, galliumDrivers ?
-  if stdenv.isLinux
-  then [
+, galliumDrivers ? [
     "d3d12" # WSL emulated GPU (aka Dozen)
     "iris" # new Intel (Broadwell+)
-    "kmsro" # special "render only" driver for GPUs without a display controller
+    "llvmpipe" # software renderer
     "nouveau" # Nvidia
-    "radeonsi" # new AMD (GCN+)
     "r300" # very old AMD
     "r600" # less old AMD
-    "swrast" # software renderer (aka LLVMPipe)
+    "radeonsi" # new AMD (GCN+)
+    "softpipe" # older software renderer
     "svga" # VMWare virtualized GPU
     "virgl" # QEMU virtualized GPU (aka VirGL)
     "zink" # generic OpenGL over Vulkan, experimental
-  ] ++ lib.optionals (stdenv.isAarch64 || stdenv.isAarch32) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isAarch64 || stdenv.hostPlatform.isAarch32) [
     "etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs)
     "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
     "lima" # ARM Mali 4xx
     "panfrost" # ARM Mali Midgard and up (T/G series)
     "vc4" # Broadcom VC4 (Raspberry Pi 0-3)
-  ] ++ lib.optionals stdenv.isAarch64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
     "tegra" # Nvidia Tegra SoCs
     "v3d" # Broadcom VC5 (Raspberry Pi 4)
   ] ++ lib.optionals stdenv.hostPlatform.isx86 [
     "crocus" # Intel legacy, x86 only
     "i915" # Intel extra legacy, x86 only
   ]
-  else [ "auto" ]
-, vulkanDrivers ?
-  if stdenv.isLinux
-  then [
+, vulkanDrivers ? [
     "amd" # AMD (aka RADV)
     "intel" # new Intel (aka ANV)
     "microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen)
@@ -92,7 +78,7 @@
     # QEMU virtualized GPU (aka VirGL)
     # Requires ATOMIC_INT_LOCK_FREE == 2.
     "virtio"
-  ] ++ lib.optionals stdenv.isAarch64 [
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
     "broadcom" # Broadcom VC5 (Raspberry Pi 4, aka V3D)
     "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
     "imagination-experimental" # PowerVR Rogue (currently N/A)
@@ -100,32 +86,17 @@
   ] ++ lib.optionals stdenv.hostPlatform.isx86 [
     "intel_hasvk" # Intel Haswell/Broadwell, "legacy" Vulkan driver (https://www.phoronix.com/news/Intel-HasVK-Drop-Dead-Code)
   ]
-  else [ "auto" ]
-, eglPlatforms ? [ "x11" ] ++ lib.optionals stdenv.isLinux [ "wayland" ]
-, vulkanLayers ? lib.optionals (!stdenv.isDarwin) [ # No Vulkan support on Darwin
-  "device-select"
-  "overlay"
-  "intel-nullhw"
-]
+, eglPlatforms ? [ "x11" "wayland" ]
+, vulkanLayers ? [
+    "device-select"
+    "overlay"
+    "intel-nullhw"
+  ]
+, mesa
+, makeSetupHook
 }:
 
-# When updating this package, please verify at least these build (assuming x86_64-linux):
-# nix build .#mesa .#pkgsi686Linux.mesa .#pkgsCross.aarch64-multiplatform.mesa .#pkgsMusl.mesa
-
 let
-  version = "24.1.1";
-  hash = "sha256-ADiCbG9+iNkLTOb3GRkvpYyn3t9O3KoRdM972SDvieo=";
-
-  # Release calendar: https://www.mesa3d.org/release-calendar.html
-  # Release frequency: https://www.mesa3d.org/releasing.html#schedule
-  branch = lib.versions.major version;
-
-  withLibdrm = lib.meta.availableOn stdenv.hostPlatform libdrm;
-
-  haveWayland = lib.elem "wayland" eglPlatforms;
-  haveZink = lib.elem "zink" galliumDrivers;
-  haveDozen = (lib.elem "d3d12" galliumDrivers) || (lib.elem "microsoft-experimental" vulkanDrivers);
-
   rustDeps = [
     {
       pname = "paste";
@@ -134,8 +105,8 @@ let
     }
     {
       pname = "proc-macro2";
-      version = "1.0.70";
-      hash = "sha256-e4ZgyZUTu5nAtaH5QVkLelqJQX/XPj/rWkzf/g2c+1g=";
+      version = "1.0.86";
+      hash = "sha256-9fYAlWRGVIwPp8OKX7Id84Kjt8OoN2cANJ/D9ZOUUZE=";
     }
     {
       pname = "quote";
@@ -144,8 +115,8 @@ let
     }
     {
       pname = "syn";
-      version = "2.0.39";
-      hash = "sha256-Mjen2L/omhVbhU/+Ao65mogs3BP3fY+Bodab3uU63EI=";
+      version = "2.0.68";
+      hash = "sha256-nGLBbxR0DFBpsXMngXdegTm/o13FBS6QsM7TwxHXbgQ=";
     }
     {
       pname = "unicode-ident";
@@ -162,28 +133,13 @@ let
   copyRustDeps = lib.concatStringsSep "\n" (builtins.map copyRustDep rustDeps);
 
   needNativeCLC = !stdenv.buildPlatform.canExecute stdenv.hostPlatform;
-self = stdenv.mkDerivation {
-  pname = "mesa";
-  inherit version;
-
-  src = fetchurl {
-    urls = [
-      "https://archive.mesa3d.org/mesa-${version}.tar.xz"
-      "https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz"
-      "ftp://ftp.freedesktop.org/pub/mesa/mesa-${version}.tar.xz"
-      "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"
-    ];
-    inherit hash;
-  };
+
+  common = import ./common.nix { inherit lib fetchFromGitLab; };
+in stdenv.mkDerivation {
+  inherit (common) pname version src meta;
 
   patches = [
     ./opencl.patch
-  ] ++ lib.optionals stdenv.isDarwin [
-    # Reorder things to make it build on Darwin again
-    # Submitted upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29592
-    # FIXME: remove when merged or otherwise addressed
-    ./darwin.patch
   ];
 
   postPatch = ''
@@ -201,16 +157,7 @@ self = stdenv.mkDerivation {
   '';
 
   outputs = [
-    "out" "dev" "drivers"
-  ] ++ lib.optionals enableOSMesa [
-    "osmesa"
-  ] ++ lib.optionals stdenv.isLinux [
-    "driversdev"
-  ] ++ lib.optionals enableTeflon [
-    "teflon"
-  ] ++ lib.optionals enableOpenCL [
-    "opencl"
-  ] ++ lib.optionals haveDozen [
+    "out" "dev" "drivers" "driversdev" "opencl" "teflon" "osmesa"
     # the Dozen drivers depend on libspirv2dxil, but link it statically, and
     # libspirv2dxil itself is pretty chonky, so relocate it to its own output in
     # case anything wants to use it at some point
@@ -228,69 +175,50 @@ self = stdenv.mkDerivation {
 
   mesonFlags = [
     "--sysconfdir=/etc"
-    "--datadir=${placeholder "drivers"}/share" # Vendor files
-
-    # Don't build in debug mode
-    # https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/meson.html#L327
-    (lib.mesonBool "b_ndebug" true)
-
-    (lib.mesonOption "dri-search-path" "${libglvnd.driverLink}/lib/dri")
+    "--datadir=${placeholder "drivers"}/share"
 
+    # What to build
     (lib.mesonOption "platforms" (lib.concatStringsSep "," eglPlatforms))
     (lib.mesonOption "gallium-drivers" (lib.concatStringsSep "," galliumDrivers))
     (lib.mesonOption "vulkan-drivers" (lib.concatStringsSep "," vulkanDrivers))
+    (lib.mesonOption "vulkan-layers" (builtins.concatStringsSep "," vulkanLayers))
 
+    # Make sure we know where to find all the drivers
     (lib.mesonOption "dri-drivers-path" "${placeholder "drivers"}/lib/dri")
     (lib.mesonOption "vdpau-libs-path" "${placeholder "drivers"}/lib/vdpau")
     (lib.mesonOption "omx-libs-path" "${placeholder "drivers"}/lib/bellagio")
     (lib.mesonOption "va-libs-path" "${placeholder "drivers"}/lib/dri")
     (lib.mesonOption "d3d-drivers-path" "${placeholder "drivers"}/lib/d3d")
 
-    (lib.mesonBool "gallium-nine" enableGalliumNine) # Direct3D in Wine
-    (lib.mesonBool "osmesa" enableOSMesa) # used by wine
-    (lib.mesonBool "teflon" enableTeflon) # TensorFlow frontend
-    (lib.mesonEnable "microsoft-clc" false) # Only relevant on Windows (OpenCL 1.2 API on top of D3D12)
-
-    # To enable non-mesa gbm backends to be found (e.g. Nvidia)
+    # Set search paths for non-Mesa drivers (e.g. Nvidia)
+    (lib.mesonOption "dri-search-path" "${libglvnd.driverLink}/lib/dri")
     (lib.mesonOption "gbm-backends-path" "${libglvnd.driverLink}/lib/gbm:${placeholder "out"}/lib/gbm")
 
-    # meson auto_features enables these features, but we do not want them
-    (lib.mesonEnable "android-libbacktrace" false)
-  ] ++ lib.optionals stdenv.isLinux [
+    # Enable glvnd for dynamic libGL dispatch
     (lib.mesonEnable "glvnd" true)
+
+    (lib.mesonBool "gallium-nine" true) # Direct3D in Wine
+    (lib.mesonBool "osmesa" true) # used by wine
+    (lib.mesonBool "teflon" true) # TensorFlow frontend
+
+    # Enable Intel RT stuff when available
     (lib.mesonBool "install-intel-clc" true)
-    (lib.mesonEnable "intel-rt" stdenv.isx86_64)
+    (lib.mesonEnable "intel-rt" stdenv.hostPlatform.isx86_64)
     (lib.mesonOption "clang-libdir" "${llvmPackages.clang-unwrapped.lib}/lib")
-  ] ++ lib.optionals stdenv.isDarwin [
-    # Disable features that are explicitly unsupported on the platform
-    (lib.mesonEnable "gbm" false)
-    (lib.mesonEnable "xlib-lease" false)
-    (lib.mesonEnable "egl" false)
-    (lib.mesonEnable "gallium-vdpau" false)
-    (lib.mesonEnable "gallium-va" false)
-    (lib.mesonEnable "gallium-xa" false)
-    (lib.mesonEnable "lmsensors" false)
-    # Don’t build with glvnd support to make sure Mesa builds libGL on Darwin
-    (lib.mesonEnable "glvnd" false)
-    # This gets enabled by mesonAutoFeatures and fails on aarch64-darwin,
-    # which makes no sense because Darwin has neither Intel nor RT, but OK
-    (lib.mesonEnable "intel-rt" false)
-  ] ++ lib.optionals enableOpenCL [
+
     # Clover, old OpenCL frontend
     (lib.mesonOption "gallium-opencl" "icd")
     (lib.mesonBool "opencl-spirv" true)
 
     # Rusticl, new OpenCL frontend
     (lib.mesonBool "gallium-rusticl" true)
-  ] ++ lib.optionals (!withValgrind) [
-    (lib.mesonEnable "valgrind" false)
-  ] ++ lib.optionals (!withLibunwind) [
-    (lib.mesonEnable "libunwind" false)
-  ]
-  ++ lib.optionals enablePatentEncumberedCodecs [
+
+    # meson auto_features enables this, but we do not want it
+    (lib.mesonEnable "android-libbacktrace" false)
+    (lib.mesonEnable "microsoft-clc" false) # Only relevant on Windows (OpenCL 1.2 API on top of D3D12)
+    (lib.mesonEnable "valgrind" withValgrind)
+  ] ++ lib.optionals enablePatentEncumberedCodecs [
     (lib.mesonOption "video-codecs" "all")
-  ] ++ lib.optionals (vulkanLayers != []) [
-    (lib.mesonOption "vulkan-layers" (builtins.concatStringsSep "," vulkanLayers))
   ] ++ lib.optionals needNativeCLC [
     (lib.mesonOption "intel-clc" "system")
   ];
@@ -298,61 +226,42 @@ self = stdenv.mkDerivation {
   strictDeps = true;
 
   buildInputs = with xorg; [
+    directx-headers
+    elfutils
     expat
-    glslang
-    libffi
+    spirv-tools
     libglvnd
+    libomxil-bellagio
+    libunwind
+    libva-minimal
     libvdpau
-    llvmPackages.libllvm
-    openssl
-    zstd
-  ] ++ (with xorg; [
     libX11
+    libxcb
     libXext
     libXfixes
     libXrandr
-    libXt
-    libXvMC
-    libpthreadstubs
-    libxcb
     libxshmfence
-    xcbutilkeysyms
-    xorgproto
-  ]) ++ lib.optionals withLibunwind [
-    libunwind
-  ] ++ [
-    python3Packages.python # for shebang
-  ] ++ lib.optionals haveWayland [
-    wayland
-    wayland-protocols
-  ] ++ lib.optionals stdenv.isLinux [
-    libomxil-bellagio
-    libva-minimal
+    libXxf86vm
+    llvmPackages.clang
     llvmPackages.clang-unwrapped
     llvmPackages.libclc
+    llvmPackages.libllvm
     lm_sensors
+    python3Packages.python # for shebang
     spirv-llvm-translator
     udev
-  ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
-    elfutils
-  ] ++ lib.optionals enableOpenCL [
-    llvmPackages.clang
+    vulkan-loader
+    wayland
+    wayland-protocols
+    xcbutilkeysyms
+    xorgproto
+    zstd
   ] ++ lib.optionals withValgrind [
     valgrind-light
-  ] ++ lib.optionals haveZink [
-    vulkan-loader
-  ] ++ lib.optionals haveDozen [
-    directx-headers
   ];
 
   depsBuildBuild = [
     pkg-config
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    # Adding this unconditionally makes x86_64-darwin pick up an older
-    # toolchain, as we explicitly call Mesa with 11.0 stdenv, but buildPackages
-    # is still 10.something, and Mesa can't build with that.
-    # FIXME: figure this out, or figure out how to get rid of Mesa on Darwin,
-    # whichever is easier.
     buildPackages.stdenv.cc
   ];
 
@@ -365,93 +274,71 @@ self = stdenv.mkDerivation {
     flex
     file
     python3Packages.python
+    python3Packages.packaging
     python3Packages.pycparser
     python3Packages.mako
     python3Packages.ply
+    python3Packages.pyyaml
     jdupes
-    glslang
+    # Use bin output from glslang to not propagate the dev output at
+    # the build time with the host glslang.
+    (lib.getBin glslang)
     rustc
     rust-bindgen
     rust-cbindgen
     rustPlatform.bindgenHook
-  ] ++ lib.optionals haveWayland [
     wayland-scanner
   ] ++ lib.optionals needNativeCLC [
-    buildPackages.mesa.driversdev
+    # `or null` to not break eval with `attribute missing` on darwin to linux cross
+    (buildPackages.mesa.driversdev or null)
   ];
 
   disallowedRequisites = lib.optionals needNativeCLC [
-    buildPackages.mesa.driversdev
+    (buildPackages.mesa.driversdev or null)
   ];
 
-  propagatedBuildInputs = (with xorg; [
-    libXdamage
-    libXxf86vm
-  ]) ++ lib.optionals withLibdrm [
-    libdrm
-  ] ++ lib.optionals stdenv.isDarwin [
-    OpenGL
-    Xplugin
-  ];
+  propagatedBuildInputs = [ libdrm ];
 
   doCheck = false;
 
   postInstall = ''
-    # Some installs don't have any drivers so this directory is never created.
-    mkdir -p $drivers $osmesa
-  '' + lib.optionalString stdenv.isLinux ''
-    mkdir -p $drivers/lib
-
-    if [ -n "$(shopt -s nullglob; echo "$out/lib/libxatracker"*)" -o -n "$(shopt -s nullglob; echo "$out/lib/libvulkan_"*)" ]; then
-      # move gallium-related stuff to $drivers, so $out doesn't depend on LLVM
-      mv -t $drivers/lib       \
-        $out/lib/libpowervr_rogue* \
-        $out/lib/libxatracker* \
-        $out/lib/libvulkan_*
-    fi
-
-    if [ -n "$(shopt -s nullglob; echo "$out"/lib/lib*_mesa*)" ]; then
-      # Move other drivers to a separate output
-      mv -t $drivers/lib $out/lib/lib*_mesa*
-    fi
-
-    # Update search path used by glvnd
+    # Move driver-related bits to $drivers
+    moveToOutput "lib/lib*_mesa*" $drivers
+    moveToOutput "lib/libpowervr_rogue*" $drivers
+    moveToOutput "lib/libxatracker*" $drivers
+    moveToOutput "lib/libvulkan_*" $drivers
+
+    # Update search path used by glvnd (it's pointing to $out but drivers are in $drivers)
     for js in $drivers/share/glvnd/egl_vendor.d/*.json; do
-      substituteInPlace "$js" --replace '"libEGL_' '"'"$drivers/lib/libEGL_"
+      substituteInPlace "$js" --replace-fail '"libEGL_' '"'"$drivers/lib/libEGL_"
     done
 
-    # Update search path used by Vulkan (it's pointing to $out but
-    # drivers are in $drivers)
+    # And same for Vulkan
     for js in $drivers/share/vulkan/icd.d/*.json; do
-      substituteInPlace "$js" --replace "$out" "$drivers"
+      substituteInPlace "$js" --replace-fail "$out" "$drivers"
     done
-  '' + lib.optionalString enableOpenCL ''
-    # Move OpenCL stuff
-    mkdir -p $opencl/lib
-    mv -t "$opencl/lib/"     \
-      $out/lib/gallium-pipe   \
-      $out/lib/lib*OpenCL*
-
-    # We construct our own .icd files that contain absolute paths.
-    mkdir -p $opencl/etc/OpenCL/vendors/
-    echo $opencl/lib/libMesaOpenCL.so > $opencl/etc/OpenCL/vendors/mesa.icd
-    echo $opencl/lib/libRusticlOpenCL.so > $opencl/etc/OpenCL/vendors/rusticl.icd
-  '' + lib.optionalString enableOSMesa ''
-    # move libOSMesa to $osmesa, as it's relatively big
-    mkdir -p $osmesa/lib
-    mv -t $osmesa/lib/ $out/lib/libOSMesa*
-  '' + lib.optionalString (vulkanLayers != []) ''
-    mv -t $drivers/lib $out/lib/libVkLayer*
+
+    # Move Vulkan layers to $drivers and update manifests
+    moveToOutput "lib/libVkLayer*" $drivers
     for js in $drivers/share/vulkan/{im,ex}plicit_layer.d/*.json; do
       substituteInPlace "$js" --replace '"libVkLayer_' '"'"$drivers/lib/libVkLayer_"
     done
-  '' + lib.optionalString haveDozen ''
-    mkdir -p $spirv2dxil/{bin,lib}
-    mv -t $spirv2dxil/lib $out/lib/libspirv_to_dxil*
-    mv -t $spirv2dxil/bin $out/bin/spirv2dxil
+
+    # Construct our own .icd files that contain absolute paths.
+    mkdir -p $opencl/etc/OpenCL/vendors/
+    echo $opencl/lib/libMesaOpenCL.so > $opencl/etc/OpenCL/vendors/mesa.icd
+    echo $opencl/lib/libRusticlOpenCL.so > $opencl/etc/OpenCL/vendors/rusticl.icd
+
+    moveToOutput bin/intel_clc $driversdev
+    moveToOutput lib/gallium-pipe $opencl
+    moveToOutput "lib/lib*OpenCL*" $opencl
+    moveToOutput "lib/libOSMesa*" $osmesa
+    moveToOutput bin/spirv2dxil $spirv2dxil
+    moveToOutput "lib/libspirv_to_dxil*" $spirv2dxil
+    moveToOutput lib/libteflon.so $teflon
   '';
 
-  postFixup = lib.optionalString stdenv.isLinux ''
+  postFixup = ''
     # set the default search path for DRI drivers; used e.g. by X server
     for pc in lib/pkgconfig/{dri,d3d}.pc; do
       [ -f "$dev/$pc" ] && substituteInPlace "$dev/$pc" --replace "$drivers" "${libglvnd.driverLink}"
@@ -471,8 +358,6 @@ self = stdenv.mkDerivation {
       fi
     done
 
-    moveToOutput bin/intel_clc $driversdev
-
     # Don't depend on build python
     patchShebangs --host --update $out/bin/*
 
@@ -486,59 +371,31 @@ self = stdenv.mkDerivation {
         patchelf --set-rpath "$(patchelf --print-rpath $lib):$drivers/lib" "$lib"
       fi
     done
-    # add RPATH here so Zink can find libvulkan.so
-    ${lib.optionalString haveZink ''
-      patchelf --add-rpath ${vulkan-loader}/lib $drivers/lib/dri/zink_dri.so
-    ''}
 
-    ${lib.optionalString enableTeflon ''
-      moveToOutput lib/libteflon.so $teflon
-    ''}
+    # add RPATH here so Zink can find libvulkan.so
+    patchelf --add-rpath ${vulkan-loader}/lib $out/lib/libgallium*.so
   '';
 
-  env.NIX_CFLAGS_COMPILE = toString (
-    lib.optionals stdenv.isDarwin [
-      "-fno-common"
-    ] ++ lib.optionals enableOpenCL [
-      "-UPIPE_SEARCH_DIR"
-      "-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""
+  env.NIX_CFLAGS_COMPILE = toString ([
+    "-UPIPE_SEARCH_DIR"
+    "-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""
   ]);
 
   passthru = {
     inherit (libglvnd) driverLink;
     inherit llvmPackages;
 
-    libdrm = if withLibdrm then libdrm else null;
-
-    tests = lib.optionalAttrs stdenv.isLinux {
-      devDoesNotDependOnLLVM = stdenv.mkDerivation {
-        name = "mesa-dev-does-not-depend-on-llvm";
-        buildCommand = ''
-          echo ${self.dev} >>$out
-        '';
-        disallowedRequisites = [ llvmPackages.llvm self.drivers ];
-      };
+    tests.devDoesNotDependOnLLVM = stdenv.mkDerivation {
+      name = "mesa-dev-does-not-depend-on-llvm";
+      buildCommand = ''
+        echo ${mesa.dev} >>$out
+      '';
+      disallowedRequisites = [ llvmPackages.llvm mesa.drivers ];
     };
-  };
 
-  meta = {
-    description = "Open source 3D graphics library";
-    longDescription = ''
-      The Mesa project began as an open-source implementation of the OpenGL
-      specification - a system for rendering interactive 3D graphics. Over the
-      years the project has grown to implement more graphics APIs, including
-      OpenGL ES (versions 1, 2, 3), OpenCL, OpenMAX, VDPAU, VA API, XvMC, and
-      Vulkan.  A variety of device drivers allows the Mesa libraries to be used
-      in many different environments ranging from software emulation to
-      complete hardware acceleration for modern GPUs.
-    '';
-    homepage = "https://www.mesa3d.org/";
-    changelog = "https://www.mesa3d.org/relnotes/${version}.html";
-    license = with lib.licenses; [ mit ]; # X11 variant, in most files
-    platforms = lib.platforms.mesaPlatforms;
-    badPlatforms = []; # Load bearing for libGL meta on Darwin.
-    maintainers = with lib.maintainers; [ primeos vcunat ]; # Help is welcome :)
+    llvmpipeHook = makeSetupHook {
+      name = "llvmpipe-hook";
+      substitutions.drivers = mesa.drivers;
+    } ./llvmpipe-hook.sh;
   };
-};
-
-in self
+}
diff --git a/pkgs/development/libraries/mesa/llvmpipe-hook.sh b/pkgs/development/libraries/mesa/llvmpipe-hook.sh
new file mode 100644
index 0000000000000..6217182b15e89
--- /dev/null
+++ b/pkgs/development/libraries/mesa/llvmpipe-hook.sh
@@ -0,0 +1,14 @@
+# shellcheck shell=bash
+
+# https://docs.mesa3d.org/envvars.html
+export LIBGL_ALWAYS_SOFTWARE=true
+export LIBGL_DRIVERS_PATH=@drivers@/lib/dri
+
+# https://github.com/NVIDIA/libglvnd/blob/master/src/EGL/icd_enumeration.md
+export __EGL_VENDOR_LIBRARY_FILENAMES=@drivers@/share/glvnd/egl_vendor.d/50_mesa.json
+
+# https://github.com/KhronosGroup/Vulkan-Loader/blob/main/docs/LoaderInterfaceArchitecture.md
+# glob because the filenames contain an architecture suffix
+# echo is needed to force-expand the glob
+VK_DRIVER_FILES="$(echo @drivers@/share/vulkan/icd.d/lvp_icd.*.json)"
+export VK_DRIVER_FILES
diff --git a/pkgs/development/libraries/mesa/stubs.nix b/pkgs/development/libraries/mesa/stubs.nix
deleted file mode 100644
index f9c462e9b3267..0000000000000
--- a/pkgs/development/libraries/mesa/stubs.nix
+++ /dev/null
@@ -1,88 +0,0 @@
-{ stdenv
-, libglvnd
-, mesa
-, OpenGL
-, testers
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "libGL";
-  inherit (if stdenv.hostPlatform.isDarwin then mesa else libglvnd) version;
-  outputs = [ "out" "dev" ];
-
-  # On macOS, libglvnd is not supported, so we just use what mesa
-  # build. We need to also include OpenGL.framework, and some
-  # extra tricks to go along with. We add mesa’s libGLX to support
-  # the X extensions to OpenGL.
-  buildCommand = if stdenv.hostPlatform.isDarwin then ''
-    mkdir -p $out/nix-support $dev
-    echo ${OpenGL} >> $out/nix-support/propagated-build-inputs
-    ln -s ${mesa.out}/lib $out/lib
-
-    mkdir -p $dev/lib/pkgconfig $dev/nix-support
-    echo "$out" > $dev/nix-support/propagated-build-inputs
-    ln -s ${mesa.dev}/include $dev/include
-
-    cat <<EOF >$dev/lib/pkgconfig/gl.pc
-  Name: gl
-  Description: gl library
-  Version: ${mesa.version}
-  Libs: -L${mesa.out}/lib -lGL
-  Cflags: -I${mesa.dev}/include
-  EOF
-
-    cat <<EOF >$dev/lib/pkgconfig/glesv1_cm.pc
-  Name: glesv1_cm
-  Description: glesv1_cm library
-  Version: ${mesa.version}
-  Libs: -L${mesa.out}/lib -lGLESv1_CM
-  Cflags: -I${mesa.dev}/include
-  EOF
-
-    cat <<EOF >$dev/lib/pkgconfig/glesv2.pc
-  Name: glesv2
-  Description: glesv2 library
-  Version: ${mesa.version}
-  Libs: -L${mesa.out}/lib -lGLESv2
-  Cflags: -I${mesa.dev}/include
-  EOF
-  ''
-
-  # Otherwise, setup gl stubs to use libglvnd.
-  else ''
-    mkdir -p $out/nix-support
-    ln -s ${libglvnd.out}/lib $out/lib
-
-    mkdir -p $dev/{,lib/pkgconfig,nix-support}
-    echo "$out ${libglvnd} ${libglvnd.dev}" > $dev/nix-support/propagated-build-inputs
-    ln -s ${libglvnd.dev}/include $dev/include
-
-    genPkgConfig() {
-      local name="$1"
-      local lib="$2"
-
-      cat <<EOF >$dev/lib/pkgconfig/$name.pc
-    Name: $name
-    Description: $lib library
-    Version: ${libglvnd.version}
-    Libs: -L${libglvnd.out}/lib -l$lib
-    Cflags: -I${libglvnd.dev}/include
-    EOF
-    }
-
-    genPkgConfig gl GL
-    genPkgConfig egl EGL
-    genPkgConfig glesv1_cm GLESv1_CM
-    genPkgConfig glesv2 GLESv2
-  '';
-
-  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
-
-  meta = {
-    description = "Stub bindings using " + (if stdenv.hostPlatform.isDarwin then "mesa" else "libglvnd");
-    pkgConfigModules = [ "gl" "egl" "glesv1_cm" "glesv2" ];
-  } // {
-    inherit (if stdenv.hostPlatform.isDarwin then mesa.meta else libglvnd.meta)
-      homepage license platforms badPlatforms;
-  };
-})
diff --git a/pkgs/development/libraries/meshoptimizer/default.nix b/pkgs/development/libraries/meshoptimizer/default.nix
index 2c4617d15fc63..c632932e5a53e 100644
--- a/pkgs/development/libraries/meshoptimizer/default.nix
+++ b/pkgs/development/libraries/meshoptimizer/default.nix
@@ -9,12 +9,12 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "meshoptimizer";
-  version = "0.20";
+  version = "0.21";
   src = fetchFromGitHub {
     owner = "zeux";
     repo = "meshoptimizer";
     rev = "v${version}";
-    hash = "sha256-QCxpM2g8WtYSZHkBzLTJNQ/oHb5j/n9rjaVmZJcCZIA=";
+    hash = "sha256-G8rR4Ff3mVxTPD1etI82fYwFawsjrLvwWuEuib+dUBU=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/mimalloc/default.nix b/pkgs/development/libraries/mimalloc/default.nix
index 29fd2b662e694..e8259541c27a6 100644
--- a/pkgs/development/libraries/mimalloc/default.nix
+++ b/pkgs/development/libraries/mimalloc/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   doCheck = !stdenv.hostPlatform.isStatic;
   preCheck = let
-    ldLibraryPathEnv = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
+    ldLibraryPathEnv = if stdenv.hostPlatform.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
   in ''
     export ${ldLibraryPathEnv}="$(pwd)/build:''${${ldLibraryPathEnv}}"
   '';
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   postInstall = let
     rel = lib.versions.majorMinor version;
-    suffix = if stdenv.isLinux then "${soext}.${rel}" else ".${rel}${soext}";
+    suffix = if stdenv.hostPlatform.isLinux then "${soext}.${rel}" else ".${rel}${soext}";
   in ''
     # first, move headers and cmake files, that's easy
     mkdir -p $dev/lib
diff --git a/pkgs/development/libraries/mimetic/default.nix b/pkgs/development/libraries/mimetic/default.nix
index 668b2fdf10c93..33b6e1b8cae8d 100644
--- a/pkgs/development/libraries/mimetic/default.nix
+++ b/pkgs/development/libraries/mimetic/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       url = "https://github.com/tat/mimetic/commit/bf84940f9021950c80846e6b1a5f8b0b55991b00.patch";
       sha256 = "sha256-1JW9zPg67BgNsdIjK/jp9j7QMg50eRMz5FsDsbbzBlI=";
     })
-  ] ++ lib.optional stdenv.isAarch64 ./narrowing.patch;
+  ] ++ lib.optional stdenv.hostPlatform.isAarch64 ./narrowing.patch;
 
   meta = with lib; {
     description = "MIME handling library";
diff --git a/pkgs/development/libraries/minixml/default.nix b/pkgs/development/libraries/minixml/default.nix
index 4d06613f1de8e..3438cb9290b68 100644
--- a/pkgs/development/libraries/minixml/default.nix
+++ b/pkgs/development/libraries/minixml/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   # remove the -arch flags which are set by default in the build
-  configureFlags = lib.optionals stdenv.isDarwin [
+  configureFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "--with-archflags=\"-mmacosx-version-min=10.14\""
   ];
 
@@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.msweet.org/mxml/";
     license = licenses.asl20;
     platforms = platforms.all;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/minizip-ng/default.nix b/pkgs/development/libraries/minizip-ng/default.nix
index baf6a4f687a43..b15997cb436b3 100644
--- a/pkgs/development/libraries/minizip-ng/default.nix
+++ b/pkgs/development/libraries/minizip-ng/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "zlib-ng";
-    repo = finalAttrs.pname;
+    repo = "minizip-ng";
     rev = finalAttrs.version;
     hash = "sha256-rP3WficGQZ2sSYnU9Tj0lVl36ShwV76fn/1lv+TrK2c=";
   };
@@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-DMZ_BUILD_TESTS=${if finalAttrs.finalPackage.doCheck then "ON" else "OFF"}"
     "-DMZ_BUILD_UNIT_TESTS=${if finalAttrs.finalPackage.doCheck then "ON" else "OFF"}"
     "-DMZ_LIB_SUFFIX='-ng'"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # missing header file
     "-DMZ_LIBCOMP=OFF"
   ];
diff --git a/pkgs/development/libraries/mitama-cpp-result/default.nix b/pkgs/development/libraries/mitama-cpp-result/default.nix
index 7700483529a9b..69d910e3bd991 100644
--- a/pkgs/development/libraries/mitama-cpp-result/default.nix
+++ b/pkgs/development/libraries/mitama-cpp-result/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
       (like Result and Option in Programming Language Rust).
     '';
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 })
diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix
index af397eb3c5c29..c3fa57204987e 100644
--- a/pkgs/development/libraries/mlt/default.nix
+++ b/pkgs/development/libraries/mlt/default.nix
@@ -23,7 +23,7 @@
 , darwin
 , cudaSupport ? config.cudaSupport
 , cudaPackages ? { }
-, enableJackrack ? stdenv.isLinux
+, enableJackrack ? stdenv.hostPlatform.isLinux
 , glib
 , ladspa-sdk
 , ladspaPlugins
@@ -31,22 +31,27 @@
 , python3
 , swig
 , qt ? null
-, enableSDL1 ? stdenv.isLinux
+, enableSDL1 ? stdenv.hostPlatform.isLinux
 , SDL
 , enableSDL2 ? true
 , SDL2
 , gitUpdater
+, libarchive
 }:
 
 stdenv.mkDerivation rec {
   pname = "mlt";
-  version = "7.24.0";
+  version = "7.28.0";
 
   src = fetchFromGitHub {
     owner = "mltframework";
     repo = "mlt";
     rev = "v${version}";
-    hash = "sha256-nQ9uRip6i9+/MziU4gQq1ah712J6f94cFQWTDYRjzyE=";
+    hash = "sha256-rXxjHXXIFFggd2v9ZlNBs0XUDmvJxLvR2JfGkTxDYEA=";
+    # The submodule contains glaxnimate code, since MLT uses internally some functions defined in glaxnimate.
+    # Since glaxnimate is not available as a library upstream, we cannot remove for now this dependency on
+    # submodules until upstream exports glaxnimate as a library: https://gitlab.com/mattbas/glaxnimate/-/issues/545
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [
@@ -78,7 +83,7 @@ stdenv.mkDerivation rec {
     rubberband
     sox
     vid-stab
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk_11_0.frameworks.Accelerate
   ] ++ lib.optionals cudaSupport [
     cudaPackages.cuda_cudart
@@ -90,6 +95,7 @@ stdenv.mkDerivation rec {
     qt.qtbase
     qt.qtsvg
     (qt.qt5compat or null)
+    libarchive
   ] ++ lib.optionals enableSDL1 [
     SDL
   ] ++ lib.optionals enableSDL2 [
@@ -106,6 +112,7 @@ stdenv.mkDerivation rec {
     "-DSWIG_PYTHON=ON"
   ] ++ lib.optionals (qt != null) [
     "-DMOD_QT${lib.versions.major qt.qtbase.version}=ON"
+    "-DMOD_GLAXNIMATE${if lib.versions.major qt.qtbase.version == "5" then "" else "_QT6"}=ON"
   ];
 
   preFixup = ''
@@ -133,7 +140,7 @@ stdenv.mkDerivation rec {
     description = "Open source multimedia framework, designed for television broadcasting";
     homepage = "https://www.mltframework.org/";
     license = with licenses; [ lgpl21Plus gpl2Plus ];
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/mongoc/default.nix b/pkgs/development/libraries/mongoc/default.nix
index 9ab45a77ff3b9..fc967445d01cd 100644
--- a/pkgs/development/libraries/mongoc/default.nix
+++ b/pkgs/development/libraries/mongoc/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mongoc";
-  version = "1.27.3";
+  version = "1.28.0";
 
   src = fetchFromGitHub {
     owner = "mongodb";
     repo = "mongo-c-driver";
     rev = "refs/tags/${version}";
-    hash = "sha256-j/Z1fwP7Lt1izRmSxAqnWDX7ehD7QQWXERUIdyPpwMU=";
+    hash = "sha256-cfet+A2i33iHbVRouPS4Ul8TmHolrcIMTRba6Olqfeg=";
   };
 
   nativeBuildInputs = [
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     icu
     cyrus_sasl
     snappy
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk_11_0.frameworks.Security
   ];
 
diff --git a/pkgs/development/libraries/mongocxx/default.nix b/pkgs/development/libraries/mongocxx/default.nix
index a17e7f8d037f6..415e7ca96e3ab 100644
--- a/pkgs/development/libraries/mongocxx/default.nix
+++ b/pkgs/development/libraries/mongocxx/default.nix
@@ -1,5 +1,5 @@
 { lib
-, stdenv
+, pkgs
 , fetchFromGitHub
 , mongoc
 , openssl
@@ -7,23 +7,26 @@
 , cmake
 , validatePkgConfig
 , testers
+, darwin
 }:
 
+let stdenv = if pkgs.stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else pkgs.stdenv; in
+
 stdenv.mkDerivation (finalAttrs: {
   pname = "mongocxx";
-  version = "3.8.1";
+  version = "3.10.2";
 
   src = fetchFromGitHub {
     owner = "mongodb";
     repo = "mongo-cxx-driver";
     rev = "refs/tags/r${finalAttrs.version}";
-    hash = "sha256-fBZg69jsvXzhllpcPBGXkjYyvUQImnGNkb2Ek5Oi0p4=";
+    hash = "sha256-nGLE0vyCe3PaNJf3duXdBfAhTdRvdeQ+OCwcaSDxi5Y=";
   };
 
   postPatch = ''
-    substituteInPlace src/bsoncxx/config/CMakeLists.txt \
-      src/mongocxx/config/CMakeLists.txt \
-      --replace "\\\''${prefix}/" ""
+    substituteInPlace src/bsoncxx/cmake/libbsoncxx.pc.in \
+      src/mongocxx/cmake/libmongocxx.pc.in \
+      --replace "\''${prefix}/" ""
   '';
 
   nativeBuildInputs = [
@@ -35,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
     mongoc
     openssl
     cyrus_sasl
-  ];
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Security;
 
   cmakeFlags = [
     "-DCMAKE_CXX_STANDARD=20"
@@ -49,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Official C++ client library for MongoDB";
     homepage = "http://mongocxx.org";
     license = licenses.asl20;
-    maintainers = with maintainers; [ adriandole ];
+    maintainers = with maintainers; [ adriandole vcele ];
     pkgConfigModules = [ "libmongocxx" "libbsoncxx" ];
     platforms = platforms.all;
     badPlatforms = [ "x86_64-darwin" ]; # needs sdk >= 10.14
diff --git a/pkgs/development/libraries/motif/default.nix b/pkgs/development/libraries/motif/default.nix
index 8551510b476ca..d59c5894836d2 100644
--- a/pkgs/development/libraries/motif/default.nix
+++ b/pkgs/development/libraries/motif/default.nix
@@ -61,6 +61,13 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  env = lib.optionalAttrs stdenv.cc.isClang {
+    NIX_CFLAGS_COMPILE = toString [
+      "-Wno-error=implicit-function-declaration"
+      "-Wno-error=incompatible-function-pointer-types"
+    ];
+  };
+
   enableParallelBuilding = true;
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/movit/default.nix b/pkgs/development/libraries/movit/default.nix
index 4601e04f03c95..55a4ec26025a4 100644
--- a/pkgs/development/libraries/movit/default.nix
+++ b/pkgs/development/libraries/movit/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     SDL2
     fftw
     gtest
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.OpenGL
     darwin.libobjc
   ];
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     libepoxy
   ];
 
-  env = lib.optionalAttrs stdenv.isDarwin {
+  env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
     NIX_LDFLAGS = "-framework OpenGL";
   };
 
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     description = "High-performance, high-quality video filters for the GPU";
     homepage = "https://movit.sesse.net";
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/mpdecimal/default.nix b/pkgs/development/libraries/mpdecimal/default.nix
index 687abab7d45b9..1041100f9f8eb 100644
--- a/pkgs/development/libraries/mpdecimal/default.nix
+++ b/pkgs/development/libraries/mpdecimal/default.nix
@@ -52,6 +52,6 @@ stdenv.mkDerivation rec {
 
     maintainers = with lib.maintainers; [ kaction ];
 
-    platforms = lib.platforms.unix;
+    platforms = lib.platforms.unix ++ lib.platforms.windows;
   };
 }
diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix
index dec33a63d155e..2ba09fc226fda 100644
--- a/pkgs/development/libraries/mpfr/default.nix
+++ b/pkgs/development/libraries/mpfr/default.nix
@@ -3,6 +3,7 @@
 , fetchurl
 , gmp
 , writeScript
+, updateAutotoolsGnuConfigScriptsHook
 }:
 
 # Note: this package is used for bootstrapping fetchurl, and thus
@@ -25,6 +26,9 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" "doc" "info" ];
 
   strictDeps = true;
+  # necessary to build on FreeBSD native pending inclusion of
+  # https://git.savannah.gnu.org/cgit/config.git/commit/?id=e4786449e1c26716e3f9ea182caf472e4dbc96e0
+  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
   # mpfr.h requires gmp.h
   propagatedBuildInputs = [ gmp ];
 
diff --git a/pkgs/development/libraries/mpich/default.nix b/pkgs/development/libraries/mpich/default.nix
index bb7f9f5807d69..4af559b50758c 100644
--- a/pkgs/development/libraries/mpich/default.nix
+++ b/pkgs/development/libraries/mpich/default.nix
@@ -21,11 +21,11 @@ assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric");
 
 stdenv.mkDerivation  rec {
   pname = "mpich";
-  version = "4.2.1";
+  version = "4.2.2";
 
   src = fetchurl {
     url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz";
-    sha256 = "sha256-IzMbIpnyh8NBlyftwt+JItfnq7uf0Kx04DuZZvmtQtc=";
+    sha256 = "sha256-iD9bs66r9ifLhJLKAqA7GR0Jg2u+D1mdhQg1EXl4HUE=";
   };
 
   outputs = [ "out" "doc" "man" ];
@@ -44,12 +44,12 @@ stdenv.mkDerivation  rec {
 
   nativeBuildInputs = [ gfortran python3 ];
   buildInputs = [ perl openssh hwloc ]
-    ++ lib.optional (!stdenv.isDarwin) ch4backend
+    ++ lib.optional (!stdenv.hostPlatform.isDarwin) ch4backend
     ++ lib.optional pmixSupport pmix
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Foundation;
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Foundation;
 
   # test_double_serializer.test fails on darwin
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   preFixup = ''
     # Ensure the default compilers are the ones mpich was built with
diff --git a/pkgs/development/libraries/mpir/default.nix b/pkgs/development/libraries/mpir/default.nix
index 26f22fd9968f2..9857317ea1889 100644
--- a/pkgs/development/libraries/mpir/default.nix
+++ b/pkgs/development/libraries/mpir/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   configureFlags = [ "--enable-cxx" ]
-    ++ lib.optionals stdenv.isLinux [ "--enable-fat" ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ "--enable-fat" ];
 
   meta = {
     description = "Highly optimised library for bignum arithmetic forked from GMP";
diff --git a/pkgs/development/libraries/msgpack-c/default.nix b/pkgs/development/libraries/msgpack-c/default.nix
index 63a712b0881e3..3d8cae18ace05 100644
--- a/pkgs/development/libraries/msgpack-c/default.nix
+++ b/pkgs/development/libraries/msgpack-c/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "msgpack-c";
-  version = "6.0.1";
+  version = "6.0.2";
 
   src = fetchFromGitHub {
     owner = "msgpack";
     repo = "msgpack-c";
     rev = "refs/tags/c-${finalAttrs.version}";
-    hash = "sha256-BXnK7xNRdZvbSz7tERf/PDJkmxbqAC6trH+h36O/v6k=";
+    hash = "sha256-Tjgn9ayyPK1mKA4OBr7/VogSzJwh5RZR5BrMNadfqak=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/multipart-parser-c/default.nix b/pkgs/development/libraries/multipart-parser-c/default.nix
index 89665f2efc9af..ef4834b8c0058 100644
--- a/pkgs/development/libraries/multipart-parser-c/default.nix
+++ b/pkgs/development/libraries/multipart-parser-c/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Http multipart parser implemented in C ";
+    description = "Http multipart parser implemented in C";
     homepage = "https://github.com/iafonov/multipart-parser-c";
     license = [ lib.licenses.mit ];
   };
diff --git a/pkgs/development/libraries/mvapich/default.nix b/pkgs/development/libraries/mvapich/default.nix
index 2182c40833765..1299d06d46877 100644
--- a/pkgs/development/libraries/mvapich/default.nix
+++ b/pkgs/development/libraries/mvapich/default.nix
@@ -25,17 +25,17 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config bison makeWrapper gfortran ];
   propagatedBuildInputs = [ numactl rdma-core zlib opensm ];
-  buildInputs = with lib; [
+  buildInputs = [
     numactl
     libxml2
     perl
     openssh
     hwloc
-  ] ++ optionals (network == "infiniband") [ rdma-core opensm ]
-    ++ optionals (network == "omnipath") [ libpsm2 libfabric ]
-    ++ optional useSlurm slurm;
+  ] ++ lib.optionals (network == "infiniband") [ rdma-core opensm ]
+    ++ lib.optionals (network == "omnipath") [ libpsm2 libfabric ]
+    ++ lib.optional useSlurm slurm;
 
-  configureFlags = with lib; [
+  configureFlags = [
     "--with-pm=hydra"
     "--enable-fortran=all"
     "--enable-cxx"
@@ -43,10 +43,10 @@ stdenv.mkDerivation rec {
     "--enable-hybrid"
     "--enable-shared"
     "FFLAGS=-fallow-argument-mismatch" # fix build with gfortran 10
-  ] ++ optional useSlurm "--with-pm=slurm"
-    ++ optional (network == "ethernet") "--with-device=ch3:sock"
-    ++ optionals (network == "infiniband") [ "--with-device=ch3:mrail" "--with-rdma=gen2" "--disable-ibv-dlopen" ]
-    ++ optionals (network == "omnipath") ["--with-device=ch3:psm" "--with-psm2=${libpsm2}"];
+  ] ++ lib.optional useSlurm "--with-pm=slurm"
+    ++ lib.optional (network == "ethernet") "--with-device=ch3:sock"
+    ++ lib.optionals (network == "infiniband") [ "--with-device=ch3:mrail" "--with-rdma=gen2" "--disable-ibv-dlopen" ]
+    ++ lib.optionals (network == "omnipath") ["--with-device=ch3:psm" "--with-psm2=${libpsm2}"];
 
   doCheck = true;
 
diff --git a/pkgs/development/libraries/mvfst/default.nix b/pkgs/development/libraries/mvfst/default.nix
index 0a784fff339ac..7c9d2e8da445b 100644
--- a/pkgs/development/libraries/mvfst/default.nix
+++ b/pkgs/development/libraries/mvfst/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
diff --git a/pkgs/development/libraries/mygui/default.nix b/pkgs/development/libraries/mygui/default.nix
index c785e640ccb0a..d52eadbba6cd7 100644
--- a/pkgs/development/libraries/mygui/default.nix
+++ b/pkgs/development/libraries/mygui/default.nix
@@ -45,12 +45,12 @@ stdenv.mkDerivation rec {
     ois
   ] ++ lib.optionals withOgre [
     ogre
-  ] ++ lib.optionals (!withOgre && stdenv.isLinux) [
+  ] ++ lib.optionals (!withOgre && stdenv.hostPlatform.isLinux) [
     libGL
     libGLU
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libX11
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Cocoa
   ];
 
diff --git a/pkgs/development/libraries/nanoflann/default.nix b/pkgs/development/libraries/nanoflann/default.nix
deleted file mode 100644
index 24b4a18c70884..0000000000000
--- a/pkgs/development/libraries/nanoflann/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, buildExamples ? false
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  version = "1.5.5";
-  pname = "nanoflann";
-
-  src = fetchFromGitHub {
-    owner = "jlblancoc";
-    repo = "nanoflann";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-a1XX1tvXfrPCar9EGMXzxLg2bXJaK85t2Bd8CworwFk=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [
-    (lib.cmakeBool "BUILD_EXAMPLES" buildExamples)
-  ];
-
-  doCheck = true;
-  checkTarget = "test";
-
-  meta = {
-    homepage = "https://github.com/jlblancoc/nanoflann";
-    description = "Header only C++ library for approximate nearest neighbor search";
-    longDescription = ''
-      nanoflann is a C++11 header-only library for building KD-Trees of datasets
-      with different topologies: R2, R3 (point clouds), SO(2) and SO(3) (2D and
-      3D rotation groups). No support for approximate NN is provided. nanoflann
-      does not require compiling or installing. You just need to #include
-      <nanoflann.hpp> in your code.
-
-      This library is a fork of the flann library by Marius Muja and David
-      G. Lowe, and born as a child project of MRPT. Following the original
-      license terms, nanoflann is distributed under the BSD license. Please, for
-      bugs use the issues button or fork and open a pull request.
-    '';
-    changelog = "https://github.com/jlblancoc/nanoflann/blob/v${finalAttrs.version}/CHANGELOG.md";
-    license = lib.licenses.bsd2;
-    maintainers = [ lib.maintainers.AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/nanosvg/default.nix b/pkgs/development/libraries/nanosvg/default.nix
index 2033069d77e28..29861777889bc 100644
--- a/pkgs/development/libraries/nanosvg/default.nix
+++ b/pkgs/development/libraries/nanosvg/default.nix
@@ -1,18 +1,20 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, cmake, unstableGitUpdater }:
 
 stdenv.mkDerivation {
   pname = "nanosvg";
-  version = "unstable-2022-12-04";
+  version = "0-unstable-2023-12-30";
 
   src = fetchFromGitHub {
     owner = "memononen";
     repo = "nanosvg";
-    rev = "9da543e8329fdd81b64eb48742d8ccb09377aed1";
-    hash = "sha256-VOiN6583DtzGYPRkl19VG2QvSzl4T9HaynBuNcvZf94=";
+    rev = "93ce879dc4c04a3ef1758428ec80083c38610b1f";
+    hash = "sha256-ZtenaXJqMZr2+BxYENG1zUoQ+Qoxlxy0m/1YfJBKAFk=";
   };
 
   nativeBuildInputs = [ cmake ];
 
+  passthru.updateScript = unstableGitUpdater { };
+
   meta = with lib; {
     description = "Simple stupid SVG parser";
     homepage = "https://github.com/memononen/nanosvg";
@@ -20,4 +22,3 @@ stdenv.mkDerivation {
     platforms = platforms.all;
   };
 }
-
diff --git a/pkgs/development/libraries/ncnn/default.nix b/pkgs/development/libraries/ncnn/default.nix
index f140b9c1ab1f5..f431133c25057 100644
--- a/pkgs/development/libraries/ncnn/default.nix
+++ b/pkgs/development/libraries/ncnn/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ncnn";
-  version = "20240410";
+  version = "20240820";
 
   src = fetchFromGitHub {
     owner = "Tencent";
     repo = pname;
     rev = version;
-    hash = "sha256-UiaU+LCevrWBxZg5LAimGIJB0CElWBnO6qoadUc3VVM=";
+    hash = "sha256-KFRWpPajSqYeasPKaNMVe0WTIXwCI5v9GLo5ygN/22M=";
   };
 
   patches = [
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     "-DNCNN_PYTHON=0" # Should be an attribute
   ]
   # Requires setting `Vulkan_LIBRARY` on Darwin. Otherwise the build fails due to missing symbols.
-  ++ lib.optionals stdenv.isDarwin [ "-DVulkan_LIBRARY=-lvulkan" ];
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ "-DVulkan_LIBRARY=-lvulkan" ];
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ vulkan-headers vulkan-loader glslang opencv protobuf ];
diff --git a/pkgs/development/libraries/nco/default.nix b/pkgs/development/libraries/nco/default.nix
index baae6b953f9be..3affdfbf5743d 100644
--- a/pkgs/development/libraries/nco/default.nix
+++ b/pkgs/development/libraries/nco/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "nco";
-  version = "5.2.5";
+  version = "5.2.8";
 
   src = fetchFromGitHub {
     owner = "nco";
     repo = "nco";
     rev = finalAttrs.version;
-    hash = "sha256-QGHmet7Tbuyue48hjtqdl6F2PzQLuWAVwW4xvPEI3NU=";
+    hash = "sha256-FTaXgBmDlQv75roeJo4dJyJCpzOj9ilJo2hdxDnyjno=";
   };
 
   nativeBuildInputs = [
@@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
       --replace "/bin/mv" "${coreutils}/bin/mv"
   '';
 
-  makeFlags = lib.optionals stdenv.isDarwin [ "LIBTOOL=${libtool}/bin/libtool" ];
+  makeFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "LIBTOOL=${libtool}/bin/libtool" ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix
index 85bf4bee634e0..2a4e89d7f3df7 100644
--- a/pkgs/development/libraries/ncurses/default.nix
+++ b/pkgs/development/libraries/ncurses/default.nix
@@ -11,6 +11,7 @@
 , mouseSupport ? false, gpm
 , unicodeSupport ? true
 , testers
+, binlore
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -64,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
   ]);
 
   # Only the C compiler, and explicitly not C++ compiler needs this flag on solaris:
-  CFLAGS = lib.optionalString stdenv.isSunOS "-D_XOPEN_SOURCE_EXTENDED";
+  CFLAGS = lib.optionalString stdenv.hostPlatform.isSunOS "-D_XOPEN_SOURCE_EXTENDED";
 
   strictDeps = true;
 
@@ -76,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
     ncurses
   ];
 
-  buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm;
+  buildInputs = lib.optional (mouseSupport && stdenv.hostPlatform.isLinux) gpm;
 
   preConfigure = ''
     export PKG_CONFIG_LIBDIR="$dev/lib/pkgconfig"
@@ -89,7 +90,7 @@ stdenv.mkDerivation (finalAttrs: {
       "--with-pkg-config-libdir=$PKG_CONFIG_LIBDIR"
     )
   ''
-  + lib.optionalString stdenv.isSunOS ''
+  + lib.optionalString stdenv.hostPlatform.isSunOS ''
     sed -i -e '/-D__EXTENSIONS__/ s/-D_XOPEN_SOURCE=\$cf_XOPEN_SOURCE//' \
            -e '/CPPFLAGS="$CPPFLAGS/s/ -D_XOPEN_SOURCE_EXTENDED//' \
         configure
@@ -101,7 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
   doCheck = false;
 
   postFixup = let
-    abiVersion-extension = if stdenv.isDarwin then "${abiVersion}.$dylibtype" else "$dylibtype.${abiVersion}"; in
+    abiVersion-extension = if stdenv.hostPlatform.isDarwin then "${abiVersion}.$dylibtype" else "$dylibtype.${abiVersion}"; in
   ''
     # Determine what suffixes our libraries have
     suffix="$(awk -F': ' 'f{print $3; f=0} /default library suffix/{f=1}' config.log)"
@@ -180,6 +181,17 @@ stdenv.mkDerivation (finalAttrs: {
     rm "$out"/lib/*.a
   '';
 
+  # I'm not very familiar with ncurses, but it looks like most of the
+  # exec here will run hard-coded executables. There's one that is
+  # dynamic, but it looks like it only comes from executing a terminfo
+  # file, so I think it isn't going to be under user control via CLI?
+  # Happy to have someone help nail this down in either direction!
+  # The "capability" is 'iprog', and I could only find 1 real example:
+  # https://invisible-island.net/ncurses/terminfo.ti.html#tic-linux-s
+  passthru.binlore.out = binlore.synthesize ncurses ''
+    execer cannot bin/{reset,tput,tset}
+  '';
+
   meta = with lib; {
     homepage = "https://www.gnu.org/software/ncurses/";
     description = "Free software emulation of curses in SVR4 and more";
diff --git a/pkgs/development/libraries/ndi/default.nix b/pkgs/development/libraries/ndi/default.nix
index b691f2b10afa4..78a4f808b4c3e 100644
--- a/pkgs/development/libraries/ndi/default.nix
+++ b/pkgs/development/libraries/ndi/default.nix
@@ -3,10 +3,10 @@
 let
   versionJSON = lib.importJSON ./version.json;
   ndiPlatform =
-    if stdenv.isAarch64 then "aarch64-rpi4-linux-gnueabi"
-    else if stdenv.isAarch32 then "arm-rpi2-linux-gnueabihf"
-    else if stdenv.isx86_64 then "x86_64-linux-gnu"
-    else if stdenv.isi686 then "i686-linux-gnu"
+    if stdenv.hostPlatform.isAarch64 then "aarch64-rpi4-linux-gnueabi"
+    else if stdenv.hostPlatform.isAarch32 then "arm-rpi2-linux-gnueabihf"
+    else if stdenv.hostPlatform.isx86_64 then "x86_64-linux-gnu"
+    else if stdenv.hostPlatform.isi686 then "i686-linux-gnu"
     else throw "unsupported platform for NDI SDK";
 in
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/libraries/ndn-cxx/default.nix b/pkgs/development/libraries/ndn-cxx/default.nix
deleted file mode 100644
index 01be5106eca90..0000000000000
--- a/pkgs/development/libraries/ndn-cxx/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, doxygen
-, pkg-config
-, python3
-, python3Packages
-, wafHook
-, boost179
-, openssl
-, sqlite
-}:
-
-stdenv.mkDerivation rec {
-  pname = "ndn-cxx";
-  version = "0.8.1";
-
-  src = fetchFromGitHub {
-    owner = "named-data";
-    repo = "ndn-cxx";
-    rev = "${pname}-${version}";
-    sha256 = "sha256-nnnxlkYVTSRB6ZcuIUDFol999+amGtqegHXK+06ITK8=";
-  };
-
-  nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx wafHook ];
-
-  buildInputs = [ boost179 openssl sqlite ];
-
-  wafConfigureFlags = [
-    "--with-openssl=${openssl.dev}"
-    "--boost-includes=${boost179.dev}/include"
-    "--boost-libs=${boost179.out}/lib"
-    "--with-tests"
-  ];
-
-  doCheck = false; # some tests fail in upstream, some fail because of the sandbox environment
-  checkPhase = ''
-    runHook preCheck
-    LD_PRELOAD=build/libndn-cxx.so build/unit-tests
-    runHook postCheck
-  '';
-
-  meta = with lib; {
-    homepage = "https://named-data.net/";
-    description = "Named Data Networking (NDN) or Content Centric Networking (CCN) abstraction";
-    longDescription = ''
-      ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
-      primitives that can be used to implement various NDN applications.
-      NDN operates by addressing and delivering Content Objects directly
-      by Name instead of merely addressing network end-points. In addition,
-      the NDN security model explicitly secures individual Content Objects
-      rather than securing the connection or “pipe”. Named and secured
-      content resides in distributed caches automatically populated on
-      demand or selectively pre-populated. When requested by name, NDN
-      delivers named content to the user from the nearest cache, thereby
-      traversing fewer network hops, eliminating redundant requests,
-      and consuming less resources overall.
-    '';
-    license = licenses.lgpl3;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ sjmackenzie bertof ];
-  };
-}
diff --git a/pkgs/development/libraries/ndpi/default.nix b/pkgs/development/libraries/ndpi/default.nix
index 23eb0945555e8..7ede8a409c3b1 100644
--- a/pkgs/development/libraries/ndpi/default.nix
+++ b/pkgs/development/libraries/ndpi/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "ndpi";
-  version = "4.8";
+  version = "4.10";
 
   src = fetchFromGitHub {
     owner = "ntop";
     repo = "nDPI";
     rev = "refs/tags/${finalAttrs.version}";
-    hash = "sha256-V3hRDQ141pbR5jJK2QlP7BF2CEbuzqIvo+iTx3EGhRY=";
+    hash = "sha256-iXqvDMJsOXcg9YkqKFgInLLfH6j/HEp4bEaIl6dpVtc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/neardal/default.nix b/pkgs/development/libraries/neardal/default.nix
index 485c803d4cbea..243c9b81bbe11 100644
--- a/pkgs/development/libraries/neardal/default.nix
+++ b/pkgs/development/libraries/neardal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, glib, readline, makeWrapper }:
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, glib, readline, makeWrapper }:
 
 stdenv.mkDerivation {
   pname = "neardal";
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
     description = "C APIs to exchange datas with the NFC daemon 'Neard'";
     license = licenses.lgpl2;
     homepage = "https://01.org/linux-nfc";
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/neatvnc/default.nix b/pkgs/development/libraries/neatvnc/default.nix
index d8b439847ad47..dbed519662fee 100644
--- a/pkgs/development/libraries/neatvnc/default.nix
+++ b/pkgs/development/libraries/neatvnc/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "neatvnc";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "any1";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-BArEaQa+CNGzIoENsZSj9seFx9qdCLWiejh6EvpTch8=";
+    hash = "sha256-2gPDcFcu1kGIDubguL38Z0K+k7WGFf7DX8yZteedcNg=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/neon/default.nix b/pkgs/development/libraries/neon/default.nix
index 3185ff4158ee9..6bff584ddaefd 100644
--- a/pkgs/development/libraries/neon/default.nix
+++ b/pkgs/development/libraries/neon/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-SHLhL4Alct7dSwL4cAZYFLLVFB99va9wju2rgmtRpYo=";
   };
 
-  patches = optionals stdenv.isDarwin [ ./darwin-fix-configure.patch ];
+  patches = optionals stdenv.hostPlatform.isDarwin [ ./darwin-fix-configure.patch ];
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [libxml2 openssl bash]
diff --git a/pkgs/development/libraries/netcdf-cxx4/default.nix b/pkgs/development/libraries/netcdf-cxx4/default.nix
index 08f812a272a27..606e8a86b0c34 100644
--- a/pkgs/development/libraries/netcdf-cxx4/default.nix
+++ b/pkgs/development/libraries/netcdf-cxx4/default.nix
@@ -34,6 +34,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.unidata.ucar.edu/software/netcdf/";
     license = lib.licenses.free;
     platforms = lib.platforms.unix;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/netcdf-fortran/default.nix b/pkgs/development/libraries/netcdf-fortran/default.nix
index 0edc956eee60f..d9a80768bb614 100644
--- a/pkgs/development/libraries/netcdf-fortran/default.nix
+++ b/pkgs/development/libraries/netcdf-fortran/default.nix
@@ -12,12 +12,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ gfortran ];
   buildInputs = [ netcdf hdf5 curl ]
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
       CoreFoundation
       CoreServices
       SystemConfiguration
     ];
-  env.NIX_LDFLAGS = toString (lib.optionals stdenv.isDarwin [
+  env.NIX_LDFLAGS = toString (lib.optionals stdenv.hostPlatform.isDarwin [
     "-F${CoreServices}/Library/Frameworks"
     "-F${SystemConfiguration}/Library/Frameworks"
   ]);
diff --git a/pkgs/development/libraries/netcdf/default.nix b/pkgs/development/libraries/netcdf/default.nix
index 0796e7997d507..65e8b6f46dfd7 100644
--- a/pkgs/development/libraries/netcdf/default.nix
+++ b/pkgs/development/libraries/netcdf/default.nix
@@ -52,6 +52,11 @@ in stdenv.mkDerivation rec {
     inherit mpiSupport mpi;
   };
 
+  env.NIX_CFLAGS_COMPILE =
+    # Suppress incompatible function pointer errors when building with newer versions of clang 16.
+    # tracked upstream here: https://github.com/Unidata/netcdf-c/issues/2715
+    lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
+
   configureFlags = [
       "--enable-netcdf-4"
       "--enable-dap"
diff --git a/pkgs/development/libraries/nettle/default.nix b/pkgs/development/libraries/nettle/default.nix
index 3a1297f897636..0791a05e338e2 100644
--- a/pkgs/development/libraries/nettle/default.nix
+++ b/pkgs/development/libraries/nettle/default.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchurl }:
 
 callPackage ./generic.nix rec {
-  version = "3.9.1";
+  version = "3.10";
 
   src = fetchurl {
     url = "mirror://gnu/nettle/nettle-${version}.tar.gz";
-    hash = "sha256-zP7/mBsMpxu9b7ywVPQHxg/7ZEOJpb6A1nFtW1UMbOM=";
+    hash = "sha256-tMUYrbF05ITLSs6lQRjwI4DHEzdx5+m+uYoHhxlO5Hw=";
   };
 }
diff --git a/pkgs/development/libraries/nettle/generic.nix b/pkgs/development/libraries/nettle/generic.nix
index 44afdf45513f6..b1cf1f5f6bfe9 100644
--- a/pkgs/development/libraries/nettle/generic.nix
+++ b/pkgs/development/libraries/nettle/generic.nix
@@ -23,9 +23,9 @@ stdenv.mkDerivation {
     # /usr/include/mp.h from OpenSolaris.  See
     # <https://lists.gnu.org/archive/html/hydra-users/2012-08/msg00000.html>
     # for details.
-    ++ lib.optional stdenv.isSunOS "--with-include-path=${gmp.dev}/include";
+    ++ lib.optional stdenv.hostPlatform.isSunOS "--with-include-path=${gmp.dev}/include";
 
-  doCheck = (stdenv.hostPlatform.system != "i686-cygwin" && !stdenv.isDarwin);
+  doCheck = (stdenv.hostPlatform.system != "i686-cygwin" && !stdenv.hostPlatform.isDarwin);
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/newt/default.nix b/pkgs/development/libraries/newt/default.nix
index 1e6f8de2d5890..d8adcf63b19db 100644
--- a/pkgs/development/libraries/newt/default.nix
+++ b/pkgs/development/libraries/newt/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     unset CPP
   '';
 
-  configureFlags = lib.optionals stdenv.isDarwin [
+  configureFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "--disable-nls"
   ];
 
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     "CROSS_COMPILE=${stdenv.cc.targetPrefix}"
   ];
 
-  postFixup = lib.optionalString stdenv.isDarwin ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libnewt.so.${version} $out/lib/libnewt.so.${version}
     install_name_tool -change libnewt.so.${version} $out/lib/libnewt.so.${version} $out/bin/whiptail
   '';
@@ -56,6 +56,6 @@ stdenv.mkDerivation rec {
     changelog = "https://pagure.io/newt/blob/master/f/CHANGES";
     license = licenses.lgpl2;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ viric ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/nghttp2/default.nix b/pkgs/development/libraries/nghttp2/default.nix
index 0fe8f1d88d513..19265cbe16083 100644
--- a/pkgs/development/libraries/nghttp2/default.nix
+++ b/pkgs/development/libraries/nghttp2/default.nix
@@ -32,11 +32,11 @@ assert enableJemalloc -> enableApp;
 
 stdenv.mkDerivation rec {
   pname = "nghttp2";
-  version = "1.61.0";
+  version = "1.62.1";
 
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-Toz37DLUxaQwlmJC1yA10lXNlHCodm1h7tegGQ3VRP0=";
+    sha256 = "sha256-OWbsgv2n/DgFBtNyomDY2bbpRr5N6u8f7MGnS0gJrj0=";
   };
 
   outputs = [ "out" "dev" "lib" "doc" "man" ];
@@ -60,6 +60,10 @@ stdenv.mkDerivation rec {
     (lib.enableFeature enableHttp3 "http3")
   ];
 
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13") [
+    "-faligned-allocation"
+  ]);
+
   # Unit tests require CUnit and setting TZDIR environment variable
   doCheck = enableTests;
   nativeCheckInputs = lib.optionals (enableTests) [ cunit tzdata ];
diff --git a/pkgs/development/libraries/nghttp3/default.nix b/pkgs/development/libraries/nghttp3/default.nix
index cff650f5971df..a325385601778 100644
--- a/pkgs/development/libraries/nghttp3/default.nix
+++ b/pkgs/development/libraries/nghttp3/default.nix
@@ -6,20 +6,20 @@
 
 stdenv.mkDerivation rec {
   pname = "nghttp3";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ZbgByLTkQWd3gfWW2V1kkboblfF9v+0HcNhxrjYpX28=";
+    hash = "sha256-sVEMFTe3+r11yz4gzV+0VC8ngaanoj27DLW5hakyc4Y=";
     fetchSubmodules = true;
   };
 
   outputs = [ "out" "dev" "doc" ];
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     CoreServices
   ];
 
diff --git a/pkgs/development/libraries/ngtcp2/default.nix b/pkgs/development/libraries/ngtcp2/default.nix
index 25b35bd72fe47..aa5ebc6fbb8b7 100644
--- a/pkgs/development/libraries/ngtcp2/default.nix
+++ b/pkgs/development/libraries/ngtcp2/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ngtcp2";
-  version = "1.6.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-alS6M4sSyyytnzu9RTjDAioqkafEmgt/HpFUQ4MniCI=";
+    hash = "sha256-P9l7J4JMSO40YoFIHlv9kmKJeJGV5Y4hXkKA3rM0lTI=";
     fetchSubmodules = true;
   };
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     libev
     nghttp3
     quictls
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     CoreServices
   ] ++ lib.optional withJemalloc jemalloc;
 
diff --git a/pkgs/development/libraries/ngtcp2/gnutls.nix b/pkgs/development/libraries/ngtcp2/gnutls.nix
index 5fd52b1f592a1..31f69e82198fe 100644
--- a/pkgs/development/libraries/ngtcp2/gnutls.nix
+++ b/pkgs/development/libraries/ngtcp2/gnutls.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ngtcp2";
-  version = "1.6.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = "ngtcp2";
     rev = "v${version}";
-    hash = "sha256-Oaz5LX4R0vriURueQNklZ1dx1r8SWDaeK8oaUadlGtI=";
+    hash = "sha256-7DesCT8swwk9E1ckYrj3mGsdx37HrJxd+svKpJRrhoI=";
   };
 
   outputs = [ "out" "dev" ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
   nativeCheckInputs = [ cunit ]
-    ++ lib.optional stdenv.isDarwin ncurses;
+    ++ lib.optional stdenv.hostPlatform.isDarwin ncurses;
 
   passthru.tests = knot-dns.passthru.tests; # the only consumer so far
 
diff --git a/pkgs/development/libraries/nlopt/default.nix b/pkgs/development/libraries/nlopt/default.nix
index 2fae17a232364..4995d98adca76 100644
--- a/pkgs/development/libraries/nlopt/default.nix
+++ b/pkgs/development/libraries/nlopt/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-TgieCX7yUdTAEblzXY/gCN0r6F9TVDh4RdNDjQdXZ1o=";
   };
 
-  nativeBuildInputs = [ cmake ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
+  nativeBuildInputs = [ cmake ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
   buildInputs = [ octave ];
 
   configureFlags = [
diff --git a/pkgs/development/libraries/notcurses/default.nix b/pkgs/development/libraries/notcurses/default.nix
deleted file mode 100644
index 67c640ddb2659..0000000000000
--- a/pkgs/development/libraries/notcurses/default.nix
+++ /dev/null
@@ -1,79 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, libdeflate
-, libunistring
-, ncurses
-, pandoc
-, pkg-config
-, zlib
-, multimediaSupport ? true, ffmpeg
-, qrcodegenSupport ? true, qrcodegen
-}:
-
-stdenv.mkDerivation rec {
-  pname = "notcurses";
-  version = "3.0.9";
-
-  src = fetchFromGitHub {
-    owner = "dankamongmen";
-    repo = "notcurses";
-    rev = "v${version}";
-    sha256 = "sha256-8SJeqLcV4xp968YgGsJccsgpB5wwaJDaoWsaYxf8upM=";
-  };
-
-  outputs = [ "out" "dev" ];
-
-  nativeBuildInputs = [
-    cmake
-    pandoc
-    pkg-config
-  ];
-
-  buildInputs = [
-    libdeflate
-    libunistring
-    ncurses
-    zlib
-  ]
-  ++ lib.optional qrcodegenSupport qrcodegen
-  ++ lib.optional multimediaSupport ffmpeg;
-
-  cmakeFlags =
-    lib.optional (qrcodegenSupport) "-DUSE_QRCODEGEN=ON"
-    ++ lib.optional (!multimediaSupport) "-DUSE_MULTIMEDIA=none";
-
-  # https://github.com/dankamongmen/notcurses/issues/2661
-  postPatch = ''
-    substituteInPlace tools/notcurses-core.pc.in \
-      --replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
-      --replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
-    substituteInPlace tools/notcurses-ffi.pc.in \
-      --replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
-      --replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
-    substituteInPlace tools/notcurses++.pc.in \
-      --replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
-      --replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
-    substituteInPlace tools/notcurses.pc.in \
-      --replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
-      --replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/dankamongmen/notcurses";
-    description = "Blingful TUIs and character graphics";
-    longDescription = ''
-      Notcurses is a library facilitating complex TUIs on modern terminal
-      emulators, supporting vivid colors, multimedia, and Unicode to the maximum
-      degree possible. Things can be done with Notcurses that simply can't be
-      done with NCURSES.
-
-      It is not a source-compatible X/Open Curses implementation, nor a
-      replacement for NCURSES on existing systems.
-    '';
-    license = licenses.asl20;
-    maintainers = with maintainers; [ AndersonTorres ];
-    inherit (ncurses.meta) platforms;
-  };
-}
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 586c4ddb94fc1..efea4a4cc81f2 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     cd nspr
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace configure --replace '@executable_path/' "$out/lib/"
     substituteInPlace configure.in --replace '@executable_path/' "$out/lib/"
   '';
@@ -34,14 +34,14 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--enable-optimize"
     "--disable-debug"
-  ] ++ lib.optional stdenv.is64bit "--enable-64bit";
+  ] ++ lib.optional stdenv.hostPlatform.is64bit "--enable-64bit";
 
   postInstall = ''
     find $out -name "*.a" -delete
     moveToOutput share "$dev" # just aclocal
   '';
 
-  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/nss/esr.nix b/pkgs/development/libraries/nss/esr.nix
index 95c9aa0e19976..f1b8c6df4acf1 100644
--- a/pkgs/development/libraries/nss/esr.nix
+++ b/pkgs/development/libraries/nss/esr.nix
@@ -1,4 +1,4 @@
 import ./generic.nix {
-  version = "3.90.2";
-  hash = "sha256-4r/LhKilkSeEhw/rl2IRAn5xMJ74W5ACg7fX0e4GQxA=";
+  version = "3.101.2";
+  hash = "sha256-i5K47pzQYOiD4vFHBN6VeqXEdPBOM7U1oSK0qSi2M2Y=";
 }
diff --git a/pkgs/development/libraries/nss/generic.nix b/pkgs/development/libraries/nss/generic.nix
index b0a633869abc7..9e54ddda866f7 100644
--- a/pkgs/development/libraries/nss/generic.nix
+++ b/pkgs/development/libraries/nss/generic.nix
@@ -7,7 +7,7 @@
 , zlib
 , sqlite
 , ninja
-, darwin
+, cctools
 , fixDarwinDylibNames
 , buildPackages
 , useP11kit ? true
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   nativeBuildInputs = [ perl ninja (buildPackages.python3.withPackages (ps: with ps; [ gyp ])) ]
-    ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.cctools fixDarwinDylibNames ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ cctools fixDarwinDylibNames ];
 
   buildInputs = [ zlib sqlite ];
 
@@ -46,10 +46,6 @@ stdenv.mkDerivation rec {
     # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
     ./85_security_load_3.85+.patch
     ./fix-cross-compilation.patch
-  ] ++ lib.optionals (lib.versionOlder version "3.91") [
-    # https://bugzilla.mozilla.org/show_bug.cgi?id=1836925
-    # https://phabricator.services.mozilla.com/D180068
-    ./remove-c25519-support.patch
   ];
 
   postPatch = ''
@@ -97,7 +93,7 @@ stdenv.mkDerivation rec {
         --enable-libpkix \
         -j $NIX_BUILD_CORES \
         ${lib.optionalString enableFIPS "--enable-fips"} \
-        ${lib.optionalString stdenv.isDarwin "--clang"} \
+        ${lib.optionalString stdenv.hostPlatform.isDarwin "--clang"} \
         ${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
 
       runHook postBuild
@@ -159,7 +155,7 @@ stdenv.mkDerivation rec {
     (lib.optionalString enableFIPS (''
       for libname in freebl3 nssdbm3 softokn3
       do libfile="$out/lib/lib$libname${stdenv.hostPlatform.extensions.sharedLibrary}"'' +
-    (if stdenv.isDarwin
+    (if stdenv.hostPlatform.isDarwin
     then ''
       DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
     '' else ''
diff --git a/pkgs/development/libraries/nss/latest.nix b/pkgs/development/libraries/nss/latest.nix
index 3f45d2e39c79a..143bb32a5677b 100644
--- a/pkgs/development/libraries/nss/latest.nix
+++ b/pkgs/development/libraries/nss/latest.nix
@@ -5,6 +5,6 @@
 #       Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert
 
 import ./generic.nix {
-  version = "3.101";
-  hash = "sha256-lO+81zYBBFwqcjh4cd/fpiznHZ9rTJpfDW/yF8phYts=";
+  version = "3.105";
+  hash = "sha256-Nfd7u0sdGqUCznnUxEJQFs+QuRSb+b7rZrcvKryimOQ=";
 }
diff --git a/pkgs/development/libraries/nss/remove-c25519-support.patch b/pkgs/development/libraries/nss/remove-c25519-support.patch
deleted file mode 100644
index d5dba016278f2..0000000000000
--- a/pkgs/development/libraries/nss/remove-c25519-support.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff --git a/nss/lib/freebl/Makefile b/nss/lib/freebl/Makefile
-index 74e8e65..aa9dd95 100644
---- nss/lib/freebl/Makefile
-+++ nss/lib/freebl/Makefile
-@@ -568,7 +568,6 @@ ifneq ($(shell $(CC) -? 2>&1 >/dev/null </dev/null | sed -e 's/:.*//;1q'),lcc)
-             HAVE_INT128_SUPPORT = 1
-             DEFINES += -DHAVE_INT128_SUPPORT
-     else ifeq (1,$(CC_IS_GCC))
--        SUPPORTS_VALE_CURVE25519 = 1
-         ifneq (,$(filter 4.6 4.7 4.8 4.9,$(word 1,$(GCC_VERSION)).$(word 2,$(GCC_VERSION))))
-             HAVE_INT128_SUPPORT = 1
-             DEFINES += -DHAVE_INT128_SUPPORT
-@@ -593,11 +592,6 @@ ifndef HAVE_INT128_SUPPORT
-     DEFINES += -DKRML_VERIFIED_UINT128
- endif
- 
--ifdef SUPPORTS_VALE_CURVE25519
--    VERIFIED_SRCS += Hacl_Curve25519_64.c
--    DEFINES += -DHACL_CAN_COMPILE_INLINE_ASM
--endif
--
- ifndef NSS_DISABLE_CHACHAPOLY
-     ifeq ($(CPU_ARCH),x86_64)
-         ifndef NSS_DISABLE_AVX2
-diff --git a/nss/lib/freebl/freebl.gyp b/nss/lib/freebl/freebl.gyp
-index 65f9a80..23940ef 100644
---- nss/lib/freebl/freebl.gyp
-+++ nss/lib/freebl/freebl.gyp
-@@ -866,12 +866,6 @@
-           }],
-         ],
-       }],
--      [ 'supports_vale_curve25519==1', {
--        'defines': [
--          # The Makefile does version-tests on GCC, but we're not doing that here.
--          'HACL_CAN_COMPILE_INLINE_ASM',
--        ],
--      }],
-       [ 'OS=="linux" or OS=="android"', {
-         'conditions': [
-           [ 'target_arch=="x64"', {
-@@ -934,11 +928,6 @@
-   'variables': {
-     'module': 'nss',
-     'conditions': [
--      [ 'target_arch=="x64" and cc_is_gcc==1', {
--        'supports_vale_curve25519%': 1,
--      }, {
--        'supports_vale_curve25519%': 0,
--      }],
-       [ 'target_arch=="x64" or target_arch=="arm64" or target_arch=="aarch64"', {
-         'have_int128_support%': 1,
-       }, {
-diff --git a/nss/lib/freebl/freebl_base.gypi b/nss/lib/freebl/freebl_base.gypi
-index d198c44..34b6b3c 100644
---- nss/lib/freebl/freebl_base.gypi
-+++ nss/lib/freebl/freebl_base.gypi
-@@ -151,11 +151,6 @@
-         'ecl/curve25519_32.c',
-       ],
-     }],
--    ['supports_vale_curve25519==1', {
--      'sources': [
--        'verified/Hacl_Curve25519_64.c',
--      ],
--    }],
-     ['(target_arch!="ppc64" and target_arch!="ppc64le") or disable_altivec==1', {
-       'sources': [
-         # Gyp does not support per-file cflags, so working around like this.
diff --git a/pkgs/development/libraries/nss_wrapper/default.nix b/pkgs/development/libraries/nss_wrapper/default.nix
index 3c1a2b33b18f0..378ebf54c1f7f 100644
--- a/pkgs/development/libraries/nss_wrapper/default.nix
+++ b/pkgs/development/libraries/nss_wrapper/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nss_wrapper";
-  version = "1.1.15";
+  version = "1.1.16";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/nss_wrapper-${version}.tar.gz";
-    sha256 = "sha256-Nvh0gypPIVjgT2mqd+VRXhbPbjv4GWjV3YSW231pBq0=";
+    sha256 = "sha256-3HmrByd5vkQDtFtgzQRN0TeA1LuWddJ6vxkyrafIqI0=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -17,6 +17,6 @@ stdenv.mkDerivation rec {
     homepage = "https://git.samba.org/?p=nss_wrapper.git;a=summary;";
     license = licenses.bsd3;
     platforms = platforms.unix;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/nsync/default.nix b/pkgs/development/libraries/nsync/default.nix
index e188e8a0e01df..8df7bd6059928 100644
--- a/pkgs/development/libraries/nsync/default.nix
+++ b/pkgs/development/libraries/nsync/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nsync";
-  version = "1.28.1";
+  version = "1.29.2";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = version;
-    hash = "sha256-PAUgT1SoMiPMA4MH8zHxBtTFdg8Jn6H+w0HA64i2vPk=";
+    hash = "sha256-RAwrS8Vz5fZwZRvF4OQfn8Ls11S8OIV2TmJpNrBE4MI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/ntbtls/default.nix b/pkgs/development/libraries/ntbtls/default.nix
index e04d2ae435374..e1726a874fcd1 100644
--- a/pkgs/development/libraries/ntbtls/default.nix
+++ b/pkgs/development/libraries/ntbtls/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   outputs = [ "dev" "out" ];
 
   buildInputs = [ libgcrypt libgpg-error libksba zlib ]
-    ++ lib.optional stdenv.isDarwin gettext;
+    ++ lib.optional stdenv.hostPlatform.isDarwin gettext;
 
   postInstall = ''
     moveToOutput "bin/ntbtls-config" $dev
diff --git a/pkgs/development/libraries/ntirpc/default.nix b/pkgs/development/libraries/ntirpc/default.nix
index 5ae6380849c8f..e7100e66f384c 100644
--- a/pkgs/development/libraries/ntirpc/default.nix
+++ b/pkgs/development/libraries/ntirpc/default.nix
@@ -4,15 +4,16 @@
 
 stdenv.mkDerivation rec {
   pname = "ntirpc";
-  version = "5.8";
+  version = "6.0.1";
 
   src = fetchFromGitHub {
     owner = "nfs-ganesha";
     repo = "ntirpc";
     rev = "v${version}";
-    sha256 = "sha256-t9InlnlwVts9mlrH8sHaaTYSrjJKlkFlGs1YCmZzjdE=";
+    sha256 = "sha256-Txtc0Oyt/WfZiMe26uMzx3HFq/YaeU6cYfjPQwh0uQg=";
   };
 
+  outputs = [ "out" "dev" ];
   postPatch = ''
     substituteInPlace ntirpc/netconfig.h --replace "/etc/netconfig" "$out/etc/netconfig"
     sed '1i#include <assert.h>' -i src/work_pool.c
diff --git a/pkgs/development/libraries/numcpp/default.nix b/pkgs/development/libraries/numcpp/default.nix
index b8dea0f3662b8..34dd82c15076b 100644
--- a/pkgs/development/libraries/numcpp/default.nix
+++ b/pkgs/development/libraries/numcpp/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-DBUILD_MULTIPLE_TEST=ON"
   ];
 
-  doCheck = !stdenv.isDarwin && !stdenv.hostPlatform.isStatic;
+  doCheck = !stdenv.hostPlatform.isDarwin && !stdenv.hostPlatform.isStatic;
 
   postInstall = ''
     substituteInPlace $out/share/NumCpp/cmake/NumCppConfig.cmake \
diff --git a/pkgs/development/libraries/nuspell/default.nix b/pkgs/development/libraries/nuspell/default.nix
index 867843df80683..b2bd4de93f033 100644
--- a/pkgs/development/libraries/nuspell/default.nix
+++ b/pkgs/development/libraries/nuspell/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, icu, catch2_3 }:
+{ lib, stdenv, fetchFromGitHub, cmake, pandoc, pkg-config, icu, catch2_3 }:
 
 stdenv.mkDerivation rec {
   pname = "nuspell";
-  version = "5.1.4";
+  version = "5.1.6";
 
   src = fetchFromGitHub {
     owner = "nuspell";
     repo = "nuspell";
     rev = "v${version}";
-    hash = "sha256-KteLH031QP8MunQXsodzsPhD/YN9n3O7b2kb/1mFQRY=";
+    hash = "sha256-U/lHSxpKsBnamf4ikE2aIjEPSU5fxjtuSmhZR0jxMAI=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pandoc pkg-config ];
   buildInputs = [ catch2_3 ];
   propagatedBuildInputs = [ icu ];
 
diff --git a/pkgs/development/libraries/nv-codec-headers/default.nix b/pkgs/development/libraries/nv-codec-headers/default.nix
deleted file mode 100644
index b582548d79f5c..0000000000000
--- a/pkgs/development/libraries/nv-codec-headers/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, fetchgit
-, stdenvNoCC
-}:
-
-let
-  make-nv-codec-headers = (import ./make-nv-codec-headers.nix) {
-    inherit lib fetchgit stdenvNoCC;
-  };
-in
-{
-  nv-codec-headers-8 = make-nv-codec-headers {
-    version = "8.2.15.2";
-    hash = "sha256-TKYT8vXqnUpq+M0grDeOR37n/ffqSWDYTrXIbl++BG4=";
-  };
-  nv-codec-headers-9 = make-nv-codec-headers {
-    version = "9.1.23.1";
-    hash = "sha256-kF5tv8Nh6I9x3hvSAdKLakeBVEcIiXFY6o6bD+tY2/U=";
-  };
-  nv-codec-headers-10 = make-nv-codec-headers {
-    version = "10.0.26.2";
-    hash = "sha256-BfW+fmPp8U22+HK0ZZY6fKUjqigWvOBi6DmW7SSnslg=";
-  };
-  nv-codec-headers-11 = make-nv-codec-headers {
-    version = "11.1.5.2";
-    hash = "sha256-KzaqwpzISHB7tSTruynEOJmSlJnAFK2h7/cRI/zkNPk=";
-  };
-  nv-codec-headers-12 = make-nv-codec-headers {
-    version = "12.1.14.0";
-    hash = "sha256-WJYuFmMGSW+B32LwE7oXv/IeTln6TNEeXSkquHh85Go=";
-  };
-}
diff --git a/pkgs/development/libraries/nv-codec-headers/make-nv-codec-headers.nix b/pkgs/development/libraries/nv-codec-headers/make-nv-codec-headers.nix
deleted file mode 100644
index b6bdc6dd58d7a..0000000000000
--- a/pkgs/development/libraries/nv-codec-headers/make-nv-codec-headers.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, stdenvNoCC
-, fetchgit
-}:
-
-{ pname ? "nv-codec-headers"
-, version
-, hash
-}:
-
-stdenvNoCC.mkDerivation {
-  inherit pname version;
-
-  src = fetchgit {
-    url = "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git";
-    rev = "n${version}";
-    inherit hash;
-  };
-
-  makeFlags = [
-    "PREFIX=$(out)"
-  ];
-
-  meta = {
-    description = "FFmpeg version of headers for NVENC";
-    homepage = "https://ffmpeg.org/";
-    downloadPage = "https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git";
-    license = with lib.licenses; [ mit ];
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/nvidia-vaapi-driver/default.nix b/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
index 92f447a32422e..786a11f482046 100644
--- a/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
+++ b/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
@@ -9,7 +9,7 @@
 , gst_all_1
 , nv-codec-headers-11
 , libva
-, addOpenGLRunpath
+, addDriverRunpath
 }:
 
 stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    addOpenGLRunpath
+    addDriverRunpath
   ];
 
   buildInputs = [
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   ];
 
   postFixup = ''
-    addOpenGLRunpath "$out/lib/dri/nvidia_drv_video.so"
+    addDriverRunpath "$out/lib/dri/nvidia_drv_video.so"
   '';
 
   meta = with lib;{
diff --git a/pkgs/development/libraries/oatpp/default.nix b/pkgs/development/libraries/oatpp/default.nix
index 54e821b178489..10b44bdac5721 100644
--- a/pkgs/development/libraries/oatpp/default.nix
+++ b/pkgs/development/libraries/oatpp/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   # Tests fail on darwin. See https://github.com/NixOS/nixpkgs/pull/105419#issuecomment-735826894
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     homepage = "https://oatpp.io/";
diff --git a/pkgs/development/libraries/ocl-icd/default.nix b/pkgs/development/libraries/ocl-icd/default.nix
index 0930b8904bdf8..2c092dd57b13e 100644
--- a/pkgs/development/libraries/ocl-icd/default.nix
+++ b/pkgs/development/libraries/ocl-icd/default.nix
@@ -3,7 +3,6 @@
 , fetchFromGitHub
 , ruby
 , opencl-headers
-, addOpenGLRunpath
 , autoreconfHook
 , windows
 }:
diff --git a/pkgs/development/libraries/ode/default.nix b/pkgs/development/libraries/ode/default.nix
index 8b426654147f4..2906c34283428 100644
--- a/pkgs/development/libraries/ode/default.nix
+++ b/pkgs/development/libraries/ode/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-uode3RZFcJWHle6qcPFIU7/DTMmHH4rd6NpH4SvVRnk=";
   };
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.CoreServices
     darwin.apple_sdk.frameworks.GLUT
   ];
diff --git a/pkgs/development/libraries/odpic/default.nix b/pkgs/development/libraries/odpic/default.nix
index 6ab232ae42e90..831c8a4e2afd5 100644
--- a/pkgs/development/libraries/odpic/default.nix
+++ b/pkgs/development/libraries/odpic/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, fixDarwinDylibNames, oracle-instantclient, libaio }:
 
 let
-  version = "5.2.0";
+  version = "5.3.0";
   libPath = lib.makeLibraryPath [ oracle-instantclient.lib ];
 
 in
@@ -14,22 +14,22 @@ stdenv.mkDerivation {
     owner = "oracle";
     repo = "odpi";
     rev = "v${version}";
-    sha256 = "sha256-2oM78YgP14oyFBWZ8KdHlGsN3hjoWTBcIvOI+93sSyM=";
+    sha256 = "sha256-Ez9B89I008YMu1s/8J0V4bydkooth+O5846Fmwl4FsA=";
   };
 
-  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   buildInputs = [ oracle-instantclient ]
-    ++ lib.optionals stdenv.isLinux [ libaio ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libaio ];
 
   dontPatchELF = true;
   makeFlags = [ "PREFIX=$(out)" "CC=${stdenv.cc.targetPrefix}cc" "LD=${stdenv.cc.targetPrefix}cc" ];
 
   postFixup = ''
-    ${lib.optionalString (stdenv.isLinux) ''
+    ${lib.optionalString (stdenv.hostPlatform.isLinux) ''
       patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $out/lib/libodpic${stdenv.hostPlatform.extensions.sharedLibrary})" $out/lib/libodpic${stdenv.hostPlatform.extensions.sharedLibrary}
     ''}
-    ${lib.optionalString (stdenv.isDarwin) ''
+    ${lib.optionalString (stdenv.hostPlatform.isDarwin) ''
       install_name_tool -add_rpath "${libPath}" $out/lib/libodpic${stdenv.hostPlatform.extensions.sharedLibrary}
     ''}
   '';
diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix
index 93db5470b0f73..0643fabdd8c66 100644
--- a/pkgs/development/libraries/ogre/default.nix
+++ b/pkgs/development/libraries/ogre/default.nix
@@ -12,7 +12,7 @@
 , pugixml
 , zziplib
   # linux
-, freeglut
+, libglut
 , libGL
 , libGLU
 , libICE
@@ -74,8 +74,8 @@ let
       ois
       pugixml
       zziplib
-    ] ++ lib.optionals stdenv.isLinux [
-      freeglut
+    ] ++ lib.optionals stdenv.hostPlatform.isLinux [
+      libglut
       libGL
       libGLU
       libICE
@@ -88,7 +88,7 @@ let
       libXt
       libXxf86vm
       xorgproto
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       darwin.apple_sdk.frameworks.Cocoa
     ] ++ lib.optionals withNvidiaCg [
       nvidia_cg_toolkit
@@ -97,7 +97,7 @@ let
     cmakeFlags = [
       (lib.cmakeBool "OGRE_BUILD_DEPENDENCIES" false)
       (lib.cmakeBool "OGRE_BUILD_SAMPLES" withSamples)
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       (lib.cmakeBool "OGRE_BUILD_LIBS_AS_FRAMEWORKS" false)
     ];
 
@@ -112,11 +112,11 @@ let
 in
 {
   ogre_14 = common {
-    version = "14.2.6";
-    hash = "sha256-kxvrRigSe6sPa3lAH+6zKTY4YEU9javlKHK8Zf6jxZE=";
-    # https://github.com/OGRECave/ogre/blob/v14.2.5/Components/Overlay/CMakeLists.txt
-    imguiVersion = "1.90.4";
-    imguiHash = "sha256-7+Ay7H97tIO6CUsEyaQv4i9q2FCw98eQUq/KYZyfTAw=";
+    version = "14.3.0";
+    hash = "sha256-SQ0Ij04W/KgonHDLFEPFDhXb/TDkT8I6W8J7hz3gtrg=";
+    # https://github.com/OGRECave/ogre/blob/v14.3.0/Components/Overlay/CMakeLists.txt
+    imguiVersion = "1.91.2";
+    imguiHash = "sha256-B7XXQNuEPcT1ID5nMYbAV+aNCG9gIrC9J7BLnYB8yjI=";
   };
 
   ogre_13 = common {
diff --git a/pkgs/development/libraries/ois/default.nix b/pkgs/development/libraries/ois/default.nix
index 0a384b03bb2ab..435509dee2160 100644
--- a/pkgs/development/libraries/ois/default.nix
+++ b/pkgs/development/libraries/ois/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = lib.optionals stdenv.isLinux [ libX11 ]
-    ++ lib.optionals stdenv.isDarwin [ Cocoa IOKit Kernel ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libX11 ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa IOKit Kernel ];
 
   cmakeFlags = [
     "-DCMAKE_INSTALL_LIBDIR=lib"
diff --git a/pkgs/development/libraries/okapi/default.nix b/pkgs/development/libraries/okapi/default.nix
index b7a75ad6d1b98..06f980e718c85 100644
--- a/pkgs/development/libraries/okapi/default.nix
+++ b/pkgs/development/libraries/okapi/default.nix
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
   cargoVendorDir = "vendor";
   doCheck = false;
 
-  buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
 
   postInstall = ''
     cp -r include $out
diff --git a/pkgs/development/libraries/olm/default.nix b/pkgs/development/libraries/olm/default.nix
index bb7553c2eb3eb..c83b84fe71e1d 100644
--- a/pkgs/development/libraries/olm/default.nix
+++ b/pkgs/development/libraries/olm/default.nix
@@ -27,5 +27,51 @@ stdenv.mkDerivation rec {
     homepage = "https://gitlab.matrix.org/matrix-org/olm";
     license = licenses.asl20;
     maintainers = with maintainers; [ tilpner oxzi ];
+    knownVulnerabilities = [ ''
+      The libolm end‐to‐end encryption library used in many Matrix
+      clients and Jitsi Meet has been deprecated upstream, and relies
+      on a cryptography library that has known side‐channel issues and
+      disclaims that its implementations are not cryptographically secure
+      and should not be used when cryptographic security is required.
+
+      It is not known if the issues can be exploited over the network in
+      practical conditions. Upstream does not believe such an attack is
+      feasible, but has stated that the library should not be used going
+      forward, and there are no plans to move to another cryptography
+      implementation or otherwise further maintain the library at all.
+
+      You should make an informed decision about whether to override this
+      security warning, especially if you critically rely on end‐to‐end
+      encryption. If you don’t care about that, or don’t use the Matrix
+      functionality of a multi‐protocol client depending on libolm,
+      then there should be no additional risk.
+
+      Some clients are investigating migrating away from libolm to maintained
+      libraries without known vulnerabilities.
+
+      For further information, see:
+
+      * The CVE records for the known vulnerabilities:
+
+        * CVE-2024-45191
+        * CVE-2024-45192
+        * CVE-2024-45193
+
+      * The libolm deprecation notice:
+        <https://gitlab.matrix.org/matrix-org/olm/-/blob/6d4b5b07887821a95b144091c8497d09d377f985/README.md#important-libolm-is-now-deprecated>
+
+      * The warning from the cryptography code used by libolm:
+        <https://gitlab.matrix.org/matrix-org/olm/-/blob/6d4b5b07887821a95b144091c8497d09d377f985/lib/crypto-algorithms/README.md>
+
+      * The blog post disclosing the details of the known vulnerabilities:
+        <https://soatok.blog/2024/08/14/security-issues-in-matrixs-olm-library/>
+
+      * The statement about the deprecation and vulnerabilities from the
+        Matrix.org Foundation:
+        <https://matrix.org/blog/2024/08/libolm-deprecation/>
+
+      * A (likely incomplete) aggregation of client tracking issue links:
+        <https://github.com/NixOS/nixpkgs/pull/334638#issuecomment-2289025802>
+    '' ];
   };
 }
diff --git a/pkgs/development/libraries/omorfi/default.nix b/pkgs/development/libraries/omorfi/default.nix
index 6002ea4646738..9360b0fdd104b 100644
--- a/pkgs/development/libraries/omorfi/default.nix
+++ b/pkgs/development/libraries/omorfi/default.nix
@@ -87,6 +87,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.gpl3;
     maintainers = with maintainers; [ lurkki ];
     # Darwin build fails due to hfst not being found
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 })
diff --git a/pkgs/development/libraries/oneDNN/default.nix b/pkgs/development/libraries/oneDNN/default.nix
index a5eeb4a193084..b8081353ed1c3 100644
--- a/pkgs/development/libraries/oneDNN/default.nix
+++ b/pkgs/development/libraries/oneDNN/default.nix
@@ -9,13 +9,13 @@
 # https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn
 stdenv.mkDerivation (finalAttrs: {
   pname = "oneDNN";
-  version = "3.5";
+  version = "3.5.3";
 
   src = fetchFromGitHub {
     owner = "oneapi-src";
     repo = "oneDNN";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-IOS5w84/Dnwjqgk5Lf6o6P1l9q5KBUUll250B1mh/Gc=";
+    hash = "sha256-/ERkk6bgGEKoJEVdnBxMFEzB8pii71t3zQZNtyg+TdQ=";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/pkgs/development/libraries/onnxruntime/0001-eigen-allow-dependency-injection.patch b/pkgs/development/libraries/onnxruntime/0001-eigen-allow-dependency-injection.patch
index 41a7cf54abaa6..0092ea4d1e8ef 100644
--- a/pkgs/development/libraries/onnxruntime/0001-eigen-allow-dependency-injection.patch
+++ b/pkgs/development/libraries/onnxruntime/0001-eigen-allow-dependency-injection.patch
@@ -1,45 +1,20 @@
-From a29cffa646356228d6ec7bd7ce21fe3ab90fdd19 Mon Sep 17 00:00:00 2001
-From: Someone Serge <sergei.kozlukov@aalto.fi>
-Date: Wed, 7 Feb 2024 16:59:09 +0000
-Subject: [PATCH] eigen: allow dependency injection
-
----
- cmake/external/eigen.cmake | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
 diff --git a/cmake/external/eigen.cmake b/cmake/external/eigen.cmake
-index c0f7ddc50e..996b83d18a 100644
+index b123adb..aab2483 100644
 --- a/cmake/external/eigen.cmake
 +++ b/cmake/external/eigen.cmake
-@@ -1,4 +1,3 @@
--
- if (onnxruntime_USE_PREINSTALLED_EIGEN)
-     add_library(eigen INTERFACE)
-     file(TO_CMAKE_PATH ${eigen_SOURCE_PATH} eigen_INCLUDE_DIRS)
-@@ -10,14 +9,21 @@ else ()
-             URL ${DEP_URL_eigen}
-             URL_HASH SHA1=${DEP_SHA1_eigen}
-             PATCH_COMMAND ${Patch_EXECUTABLE} --ignore-space-change --ignore-whitespace < ${PROJECT_SOURCE_DIR}/patches/eigen/Fix_Eigen_Build_Break.patch
-+            FIND_PACKAGE_ARGS NAMES Eigen3
-         )
-     else()
-         FetchContent_Declare(
-             eigen
-             URL ${DEP_URL_eigen}
-             URL_HASH SHA1=${DEP_SHA1_eigen}
-+            FIND_PACKAGE_ARGS NAMES Eigen3
-         )
-     endif()
+@@ -7,8 +7,13 @@ else ()
+         eigen
+         URL ${DEP_URL_eigen}
+         URL_HASH SHA1=${DEP_SHA1_eigen}
++	FIND_PACKAGE_ARGS NAMES Eigen3
+     )
+ 
 -    FetchContent_Populate(eigen)
 -    set(eigen_INCLUDE_DIRS  "${eigen_SOURCE_DIR}")
 +    FetchContent_MakeAvailable(eigen)
 +    add_library(eigen ALIAS Eigen3::Eigen)
-+
 +    # Onnxruntime doesn't always use `eigen` as a target in
 +    # `target_link_libraries`, sometimes it just uses
 +    # `target_include_directories`:
 +    get_target_property(eigen_INCLUDE_DIRS Eigen3::Eigen INTERFACE_INCLUDE_DIRECTORIES)
  endif()
--- 
-2.42.0
-
diff --git a/pkgs/development/libraries/onnxruntime/default.nix b/pkgs/development/libraries/onnxruntime/default.nix
index 1a62114148f75..9ac43cc4b1d3d 100644
--- a/pkgs/development/libraries/onnxruntime/default.nix
+++ b/pkgs/development/libraries/onnxruntime/default.nix
@@ -3,9 +3,13 @@
 , lib
 , fetchFromGitHub
 , Foundation
-, abseil-cpp
+, abseil-cpp_202401
 , cmake
+, cpuinfo
 , eigen
+, flatbuffers_23
+, gbenchmark
+, glibcLocales
 , gtest
 , libpng
 , nlohmann_json
@@ -24,7 +28,9 @@
 
 
 let
-  version = "1.16.3";
+  version = "1.18.1";
+
+  abseil-cpp = abseil-cpp_202401;
 
   stdenv = throw "Use effectiveStdenv instead";
   effectiveStdenv = if cudaSupport then cudaPackages.backendStdenv else inputs.stdenv;
@@ -34,15 +40,15 @@ let
   howard-hinnant-date = fetchFromGitHub {
     owner = "HowardHinnant";
     repo = "date";
-    rev = "v2.4.1";
-    sha256 = "sha256-BYL7wxsYRI45l8C3VwxYIIocn5TzJnBtU0UZ9pHwwZw=";
+    rev = "v3.0.1";
+    sha256 = "sha256-ZSjeJKAcT7mPym/4ViDvIR9nFMQEBCSUtPEuMO27Z+I=";
   };
 
   mp11 = fetchFromGitHub {
     owner = "boostorg";
     repo = "mp11";
-    rev = "boost-1.79.0";
-    hash = "sha256-ZxgPDLvpISrjpEHKpLGBowRKGfSwTf6TBfJD18yw+LM=";
+    rev = "boost-1.82.0";
+    hash = "sha256-cLPvjkf2Au+B19PJNrUkTW/VPxybi1MpPxnIl4oo4/o=";
   };
 
   safeint = fetchFromGitHub {
@@ -52,34 +58,34 @@ let
     hash = "sha256-PK1ce4C0uCR4TzLFg+elZdSk5DdPCRhhwT3LvEwWnPU=";
   };
 
-  pytorch_cpuinfo = fetchFromGitHub {
-    owner = "pytorch";
-    repo = "cpuinfo";
-    # There are no tags in the repository
-    rev = "5916273f79a21551890fd3d56fc5375a78d1598d";
-    hash = "sha256-nXBnloVTuB+AVX59VDU/Wc+Dsx94o92YQuHp3jowx2A=";
-  };
+  pytorch_clog = effectiveStdenv.mkDerivation {
+    pname = "clog";
+    version = "3c8b153";
+    src = "${cpuinfo.src}/deps/clog";
 
-  flatbuffers = fetchFromGitHub {
-    owner = "google";
-    repo = "flatbuffers";
-    rev = "v1.12.0";
-    hash = "sha256-L1B5Y/c897Jg9fGwT2J3+vaXsZ+lfXnskp8Gto1p/Tg=";
+    nativeBuildInputs = [ cmake gbenchmark gtest ];
+    cmakeFlags = [
+      "-DUSE_SYSTEM_GOOGLEBENCHMARK=ON"
+      "-DUSE_SYSTEM_GOOGLETEST=ON"
+      "-DUSE_SYSTEM_LIBS=ON"
+      # 'clog' tests set 'CXX_STANDARD 11'; this conflicts with our 'gtest'.
+      "-DCLOG_BUILD_TESTS=OFF"
+    ];
   };
 
   onnx = fetchFromGitHub {
     owner = "onnx";
     repo = "onnx";
-    rev = "refs/tags/v1.14.1";
-    hash = "sha256-ZVSdk6LeAiZpQrrzLxphMbc1b3rNUMpcxcXPP8s/5tE=";
+    rev = "refs/tags/v1.16.1";
+    hash = "sha256-I1wwfn91hdH3jORIKny0Xc73qW2P04MjkVCgcaNnQUE=";
   };
 
    cutlass = fetchFromGitHub {
     owner = "NVIDIA";
     repo = "cutlass";
-    rev = "v3.0.0";
-    sha256 = "sha256-YPD5Sy6SvByjIcGtgeGH80TEKg2BtqJWSg46RvnJChY=";
-   };
+    rev = "v3.1.0";
+    hash = "sha256-mpaiCxiYR1WaSSkcEPTzvcREenJWklD+HRdTT5/pD54=";
+ };
 in
 effectiveStdenv.mkDerivation rec {
   pname = "onnxruntime";
@@ -89,7 +95,7 @@ effectiveStdenv.mkDerivation rec {
     owner = "microsoft";
     repo = "onnxruntime";
     rev = "refs/tags/v${version}";
-    hash = "sha256-bTW9Pc3rvH+c8VIlDDEtAXyA3sajVyY5Aqr6+SxaMF4=";
+    hash = "sha256-+zWtbLKekGhwdBU3bm1u2F7rYejQ62epE+HcHj05/8A=";
     fetchSubmodules = true;
   };
 
@@ -102,6 +108,13 @@ effectiveStdenv.mkDerivation rec {
     # - use MakeAvailable instead of the low-level Populate,
     # - use Eigen3::Eigen as the target name (as declared by libeigen/eigen).
     ./0001-eigen-allow-dependency-injection.patch
+    # Incorporate a patch that has landed upstream which exposes new
+    # 'abseil-cpp' libraries & modifies the 're2' CMakeLists to fix a
+    # configuration error that around missing 'gmock' exports.
+    #
+    # TODO: Check if it can be dropped after 1.19.0
+    # https://github.com/microsoft/onnxruntime/commit/b522df0ae477e59f60acbe6c92c8a64eda96cace
+    ./update-re2.patch
   ] ++ lib.optionals cudaSupport [
     # We apply the referenced 1064.patch ourselves to our nix dependency.
     #  FIND_PACKAGE_ARGS for CUDA was added in https://github.com/microsoft/onnxruntime/commit/87744e5 so it might be possible to delete this patch after upgrading to 1.17.0
@@ -124,16 +137,19 @@ effectiveStdenv.mkDerivation rec {
   ];
 
   buildInputs = [
+    cpuinfo
     eigen
+    glibcLocales
     libpng
-    zlib
     nlohmann_json
     microsoft-gsl
+    pytorch_clog
+    zlib
   ] ++ lib.optionals pythonSupport (with python3Packages; [
     numpy
     pybind11
     packaging
-  ]) ++ lib.optionals effectiveStdenv.isDarwin [
+  ]) ++ lib.optionals effectiveStdenv.hostPlatform.isDarwin [
     Foundation
     libiconv
   ] ++ lib.optionals cudaSupport (with cudaPackages; [
@@ -144,6 +160,7 @@ effectiveStdenv.mkDerivation rec {
     libcufft # cufft.h
     cudnn # cudnn.h
     cuda_cudart
+    nccl
   ]);
 
   nativeCheckInputs = [
@@ -168,11 +185,11 @@ effectiveStdenv.mkDerivation rec {
     "-DFETCHCONTENT_QUIET=OFF"
     "-DFETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=${abseil-cpp.src}"
     "-DFETCHCONTENT_SOURCE_DIR_DATE=${howard-hinnant-date}"
-    "-DFETCHCONTENT_SOURCE_DIR_FLATBUFFERS=${flatbuffers}"
+    "-DFETCHCONTENT_SOURCE_DIR_FLATBUFFERS=${flatbuffers_23.src}"
+    "-DFETCHCONTENT_SOURCE_DIR_GOOGLETEST=${gtest.src}"
     "-DFETCHCONTENT_SOURCE_DIR_GOOGLE_NSYNC=${nsync.src}"
     "-DFETCHCONTENT_SOURCE_DIR_MP11=${mp11}"
     "-DFETCHCONTENT_SOURCE_DIR_ONNX=${onnx}"
-    "-DFETCHCONTENT_SOURCE_DIR_PYTORCH_CPUINFO=${pytorch_cpuinfo}"
     "-DFETCHCONTENT_SOURCE_DIR_RE2=${re2.src}"
     "-DFETCHCONTENT_SOURCE_DIR_SAFEINT=${safeint}"
     "-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS"
@@ -194,11 +211,13 @@ effectiveStdenv.mkDerivation rec {
   env = lib.optionalAttrs effectiveStdenv.cc.isClang {
     NIX_CFLAGS_COMPILE = toString [
       "-Wno-error=deprecated-declarations"
+      "-Wno-error=deprecated-pragma"
       "-Wno-error=unused-but-set-variable"
     ];
   };
 
-  doCheck = !cudaSupport;
+  # aarch64-linux fails cpuinfo test, because /sys/devices/system/cpu/ does not exist in the sandbox
+  doCheck = !(cudaSupport || effectiveStdenv.buildPlatform.system == "aarch64-linux");
 
   requiredSystemFeatures = lib.optionals cudaSupport [ "big-parallel" ];
 
diff --git a/pkgs/development/libraries/onnxruntime/nvcc-gsl.patch b/pkgs/development/libraries/onnxruntime/nvcc-gsl.patch
index 948de62e7e75a..ca94faab93942 100644
--- a/pkgs/development/libraries/onnxruntime/nvcc-gsl.patch
+++ b/pkgs/development/libraries/onnxruntime/nvcc-gsl.patch
@@ -1,8 +1,8 @@
 diff --git a/cmake/external/onnxruntime_external_deps.cmake b/cmake/external/onnxruntime_external_deps.cmake
-index 9effd1a2db..faff5e8de7 100644
+index 775576a..ccea13c 100644
 --- a/cmake/external/onnxruntime_external_deps.cmake
 +++ b/cmake/external/onnxruntime_external_deps.cmake
-@@ -280,21 +280,12 @@ if (NOT WIN32)
+@@ -367,22 +367,12 @@ if (NOT WIN32)
    endif()
  endif()
  
@@ -12,6 +12,7 @@ index 9effd1a2db..faff5e8de7 100644
 -    URL ${DEP_URL_microsoft_gsl}
 -    URL_HASH SHA1=${DEP_SHA1_microsoft_gsl}
 -    PATCH_COMMAND ${Patch_EXECUTABLE} --binary --ignore-whitespace -p1 < ${PROJECT_SOURCE_DIR}/patches/gsl/1064.patch
+-    FIND_PACKAGE_ARGS 4.0 NAMES Microsoft.GSL
 -  )
 -else()
 -  FetchContent_Declare(
diff --git a/pkgs/development/libraries/onnxruntime/update-re2.patch b/pkgs/development/libraries/onnxruntime/update-re2.patch
new file mode 100644
index 0000000000000..7996721f8e111
--- /dev/null
+++ b/pkgs/development/libraries/onnxruntime/update-re2.patch
@@ -0,0 +1,132 @@
+From 0d1e631c365944d54e87bdce39beb13b225ba8f8 Mon Sep 17 00:00:00 2001
+From: Changming Sun <chasun@microsoft.com>
+Date: Thu, 23 May 2024 14:30:15 -0700
+Subject: [PATCH] Update RE2 to the latest (#20775)
+
+Update RE2 to the latest.
+
+To keep the components up to date.
+
+(cherry picked from commit b522df0ae477e59f60acbe6c92c8a64eda96cace)
+---
+ cgmanifests/generated/cgmanifest.json |  2 +-
+ cmake/deps.txt                        |  4 +--
+ cmake/external/abseil-cpp.cmake       | 35 ++++++++++++++++++++++-----
+ cmake/external/helper_functions.cmake |  6 +++++
+ 4 files changed, 38 insertions(+), 9 deletions(-)
+
+diff --git a/cgmanifests/generated/cgmanifest.json b/cgmanifests/generated/cgmanifest.json
+index eb74178b3e..e3e9be67ae 100644
+--- a/cgmanifests/generated/cgmanifest.json
++++ b/cgmanifests/generated/cgmanifest.json
+@@ -276,7 +276,7 @@
+       "component": {
+         "type": "git",
+         "git": {
+-          "commitHash": "5723bb8950318135ed9cf4fc76bed988a087f536",
++          "commitHash": "2b354c6ad0d0479dcff68dab23fb0d1143a482c2",
+           "repositoryUrl": "https://github.com/google/re2.git"
+         },
+         "comments": "re2"
+diff --git a/cmake/deps.txt b/cmake/deps.txt
+index d213b09034..d4d19dea08 100644
+--- a/cmake/deps.txt
++++ b/cmake/deps.txt
+@@ -50,11 +50,11 @@ psimd;https://github.com/Maratyszcza/psimd/archive/072586a71b55b7f8c584153d223e9
+ pthreadpool;https://github.com/Maratyszcza/pthreadpool/archive/4fe0e1e183925bf8cfa6aae24237e724a96479b8.zip;07a0aa91dd9bf86f31b95497e00f31d8a261a4bd
+ pybind11;https://github.com/pybind/pybind11/archive/refs/tags/v2.10.1.zip;769b6aa67a77f17a770960f604b727645b6f6a13
+ pytorch_cpuinfo;https://github.com/pytorch/cpuinfo/archive/959002f82d7962a473d8bf301845f2af720e0aa4.zip;85da3caa60eb2b148613b443fbc2bfdc30689965
+-re2;https://github.com/google/re2/archive/refs/tags/2022-06-01.zip;aa77313b76e91b531ee7f3e45f004c6a502a5374
++re2;https://github.com/google/re2/archive/refs/tags/2024-05-01.tar.gz;206cfee5ee0b4c6844680ba66275e9e8faa77405
+ safeint;https://github.com/dcleblanc/SafeInt/archive/refs/tags/3.0.28.zip;23f252040ff6cb9f1fd18575b32fa8fb5928daac
+ tensorboard;https://github.com/tensorflow/tensorboard/archive/373eb09e4c5d2b3cc2493f0949dc4be6b6a45e81.zip;67b833913605a4f3f499894ab11528a702c2b381
+ cutlass;https://github.com/NVIDIA/cutlass/archive/refs/tags/v3.1.0.zip;757f90a795034a89d4f48a79d1f009f7a04c8dee
+ utf8_range;https://github.com/protocolbuffers/utf8_range/archive/72c943dea2b9240cd09efde15191e144bc7c7d38.zip;9925739c9debc0efa2adcb194d371a35b6a03156
+ extensions;https://github.com/microsoft/onnxruntime-extensions/archive/94142d8391c9791ec71c38336436319a2d4ac7a0.zip;4365ac5140338b4cb75a39944a4be276e3829b3c
+ composable_kernel;https://github.com/ROCmSoftwarePlatform/composable_kernel/archive/5356c4a943a35e74d7cdc69486afcb8703b9a59a.zip;522382c2af437e09124287e5879ab64af5b2e299
+-directx_headers;https://github.com/microsoft/DirectX-Headers/archive/refs/tags/v1.613.1.zip;47653509a3371eabb156360f42faf582f314bf2e
+\ No newline at end of file
++directx_headers;https://github.com/microsoft/DirectX-Headers/archive/refs/tags/v1.613.1.zip;47653509a3371eabb156360f42faf582f314bf2e
+diff --git a/cmake/external/abseil-cpp.cmake b/cmake/external/abseil-cpp.cmake
+index 57cfbee464..c01195c99e 100644
+--- a/cmake/external/abseil-cpp.cmake
++++ b/cmake/external/abseil-cpp.cmake
+@@ -45,10 +45,8 @@ endif()
+ 
+ # TODO: since multiple ORT's dependencies depend on Abseil, the list below would vary from version to version.
+ # We'd better to not manually manage the list.
+-set(ABSEIL_LIBS absl::base
++set(ABSEIL_LIBS
+ absl::city
+-absl::core_headers
+-absl::fixed_array
+ absl::flags
+ absl::flat_hash_map
+ absl::flat_hash_set
+@@ -60,9 +58,34 @@ absl::node_hash_set
+ absl::optional
+ absl::raw_hash_set
+ absl::raw_logging_internal
+-absl::span
+ absl::str_format
+-absl::strings
++absl::str_format_internal
++absl::bits
++absl::fixed_array
++absl::numeric_representation
++absl::utility
++absl::type_traits
++absl::string_view
++absl::core_headers
++absl::nullability
++absl::span
++absl::config
+ absl::synchronization
++absl::base
++absl::civil_time
++absl::debugging_internal
++absl::demangle_internal
++absl::graphcycles_internal
++absl::int128
++absl::kernel_timeout_internal
++absl::log_severity
++absl::malloc_internal
++absl::spinlock_wait
++absl::stacktrace
++absl::string_view
++absl::strings
++absl::strings_internal
++absl::symbolize
+ absl::throw_delegate
+-absl::time)
++absl::time
++absl::time_zone)
+\ No newline at end of file
+diff --git a/cmake/external/helper_functions.cmake b/cmake/external/helper_functions.cmake
+index 768e807b40..eefb3ba2e8 100644
+--- a/cmake/external/helper_functions.cmake
++++ b/cmake/external/helper_functions.cmake
+@@ -159,7 +159,12 @@ macro(onnxruntime_fetchcontent_makeavailable)
+       endif()
+ 
+       if(EXISTS ${__cmake_srcdir}/CMakeLists.txt)
++        set(CMAKE_SKIP_INSTALL_RULES TRUE)
++        if (__cmake_arg_SYSTEM)
++          add_subdirectory(${__cmake_srcdir} ${${__cmake_contentNameLower}_BINARY_DIR} SYSTEM)
++        else()
+           add_subdirectory(${__cmake_srcdir} ${${__cmake_contentNameLower}_BINARY_DIR} EXCLUDE_FROM_ALL)
++        endif()
+           get_property(subdir_import_targets DIRECTORY "${__cmake_srcdir}" PROPERTY BUILDSYSTEM_TARGETS)
+           foreach(subdir_target ${subdir_import_targets})
+             if(TARGET ${subdir_target})
+@@ -176,6 +181,7 @@ macro(onnxruntime_fetchcontent_makeavailable)
+               set_target_properties(${subdir_target} PROPERTIES COMPILE_WARNING_AS_ERROR OFF)
+             endif()
+           endforeach()
++          set(CMAKE_SKIP_INSTALL_RULES FALSE)
+       endif()
+ 
+       unset(__cmake_srcdir)
+-- 
+2.45.2
+
diff --git a/pkgs/development/libraries/openal-soft/default.nix b/pkgs/development/libraries/openal-soft/default.nix
index 496b7ac60fe00..15a33af177cee 100644
--- a/pkgs/development/libraries/openal-soft/default.nix
+++ b/pkgs/development/libraries/openal-soft/default.nix
@@ -1,8 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, removeReferencesTo
-, alsaSupport ? !stdenv.isDarwin, alsa-lib
-, dbusSupport ? !stdenv.isDarwin, dbus
-, pipewireSupport ? !stdenv.isDarwin, pipewire
-, pulseSupport ? !stdenv.isDarwin, libpulseaudio
+, alsaSupport ? !stdenv.hostPlatform.isDarwin, alsa-lib
+, dbusSupport ? !stdenv.hostPlatform.isDarwin, dbus
+, pipewireSupport ? !stdenv.hostPlatform.isDarwin, pipewire
+, pulseSupport ? !stdenv.hostPlatform.isDarwin, libpulseaudio
 , CoreServices, AudioUnit, AudioToolbox
 }:
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional dbusSupport dbus
     ++ lib.optional pipewireSupport pipewire
     ++ lib.optional pulseSupport libpulseaudio
-    ++ lib.optionals stdenv.isDarwin [ CoreServices AudioUnit AudioToolbox ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices AudioUnit AudioToolbox ];
 
   cmakeFlags = [
     # Automatically links dependencies without having to rely on dlopen, thus
diff --git a/pkgs/development/libraries/openbabel/default.nix b/pkgs/development/libraries/openbabel/default.nix
index 0030b1cfa1713..c08053d6786b6 100644
--- a/pkgs/development/libraries/openbabel/default.nix
+++ b/pkgs/development/libraries/openbabel/default.nix
@@ -1,4 +1,21 @@
-{ stdenv, lib, fetchFromGitHub, cmake, perl, zlib, libxml2, eigen, python, cairo, pcre, pkg-config, swig, rapidjson }:
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, perl
+, zlib
+, libxml2
+, eigen
+, python
+, cairo
+, pcre
+, pkg-config
+, swig
+, rapidjson
+, boost
+, maeparser
+, coordgenlibs
+}:
 
 stdenv.mkDerivation rec {
   pname = "openbabel";
@@ -15,22 +32,23 @@ stdenv.mkDerivation rec {
     sed '1i#include <ctime>' -i include/openbabel/obutil.h # gcc12
   '';
 
-  buildInputs = [ perl zlib libxml2 eigen python cairo pcre swig rapidjson ];
+  buildInputs = [ perl zlib libxml2 eigen python cairo pcre swig rapidjson boost maeparser coordgenlibs ];
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  pythonMajorMinor = "${python.sourceVersion.major}.${python.sourceVersion.minor}";
-
-  cmakeFlags = [
-    "-DRUN_SWIG=ON"
-    "-DPYTHON_BINDINGS=ON"
-  ];
+  preConfigure = ''
+    cmakeFlagsArray+=(
+      "-DRUN_SWIG=ON"
+      "-DPYTHON_BINDINGS=ON"
+      "-DPYTHON_INSTDIR=$out/${python.sitePackages}"
+    )
+  '';
 
   # Setuptools only accepts PEP 440 version strings. The "unstable" identifier
   # can not be used. Instead we pretend to be the 3.2 beta release.
   postFixup = ''
-    cat <<EOF > $out/lib/python$pythonMajorMinor/site-packages/setup.py
-    from distutils.core import setup
+    cat << EOF > $out/${python.sitePackages}/setup.py
+    from setuptools import setup
 
     setup(
         name = 'pyopenbabel',
diff --git a/pkgs/development/libraries/openbsm/default.nix b/pkgs/development/libraries/openbsm/default.nix
index f30fcac869f17..32d7bf0743843 100644
--- a/pkgs/development/libraries/openbsm/default.nix
+++ b/pkgs/development/libraries/openbsm/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "0b98359hd8mm585sh145ss828pg2y8vgz38lqrb7nypapiyqdnd1";
   };
 
-  patches = lib.optionals stdenv.isDarwin [ ./bsm-add-audit_token_to_pid.patch ];
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [ ./bsm-add-audit_token_to_pid.patch ];
 
   preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
     MACOSX_DEPLOYMENT_TARGET=10.16
diff --git a/pkgs/development/libraries/opencascade-occt/default.nix b/pkgs/development/libraries/opencascade-occt/default.nix
index a09cacaf39286..e9f3e0794d33f 100644
--- a/pkgs/development/libraries/opencascade-occt/default.nix
+++ b/pkgs/development/libraries/opencascade-occt/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     libXext
     libXmu
     libXi
-  ] ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Cocoa;
 
   meta = with lib; {
     description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
diff --git a/pkgs/development/libraries/opencl-clang/default.nix b/pkgs/development/libraries/opencl-clang/default.nix
index 1c90cc386733f..a4d2f115cc672 100644
--- a/pkgs/development/libraries/opencl-clang/default.nix
+++ b/pkgs/development/libraries/opencl-clang/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , applyPatches
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , git
 , llvmPackages_14
@@ -54,33 +53,27 @@ let
     };
   };
 
-  version = "unstable-2023-06-12";
+  version = "14.0.0-unstable-2024-07-09";
   src = applyPatches {
     src = fetchFromGitHub {
       owner = "intel";
       repo = "opencl-clang";
       # https://github.com/intel/opencl-clang/compare/ocl-open-140
-      rev = "cf95b338d14685e4f3402ab1828bef31d48f1fd6";
-      hash = "sha256-To1RlQX9IJ+1zAwEXaW7ua3VNfjK9mu7pgsRPsfa8g8=";
+      rev = "470cf0018e1ef6fc92eda1356f5f31f7da452abc";
+      hash = "sha256-Ja+vJ317HI3Nh45kcAMhyLVTIqyy6pE5KAsKs4ou9J8=";
     };
 
     patches = [
       # Build script tries to find Clang OpenCL headers under ${llvm}
       # Work around it by specifying that directory manually.
       ./opencl-headers-dir.patch
-
-      # fix CMake throwing errors
-      (fetchpatch {
-        url = "https://github.com/intel/opencl-clang/commit/321e3b99c1a8d54c8475f5ae998452069cc5eb71.patch";
-        hash = "sha256-cATbH+AMVtcabhl3EkzAH7w3wGreUV53hQYHVUUEP4g=";
-      })
     ];
 
     postPatch = ''
       # fix not be able to find clang from PATH
       substituteInPlace cl_headers/CMakeLists.txt \
         --replace " NO_DEFAULT_PATH" ""
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
       # Uses linker flags that are not supported on Darwin.
       sed -i -e '/SET_LINUX_EXPORTS_FILE/d' CMakeLists.txt
       substituteInPlace CMakeLists.txt \
@@ -111,9 +104,9 @@ stdenv.mkDerivation {
     homepage = "https://github.com/intel/opencl-clang/";
     description = "Clang wrapper library with an OpenCL-oriented API and the ability to compile OpenCL C kernels to SPIR-V modules";
     license = licenses.ncsa;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
     # error: invalid value 'CL3.0' in '-cl-std=CL3.0'
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/opencl-clhpp/default.nix b/pkgs/development/libraries/opencl-clhpp/default.nix
index 8410aa4aa0638..58709dcd8699b 100644
--- a/pkgs/development/libraries/opencl-clhpp/default.nix
+++ b/pkgs/development/libraries/opencl-clhpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opencl-clhpp";
-  version = "2.0.15";
+  version = "2024.05.08";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-CLHPP";
     rev = "v${version}";
-    sha256 = "sha256-A12GdevbMaO2QkGAk3VsXzwcDkF+6dEapse2xfdqzPM=";
+    sha256 = "sha256-bIm4tGqwWX0IPKH3BwLgkf0T7YFrkN6vemYvdPrqUpw=";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/development/libraries/opencollada/default.nix b/pkgs/development/libraries/opencollada/default.nix
index bee15715fcfcc..67f18a4a2718a 100644
--- a/pkgs/development/libraries/opencollada/default.nix
+++ b/pkgs/development/libraries/opencollada/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ AGL ]);
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [ AGL ]);
 
   propagatedBuildInputs = [ libxml2 pcre ];
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     # Drop blanket -Werror as it tends to fail on newer toolchain for
     # minor warnings. In this case it was gcc-13 build failure.
     substituteInPlace DAEValidator/CMakeLists.txt --replace-fail ' -Werror"' '"'
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace GeneratedSaxParser/src/GeneratedSaxParserUtils.cpp \
       --replace math.h cmath
   '';
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Library for handling the COLLADA file format";
     homepage = "https://github.com/KhronosGroup/OpenCOLLADA/";
-    maintainers = [ lib.maintainers.eelco ];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
     license = lib.licenses.mit;
   };
diff --git a/pkgs/development/libraries/opencolorio/1.x.nix b/pkgs/development/libraries/opencolorio/1.x.nix
index 61ce9cff661ae..7d1839163efc2 100644
--- a/pkgs/development/libraries/opencolorio/1.x.nix
+++ b/pkgs/development/libraries/opencolorio/1.x.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   # TODO: Investigate whether git can be dropped: It's only used to apply patches
   nativeBuildInputs = [ cmake pkg-config git ];
 
-  buildInputs = [ lcms2 tinyxml ] ++ lib.optional stdenv.isDarwin boost;
+  buildInputs = [ lcms2 tinyxml ] ++ lib.optional stdenv.hostPlatform.isDarwin boost;
 
   postPatch = ''
     substituteInPlace src/core/CMakeLists.txt --replace "-Werror" ""
@@ -28,9 +28,9 @@ stdenv.mkDerivation rec {
     "-DUSE_EXTERNAL_TINYXML=ON"
     # External yaml-cpp 0.6.* not compatible: https://github.com/imageworks/OpenColorIO/issues/517
     "-DUSE_EXTERNAL_YAML=OFF"
-  ] ++ lib.optional stdenv.isDarwin "-DOCIO_USE_BOOST_PTR=ON"
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin "-DOCIO_USE_BOOST_PTR=ON"
     ++ lib.optional (!stdenv.hostPlatform.isx86) "-DOCIO_USE_SSE=OFF"
-    ++ lib.optional (stdenv.isDarwin && stdenv.isAarch64) "-DCMAKE_OSX_ARCHITECTURES=arm64";
+    ++ lib.optional (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-DCMAKE_OSX_ARCHITECTURES=arm64";
 
   postInstall = ''
     moveToOutput bin "$bin"
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     homepage = "https://opencolorio.org";
     description = "Color management framework for visual effects and animation";
     license = licenses.bsd3;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/opencolorio/default.nix b/pkgs/development/libraries/opencolorio/default.nix
index d5270b655ca1e..76d2b06150ad5 100644
--- a/pkgs/development/libraries/opencolorio/default.nix
+++ b/pkgs/development/libraries/opencolorio/default.nix
@@ -1,7 +1,6 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , expat
 , yaml-cpp
@@ -10,7 +9,7 @@
 , minizip-ng
 # Only required on Linux
 , glew
-, freeglut
+, libglut
 # Only required on Darwin
 , Carbon
 , GLUT
@@ -26,22 +25,16 @@
 
 stdenv.mkDerivation rec {
   pname = "opencolorio";
-  version = "2.3.0";
+  version = "2.3.2";
 
   src = fetchFromGitHub {
     owner = "AcademySoftwareFoundation";
     repo = "OpenColorIO";
     rev = "v${version}";
-    sha256 = "sha256-E4TmMEFzI3nKqiDFaAkNx44uo84sacvZqjbfWe3A8fE=";
+    hash = "sha256-CSD3AZ36tmC/cYSdPsdDYx894+jd9GkGkhYJ767QY8A=";
   };
 
   patches = [
-    (fetchpatch {
-      # Taken from https://github.com/AcademySoftwareFoundation/OpenColorIO/pull/1891.
-      name = "opencolorio-yaml-cpp-8.0-compat.patch";
-      url = "https://github.com/AcademySoftwareFoundation/OpenColorIO/commit/e99b4afcf0408d8ec56fdf2b9380327c9284db00.patch";
-      sha256 = "sha256-7eIvVWKcpE0lmuYdNqFQFHkW/sSSzQ//LNIMOC28KZg=";
-    })
     # Workaround for https://gitlab.kitware.com/cmake/cmake/-/issues/25200.
     # Needed for zlib >= 1.3 && cmake < 3.27.4.
     ./broken-cmake-zlib-version.patch
@@ -49,7 +42,7 @@ stdenv.mkDerivation rec {
     ./line-numbers.patch
   ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     # these tests don't like being run headless on darwin. no builtin
     # way of skipping tests so this is what we're reduced to.
     substituteInPlace tests/cpu/Config_tests.cpp \
@@ -64,7 +57,7 @@ stdenv.mkDerivation rec {
     pystring
     imath
     minizip-ng
-  ] ++ lib.optionals stdenv.hostPlatform.isLinux [ glew freeglut ]
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [ glew libglut ]
     ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon GLUT Cocoa ]
     ++ lib.optionals pythonBindings [ python3Packages.python python3Packages.pybind11 ]
     ++ lib.optionals buildApps [
@@ -75,14 +68,14 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DOCIO_INSTALL_EXT_PACKAGES=NONE"
     "-DOCIO_USE_SSE2NEON=OFF"
-    # GPU test fails with: freeglut (GPU tests): failed to open display ''
+    # GPU test fails with: libglut (GPU tests): failed to open display ''
     "-DOCIO_BUILD_GPU_TESTS=OFF"
     "-Dminizip-ng_INCLUDE_DIR=${minizip-ng}/include/minizip-ng"
   ] ++ lib.optional (!pythonBindings) "-DOCIO_BUILD_PYTHON=OFF"
     ++ lib.optional (!buildApps) "-DOCIO_BUILD_APPS=OFF";
 
   # precision issues on non-x86
-  doCheck = stdenv.isx86_64;
+  doCheck = stdenv.hostPlatform.isx86_64;
   # Tends to fail otherwise.
   enableParallelChecking = false;
 
diff --git a/pkgs/development/libraries/opencsg/default.nix b/pkgs/development/libraries/opencsg/default.nix
index a2675b2d79dc6..5aea0da273808 100644
--- a/pkgs/development/libraries/opencsg/default.nix
+++ b/pkgs/development/libraries/opencsg/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, libGLU, libGL, freeglut, glew, libXmu, libXext, libX11
+{lib, stdenv, fetchurl, libGLU, libGL, libglut, glew, libXmu, libXext, libX11
 , qmake, GLUT, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
@@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ qmake ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   buildInputs = [ glew ]
-    ++ lib.optionals stdenv.isLinux [ libGLU libGL freeglut libXmu libXext libX11 ]
-    ++ lib.optional stdenv.isDarwin GLUT;
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libGLU libGL libglut libXmu libXext libX11 ]
+    ++ lib.optional stdenv.hostPlatform.isDarwin GLUT;
 
   doCheck = false;
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     install -D copying.txt "$out/share/doc/opencsg/copying.txt"
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     mkdir -p $out/Applications
     mv $out/bin/*.app $out/Applications
     rmdir $out/bin || true
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   dontWrapQtApps = true;
 
-  postFixup = lib.optionalString stdenv.isDarwin ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     app=$out/Applications/opencsgexample.app/Contents/MacOS/opencsgexample
     install_name_tool -change \
       $(otool -L $app | awk '/opencsg.+dylib/ { print $1 }') \
diff --git a/pkgs/development/libraries/openct/default.nix b/pkgs/development/libraries/openct/default.nix
index e4b6110e1c153..c8cc99b3f543f 100644
--- a/pkgs/development/libraries/openct/default.nix
+++ b/pkgs/development/libraries/openct/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     homepage = "https://github.com/OpenSC/openct/";
     license = licenses.lgpl21;
     description = "Drivers for several smart card readers";
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
deleted file mode 100644
index adb6532bd6825..0000000000000
--- a/pkgs/development/libraries/opencv/3.x.nix
+++ /dev/null
@@ -1,304 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, callPackage
-, cmake, pkg-config, unzip, zlib, pcre, hdf5
-, glog, boost, gflags, protobuf_21
-, config
-
-, enableJPEG      ? true, libjpeg
-, enablePNG       ? true, libpng
-, enableTIFF      ? true, libtiff
-, enableWebP      ? true, libwebp
-, enableEXR ?     !stdenv.isDarwin, openexr_3
-, enableEigen     ? true, eigen
-, enableOpenblas  ? true, openblas, blas, lapack
-, enableContrib   ? true
-
-, enableCuda      ? config.cudaSupport
-, cudaPackages
-, enableUnfree    ? false
-, enableIpp       ? false
-, enablePython    ? false, pythonPackages ? null
-, enableGtk2      ? false, gtk2
-, enableGtk3      ? false, gtk3
-, enableFfmpeg    ? false, ffmpeg
-, enableGStreamer ? false, gst_all_1
-, enableTesseract ? false, tesseract, leptonica
-, enableTbb       ? false, tbb
-, enableOvis      ? false, ogre
-, enableGPhoto2   ? false, libgphoto2
-, enableDC1394    ? false, libdc1394
-, enableDocs      ? false, doxygen, graphviz-nox
-
-, AVFoundation, Cocoa, VideoDecodeAcceleration, bzip2, CoreMedia, MediaToolbox, Accelerate
-}:
-
-assert blas.implementation == "openblas" && lapack.implementation == "openblas";
-
-assert enablePython -> pythonPackages != null;
-
-let
-  inherit (cudaPackages) backendStdenv cudatoolkit;
-  inherit (cudaPackages.cudaFlags) cudaCapabilities;
-
-  version = "3.4.18";
-
-  src = fetchFromGitHub {
-    owner  = "opencv";
-    repo   = "opencv";
-    rev    = version;
-    hash   = "sha256-PgwAZNoPknFT0jCLt3TCzend6OYFY3iUIzDf/FptAYA=";
-  };
-
-  contribSrc = fetchFromGitHub {
-    owner  = "opencv";
-    repo   = "opencv_contrib";
-    rev    = version;
-    hash   = "sha256-TEF/GHglOmsshlC6q4iw14ZMpvA0SaKwlidomAN+sRc=";
-  };
-
-  # Contrib must be built in order to enable Tesseract support:
-  buildContrib = enableContrib || enableTesseract;
-
-  useSystemProtobuf = ! stdenv.isDarwin;
-
-  # See opencv/3rdparty/ippicv/ippicv.cmake
-  ippicv = {
-    src = fetchFromGitHub {
-      owner  = "opencv";
-      repo   = "opencv_3rdparty";
-      rev    = "32e315a5b106a7b89dbed51c28f8120a48b368b4";
-      sha256 = "19w9f0r16072s59diqxsr5q6nmwyz9gnxjs49nglzhd66p3ddbkp";
-    } + "/ippicv";
-    files = let name = platform : "ippicv_2019_${platform}_general_20180723.tgz"; in
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-      { ${name "lnx_intel64"} = "c0bd78adb4156bbf552c1dfe90599607"; }
-      else if stdenv.hostPlatform.system == "i686-linux" then
-      { ${name "lnx_ia32"}    = "4f38432c30bfd6423164b7a24bbc98a0"; }
-      else if stdenv.hostPlatform.system == "x86_64-darwin" then
-      { ${name "mac_intel64"} = "fe6b2bb75ae0e3f19ad3ae1a31dfa4a2"; }
-      else
-      throw "ICV is not available for this platform (or not yet supported by this package)";
-    dst = ".cache/ippicv";
-  };
-
-  # See opencv_contrib/modules/xfeatures2d/cmake/download_vgg.cmake
-  vgg = {
-    src = fetchFromGitHub {
-      owner  = "opencv";
-      repo   = "opencv_3rdparty";
-      rev    = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d";
-      sha256 = "0r9fam8dplyqqsd3qgpnnfgf9l7lj44di19rxwbm8mxiw0rlcdvy";
-    };
-    files = {
-      "vgg_generated_48.i"  = "e8d0dcd54d1bcfdc29203d011a797179";
-      "vgg_generated_64.i"  = "7126a5d9a8884ebca5aea5d63d677225";
-      "vgg_generated_80.i"  = "7cd47228edec52b6d82f46511af325c5";
-      "vgg_generated_120.i" = "151805e03568c9f490a5e3a872777b75";
-    };
-    dst = ".cache/xfeatures2d/vgg";
-  };
-
-  # See opencv_contrib/modules/xfeatures2d/cmake/download_boostdesc.cmake
-  boostdesc = {
-    src = fetchFromGitHub {
-      owner  = "opencv";
-      repo   = "opencv_3rdparty";
-      rev    = "34e4206aef44d50e6bbcd0ab06354b52e7466d26";
-      sha256 = "13yig1xhvgghvxspxmdidss5lqiikpjr0ddm83jsi0k85j92sn62";
-    };
-    files = {
-      "boostdesc_bgm.i"          = "0ea90e7a8f3f7876d450e4149c97c74f";
-      "boostdesc_bgm_bi.i"       = "232c966b13651bd0e46a1497b0852191";
-      "boostdesc_bgm_hd.i"       = "324426a24fa56ad9c5b8e3e0b3e5303e";
-      "boostdesc_binboost_064.i" = "202e1b3e9fec871b04da31f7f016679f";
-      "boostdesc_binboost_128.i" = "98ea99d399965c03d555cef3ea502a0b";
-      "boostdesc_binboost_256.i" = "e6dcfa9f647779eb1ce446a8d759b6ea";
-      "boostdesc_lbgm.i"         = "0ae0675534aa318d9668f2a179c2a052";
-    };
-    dst = ".cache/xfeatures2d/boostdesc";
-  };
-
-  # See opencv_contrib/modules/face/CMakeLists.txt
-  face = {
-    src = fetchFromGitHub {
-      owner  = "opencv";
-      repo   = "opencv_3rdparty";
-      rev    = "8afa57abc8229d611c4937165d20e2a2d9fc5a12";
-      sha256 = "061lsvqdidq9xa2hwrcvwi9ixflr2c2lfpc8drr159g68zi8bp4v";
-    };
-    files = {
-      "face_landmark_model.dat" = "7505c44ca4eb54b4ab1e4777cb96ac05";
-    };
-    dst = ".cache/data";
-  };
-
-  # See opencv/cmake/OpenCVDownload.cmake
-  installExtraFiles = extra : with lib; ''
-    mkdir -p "${extra.dst}"
-  '' + concatStrings (mapAttrsToList (name : md5 : ''
-    ln -s "${extra.src}/${name}" "${extra.dst}/${md5}-${name}"
-  '') extra.files);
-
-  opencvFlag = name: enabled: "-DWITH_${name}=${printEnabled enabled}";
-
-  printEnabled = enabled : if enabled then "ON" else "OFF";
-in
-
-stdenv.mkDerivation {
-  pname = "opencv";
-  inherit version src;
-
-  postUnpack = lib.optionalString buildContrib ''
-    cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/opencv_contrib"
-  '';
-
-  # Ensures that we use the system OpenEXR rather than the vendored copy of the source included with OpenCV.
-  patches = [
-    ./cmake-don-t-use-OpenCVFindOpenEXR.patch
-  ];
-
-  # This prevents cmake from using libraries in impure paths (which
-  # causes build failure on non NixOS)
-  # Also, work around https://github.com/NixOS/nixpkgs/issues/26304 with
-  # what appears to be some stray headers in dnn/misc/tensorflow
-  # in contrib when generating the Python bindings:
-  postPatch = ''
-    sed -i '/Add these standard paths to the search paths for FIND_LIBRARY/,/^\s*$/{d}' CMakeLists.txt
-    sed -i -e 's|if len(decls) == 0:|if len(decls) == 0 or "opencv2/" not in hdr:|' ./modules/python/src2/gen2.py
-  '';
-
-  preConfigure =
-    lib.optionalString enableIpp (installExtraFiles ippicv) + (
-    lib.optionalString buildContrib ''
-      cmakeFlagsArray+=("-DOPENCV_EXTRA_MODULES_PATH=$NIX_BUILD_TOP/opencv_contrib")
-
-      ${installExtraFiles vgg}
-      ${installExtraFiles boostdesc}
-      ${installExtraFiles face}
-    '');
-
-  postConfigure = ''
-    [ -e modules/core/version_string.inc ]
-    echo '"(build info elided)"' > modules/core/version_string.inc
-  '';
-
-  buildInputs =
-       [ zlib pcre hdf5 glog boost gflags ]
-    ++ lib.optional useSystemProtobuf protobuf_21
-    ++ lib.optional enablePython pythonPackages.python
-    ++ lib.optional enableGtk2 gtk2
-    ++ lib.optional enableGtk3 gtk3
-    ++ lib.optional enableJPEG libjpeg
-    ++ lib.optional enablePNG libpng
-    ++ lib.optional enableTIFF libtiff
-    ++ lib.optional enableWebP libwebp
-    ++ lib.optionals enableEXR [ openexr_3 ]
-    ++ lib.optional enableFfmpeg ffmpeg
-    ++ lib.optionals (enableFfmpeg && stdenv.isDarwin)
-                     [ VideoDecodeAcceleration bzip2 ]
-    ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
-    ++ lib.optional enableOvis ogre
-    ++ lib.optional enableGPhoto2 libgphoto2
-    ++ lib.optional enableDC1394 libdc1394
-    ++ lib.optional enableEigen eigen
-    ++ lib.optional enableOpenblas openblas
-    # There is seemingly no compile-time flag for Tesseract.  It's
-    # simply enabled automatically if contrib is built, and it detects
-    # tesseract & leptonica.
-    ++ lib.optionals enableTesseract [ tesseract leptonica ]
-    ++ lib.optional enableTbb tbb
-    ++ lib.optionals stdenv.isDarwin [
-      bzip2 AVFoundation Cocoa VideoDecodeAcceleration CoreMedia MediaToolbox Accelerate
-    ]
-    ++ lib.optionals enableDocs [ doxygen graphviz-nox ];
-
-  propagatedBuildInputs = lib.optional enablePython pythonPackages.numpy
-    ++ lib.optional enableCuda cudatoolkit;
-
-  nativeBuildInputs = [ cmake pkg-config unzip ];
-
-  # Configure can't find the library without this.
-  OpenBLAS_HOME = lib.optionalString enableOpenblas openblas;
-
-  cmakeFlags = [
-    "-DWITH_OPENMP=ON"
-    "-DBUILD_PROTOBUF=${printEnabled (!useSystemProtobuf)}"
-    "-DPROTOBUF_UPDATE_FILES=${printEnabled useSystemProtobuf}"
-    "-DOPENCV_ENABLE_NONFREE=${printEnabled enableUnfree}"
-    "-DBUILD_TESTS=OFF"
-    "-DBUILD_PERF_TESTS=OFF"
-    "-DBUILD_DOCS=${printEnabled enableDocs}"
-    (opencvFlag "IPP" enableIpp)
-    (opencvFlag "TIFF" enableTIFF)
-    (opencvFlag "WEBP" enableWebP)
-    (opencvFlag "JPEG" enableJPEG)
-    (opencvFlag "PNG" enablePNG)
-    (opencvFlag "OPENEXR" enableEXR)
-    (opencvFlag "CUDA" enableCuda)
-    (opencvFlag "CUBLAS" enableCuda)
-    (opencvFlag "TBB" enableTbb)
-  ] ++ lib.optionals enableCuda [
-    "-DCUDA_FAST_MATH=ON"
-    "-DCUDA_HOST_COMPILER=${backendStdenv.cc}/bin/cc"
-    "-DCUDA_NVCC_FLAGS=--expt-relaxed-constexpr"
-    "-DCUDA_ARCH_BIN=${lib.concatStringsSep ";" cudaCapabilities}"
-    "-DCUDA_ARCH_PTX=${lib.last cudaCapabilities}"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DWITH_OPENCL=OFF"
-    "-DWITH_LAPACK=OFF"
-
-    # Disable unnecessary vendoring that's enabled by default only for Darwin.
-    # Note that the opencvFlag feature flags listed above still take
-    # precedence, so we can safely list everything here.
-    "-DBUILD_ZLIB=OFF"
-    "-DBUILD_TIFF=OFF"
-    "-DBUILD_JASPER=OFF"
-    "-DBUILD_JPEG=OFF"
-    "-DBUILD_PNG=OFF"
-    "-DBUILD_WEBP=OFF"
-  ] ++ lib.optionals enablePython [
-    "-DOPENCV_SKIP_PYTHON_LOADER=ON"
-  ] ++ lib.optionals enableEigen [
-    # Autodetection broken by https://github.com/opencv/opencv/pull/13337
-    "-DEIGEN_INCLUDE_PATH=${eigen}/include/eigen3"
-  ];
-
-  postBuild = lib.optionalString enableDocs ''
-    make doxygen
-  '';
-
-  # By default $out/lib/pkgconfig/opencv.pc looks something like this:
-  #
-  #   prefix=/nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1
-  #   exec_prefix=${prefix}
-  #   libdir=${exec_prefix}//nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1/lib
-  #   ...
-  #   Libs: -L${exec_prefix}//nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1/lib ...
-  #
-  # Note that ${exec_prefix} is set to $out but that $out is also appended to
-  # ${exec_prefix}. This causes linker errors in downstream packages so we strip
-  # of $out after the ${exec_prefix} prefix:
-  postInstall = ''
-    sed -i "s|{exec_prefix}/$out|{exec_prefix}|" \
-      "$out/lib/pkgconfig/opencv.pc"
-  '';
-
-  hardeningDisable = [ "bindnow" "relro" ];
-
-  passthru = lib.optionalAttrs enablePython { pythonPath = []; } // {
-    tests = lib.optionalAttrs enableCuda {
-      no-libstdcxx-errors = callPackage ./libstdcxx-test.nix { attrName = "opencv3"; };
-    };
-  };
-
-  meta = with lib; {
-    description = "Open Computer Vision Library with more than 500 algorithms";
-    homepage = "https://opencv.org/";
-    # OpenCV 3 won't build with CUDA 12+
-    broken = enableCuda && cudaPackages.cudaAtLeast "12";
-    license = with licenses; if enableUnfree then unfree else bsd3;
-    maintainers = with maintainers; [mdaiter basvandijk];
-    platforms = with platforms; linux ++ darwin;
-  };
-}
diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix
index a4961163c9ad3..3d5c0ac87067c 100644
--- a/pkgs/development/libraries/opencv/4.x.nix
+++ b/pkgs/development/libraries/opencv/4.x.nix
@@ -26,7 +26,7 @@
 , libtiff
 , enableWebP ? true
 , libwebp
-, enableEXR ? !stdenv.isDarwin
+, enableEXR ? !stdenv.hostPlatform.isDarwin
 , openexr
 , ilmbase
 , enableJPEG2000 ? true
@@ -35,7 +35,7 @@
 , eigen
 , enableBlas ? true
 , blas
-, enableVA ? !stdenv.isDarwin
+, enableVA ? !stdenv.hostPlatform.isDarwin
 , libva
 , enableContrib ? true
 
@@ -97,6 +97,12 @@
 }@inputs:
 
 let
+  inherit (lib.attrsets) mapAttrsToList optionalAttrs;
+  inherit (lib.lists) last optionals;
+  inherit (lib.meta) getExe;
+  inherit (lib.strings) cmakeBool cmakeFeature cmakeOptionType concatStrings concatStringsSep optionalString;
+  inherit (lib.trivial) flip;
+
   version = "4.9.0";
 
   # It's necessary to consistently use backendStdenv when building with CUDA
@@ -228,26 +234,23 @@ let
   };
 
   # See opencv/cmake/OpenCVDownload.cmake
-  installExtraFiles = extra: with lib; ''
-    mkdir -p "${extra.dst}"
-  '' + concatStrings (flip mapAttrsToList extra.files (name: md5: ''
-    ln -s "${extra.src}/${name}" "${extra.dst}/${md5}-${name}"
+  installExtraFiles = {dst, files, src, ...}: ''
+    mkdir -p "${dst}"
+  '' + concatStrings (flip mapAttrsToList files (name: md5: ''
+    ln -s "${src}/${name}" "${dst}/${md5}-${name}"
   ''));
-  installExtraFile = extra: ''
-    mkdir -p "${extra.dst}"
-    ln -s "${extra.src}" "${extra.dst}/${extra.md5}-${extra.name}"
+  installExtraFile = {dst, md5, name, src, ...}: ''
+    mkdir -p "${dst}"
+    ln -s "${src}" "${dst}/${md5}-${name}"
   '';
 
-  opencvFlag = name: enabled: "-DWITH_${name}=${printEnabled enabled}";
-
-  printEnabled = enabled: if enabled then "ON" else "OFF";
   withOpenblas = (enableBlas && blas.provider.pname == "openblas");
   #multithreaded openblas conflicts with opencv multithreading, which manifest itself in hung tests
   #https://github.com/OpenMathLib/OpenBLAS/wiki/Faq/4bded95e8dc8aadc70ce65267d1093ca7bdefc4c#multi-threaded
   openblas_ = blas.provider.override { singleThreaded = true; };
 
-  inherit (cudaPackages) cudaFlags cudaVersion;
-  inherit (cudaFlags) cudaCapabilities;
+  inherit (cudaPackages) cudaFlags;
+  inherit (cudaFlags) cmakeCudaArchitecturesString cudaCapabilities;
 
 in
 
@@ -258,20 +261,21 @@ effectiveStdenv.mkDerivation {
   outputs = [
     "out"
     "cxxdev"
-  ] ++ lib.optionals (runAccuracyTests || runPerformanceTests) [
+  ] ++ optionals (runAccuracyTests || runPerformanceTests) [
     "package_tests"
   ];
   cudaPropagateToOutput = "cxxdev";
 
-  postUnpack = lib.optionalString buildContrib ''
+  postUnpack = optionalString buildContrib ''
     cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/source/opencv_contrib"
   '';
 
   # Ensures that we use the system OpenEXR rather than the vendored copy of the source included with OpenCV.
   patches = [
     ./cmake-don-t-use-OpenCVFindOpenEXR.patch
-  ] ++ lib.optionals enableContrib [
-  ] ++ lib.optional enableCuda ./cuda_opt_flow.patch;
+  ] ++ optionals enableCuda [
+    ./cuda_opt_flow.patch
+  ];
 
   # This prevents cmake from using libraries in impure paths (which
   # causes build failure on non NixOS)
@@ -281,8 +285,8 @@ effectiveStdenv.mkDerivation {
 
   preConfigure =
     installExtraFile ade +
-    lib.optionalString enableIpp (installExtraFiles ippicv) + (
-      lib.optionalString buildContrib ''
+    optionalString enableIpp (installExtraFiles ippicv) + (
+      optionalString buildContrib ''
         cmakeFlagsArray+=("-DOPENCV_EXTRA_MODULES_PATH=$NIX_BUILD_TOP/source/opencv_contrib")
 
         ${installExtraFiles vgg}
@@ -304,63 +308,63 @@ effectiveStdenv.mkDerivation {
     pcre2
     protobuf_21
     zlib
-  ] ++ lib.optionals enablePython [
+  ] ++ optionals enablePython [
     pythonPackages.python
-  ] ++ lib.optionals (effectiveStdenv.buildPlatform == effectiveStdenv.hostPlatform) [
+  ] ++ optionals (effectiveStdenv.buildPlatform == effectiveStdenv.hostPlatform) [
     hdf5
-  ] ++ lib.optionals enableGtk2 [
+  ] ++ optionals enableGtk2 [
     gtk2
-  ] ++ lib.optionals enableGtk3 [
+  ] ++ optionals enableGtk3 [
     gtk3
-  ] ++ lib.optionals enableVtk [
+  ] ++ optionals enableVtk [
     vtk
-  ] ++ lib.optionals enableJPEG [
+  ] ++ optionals enableJPEG [
     libjpeg
-  ] ++ lib.optionals enablePNG [
+  ] ++ optionals enablePNG [
     libpng
-  ] ++ lib.optionals enableTIFF [
+  ] ++ optionals enableTIFF [
     libtiff
-  ] ++ lib.optionals enableWebP [
+  ] ++ optionals enableWebP [
     libwebp
-  ] ++ lib.optionals enableEXR [
+  ] ++ optionals enableEXR [
     openexr
     ilmbase
-  ] ++ lib.optionals enableJPEG2000 [
+  ] ++ optionals enableJPEG2000 [
     openjpeg
-  ] ++ lib.optionals enableFfmpeg [
+  ] ++ optionals enableFfmpeg [
     ffmpeg
-  ] ++ lib.optionals (enableFfmpeg && effectiveStdenv.isDarwin) [
+  ] ++ optionals (enableFfmpeg && effectiveStdenv.hostPlatform.isDarwin) [
     bzip2
     VideoDecodeAcceleration
-  ] ++ lib.optionals (enableGStreamer && effectiveStdenv.isLinux) (with gst_all_1; [
+  ] ++ optionals (enableGStreamer && effectiveStdenv.hostPlatform.isLinux) [
     elfutils
-    gst-plugins-base
-    gst-plugins-good
-    gstreamer
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+    gst_all_1.gstreamer
     libunwind
     orc
     zstd
-  ]) ++ lib.optionals enableOvis [
+  ] ++ optionals enableOvis [
     ogre
-  ] ++ lib.optionals enableGPhoto2 [
+  ] ++ optionals enableGPhoto2 [
     libgphoto2
-  ] ++ lib.optionals enableDC1394 [
+  ] ++ optionals enableDC1394 [
     libdc1394
-  ] ++ lib.optionals enableEigen [
+  ] ++ optionals enableEigen [
     eigen
-  ] ++ lib.optionals enableVA [
+  ] ++ optionals enableVA [
     libva
-  ] ++ lib.optionals enableBlas [
+  ] ++ optionals enableBlas [
     blas.provider
-  ] ++ lib.optionals enableTesseract [
+  ] ++ optionals enableTesseract [
     # There is seemingly no compile-time flag for Tesseract.  It's
     # simply enabled automatically if contrib is built, and it detects
     # tesseract & leptonica.
     tesseract
     leptonica
-  ] ++ lib.optionals enableTbb [
+  ] ++ optionals enableTbb [
     tbb
-  ] ++ lib.optionals effectiveStdenv.isDarwin [
+  ] ++ optionals effectiveStdenv.hostPlatform.isDarwin [
     bzip2
     AVFoundation
     Cocoa
@@ -368,85 +372,78 @@ effectiveStdenv.mkDerivation {
     CoreMedia
     MediaToolbox
     Accelerate
-  ] ++ lib.optionals enableDocs [
+  ] ++ optionals enableDocs [
     doxygen
     graphviz-nox
-  ] ++ lib.optionals enableCuda (with cudaPackages; [
-    cuda_cudart.lib
-    cuda_cudart.dev
-    cuda_cccl.dev # <thrust/*>
-    libnpp.dev # npp.h
-    libnpp.lib
-    libnpp.static
+  ] ++ optionals enableCuda [
+    cudaPackages.cuda_cudart
+    cudaPackages.cuda_cccl # <thrust/*>
+    cudaPackages.libnpp # npp.h
     nvidia-optical-flow-sdk
-  ] ++ lib.optionals enableCublas [
+  ] ++ optionals enableCublas [
     # May start using the default $out instead once
     # https://github.com/NixOS/nixpkgs/issues/271792
     # has been addressed
-    libcublas.static
-    libcublas.lib
-    libcublas.dev # cublas_v2.h
-  ] ++ lib.optionals enableCudnn [
-    cudnn.dev # cudnn.h
-    cudnn.lib
-    cudnn.static
-  ] ++ lib.optionals enableCufft [
-    libcufft.dev # cufft.h
-    libcufft.lib
-    libcufft.static
-  ]);
-
-  propagatedBuildInputs = lib.optionals enablePython [ pythonPackages.numpy ];
-
-  nativeBuildInputs = [ cmake pkg-config unzip ]
-  ++ lib.optionals enablePython [
+    cudaPackages.libcublas # cublas_v2.h
+  ] ++ optionals enableCudnn [
+    cudaPackages.cudnn # cudnn.h
+  ] ++ optionals enableCufft [
+    cudaPackages.libcufft # cufft.h
+  ];
+
+  propagatedBuildInputs = optionals enablePython [ pythonPackages.numpy ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    unzip
+  ] ++ optionals enablePython [
     pythonPackages.pip
     pythonPackages.wheel
     pythonPackages.setuptools
-  ] ++ lib.optionals enableCuda [
+  ] ++ optionals enableCuda [
     cudaPackages.cuda_nvcc
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString enableEXR "-I${ilmbase.dev}/include/OpenEXR";
+  env.NIX_CFLAGS_COMPILE = optionalString enableEXR "-I${ilmbase.dev}/include/OpenEXR";
 
   # Configure can't find the library without this.
-  OpenBLAS_HOME = lib.optionalString withOpenblas openblas_.dev;
-  OpenBLAS = lib.optionalString withOpenblas openblas_;
+  OpenBLAS_HOME = optionalString withOpenblas openblas_.dev;
+  OpenBLAS = optionalString withOpenblas openblas_;
 
   cmakeFlags = [
-    "-DOPENCV_GENERATE_PKGCONFIG=ON"
-    "-DWITH_OPENMP=ON"
-    "-DBUILD_PROTOBUF=OFF"
-    "-DProtobuf_PROTOC_EXECUTABLE=${lib.getExe buildPackages.protobuf_21}"
-    "-DPROTOBUF_UPDATE_FILES=ON"
-    "-DOPENCV_ENABLE_NONFREE=${printEnabled enableUnfree}"
-    "-DBUILD_TESTS=${printEnabled runAccuracyTests}"
-    "-DBUILD_PERF_TESTS=${printEnabled runPerformanceTests}"
-    "-DCMAKE_SKIP_BUILD_RPATH=ON"
-    "-DBUILD_DOCS=${printEnabled enableDocs}"
+    (cmakeBool "OPENCV_GENERATE_PKGCONFIG" true)
+    (cmakeBool "WITH_OPENMP" true)
+    (cmakeBool "BUILD_PROTOBUF" false)
+    (cmakeOptionType "path" "Protobuf_PROTOC_EXECUTABLE" (getExe buildPackages.protobuf_21))
+    (cmakeBool "PROTOBUF_UPDATE_FILES" true)
+    (cmakeBool "OPENCV_ENABLE_NONFREE" enableUnfree)
+    (cmakeBool "BUILD_TESTS" runAccuracyTests)
+    (cmakeBool "BUILD_PERF_TESTS" runPerformanceTests)
+    (cmakeBool "CMAKE_SKIP_BUILD_RPATH" true)
+    (cmakeBool "BUILD_DOCS" enableDocs)
     # "OpenCV disables pkg-config to avoid using of host libraries. Consider using PKG_CONFIG_LIBDIR to specify target SYSROOT"
     # but we have proper separation of build and host libs :), fixes cross
-    "-DOPENCV_ENABLE_PKG_CONFIG=ON"
-    (opencvFlag "IPP" enableIpp)
-    (opencvFlag "TIFF" enableTIFF)
-    (opencvFlag "WEBP" enableWebP)
-    (opencvFlag "JPEG" enableJPEG)
-    (opencvFlag "PNG" enablePNG)
-    (opencvFlag "OPENEXR" enableEXR)
-    (opencvFlag "OPENJPEG" enableJPEG2000)
-    "-DWITH_JASPER=OFF" # OpenCV falls back to a vendored copy of Jasper when OpenJPEG is disabled
-    (opencvFlag "TBB" enableTbb)
+    (cmakeBool "OPENCV_ENABLE_PKG_CONFIG" true)
+    (cmakeBool "WITH_IPP" enableIpp)
+    (cmakeBool "WITH_TIFF" enableTIFF)
+    (cmakeBool "WITH_WEBP" enableWebP)
+    (cmakeBool "WITH_JPEG" enableJPEG)
+    (cmakeBool "WITH_PNG" enablePNG)
+    (cmakeBool "WITH_OPENEXR" enableEXR)
+    (cmakeBool "WITH_OPENJPEG" enableJPEG2000)
+    (cmakeBool "WITH_JASPER" false) # OpenCV falls back to a vendored copy of Jasper when OpenJPEG is disabled
+    (cmakeBool "WITH_TBB" enableTbb)
 
     # CUDA options
-    (opencvFlag "CUDA" enableCuda)
-    (opencvFlag "CUDA_FAST_MATH" enableCuda)
-    (opencvFlag "CUBLAS" enableCublas)
-    (opencvFlag "CUDNN" enableCudnn)
-    (opencvFlag "CUFFT" enableCufft)
+    (cmakeBool "WITH_CUDA" enableCuda)
+    (cmakeBool "WITH_CUBLAS" enableCublas)
+    (cmakeBool "WITH_CUDNN" enableCudnn)
+    (cmakeBool "WITH_CUFFT" enableCufft)
 
     # LTO options
-    (opencvFlag "ENABLE_LTO" enableLto)
-    (opencvFlag "ENABLE_THIN_LTO" (
+    (cmakeBool "ENABLE_LTO" enableLto)
+    (cmakeBool "ENABLE_THIN_LTO" (
       enableLto && (
         # Only clang supports thin LTO, so we must either be using clang through the effectiveStdenv,
         effectiveStdenv.cc.isClang ||
@@ -454,51 +451,53 @@ effectiveStdenv.mkDerivation {
           (enableCuda && effectiveStdenv.cc.isClang)
       )
     ))
-  ] ++ lib.optionals enableCuda [
-    "-DCUDA_FAST_MATH=ON"
-    "-DCUDA_NVCC_FLAGS=--expt-relaxed-constexpr"
+  ] ++ optionals enableCuda [
+    (cmakeBool "CUDA_FAST_MATH" true)
+    (cmakeFeature "CUDA_NVCC_FLAGS" "--expt-relaxed-constexpr")
 
     # OpenCV respects at least three variables:
     # -DCUDA_GENERATION takes a single arch name, e.g. Volta
     # -DCUDA_ARCH_BIN takes a semi-colon separated list of real arches, e.g. "8.0;8.6"
     # -DCUDA_ARCH_PTX takes the virtual arch, e.g. "8.6"
-    "-DCUDA_ARCH_BIN=${lib.concatStringsSep ";" cudaCapabilities}"
-    "-DCUDA_ARCH_PTX=${lib.last cudaCapabilities}"
+    (cmakeFeature "CUDA_ARCH_BIN" cmakeCudaArchitecturesString)
+    (cmakeFeature "CUDA_ARCH_PTX" (last cudaCapabilities))
 
-    "-DNVIDIA_OPTICAL_FLOW_2_0_HEADERS_PATH=${nvidia-optical-flow-sdk}"
-  ] ++ lib.optionals effectiveStdenv.isDarwin [
-    "-DWITH_OPENCL=OFF"
-    "-DWITH_LAPACK=OFF"
+    (cmakeOptionType "path" "NVIDIA_OPTICAL_FLOW_2_0_HEADERS_PATH" nvidia-optical-flow-sdk.outPath)
+  ] ++ optionals effectiveStdenv.hostPlatform.isDarwin [
+    (cmakeBool "WITH_OPENCL" false)
+    (cmakeBool "WITH_LAPACK" false)
 
     # Disable unnecessary vendoring that's enabled by default only for Darwin.
     # Note that the opencvFlag feature flags listed above still take
     # precedence, so we can safely list everything here.
-    "-DBUILD_ZLIB=OFF"
-    "-DBUILD_TIFF=OFF"
-    "-DBUILD_OPENJPEG=OFF"
-    "-DBUILD_JASPER=OFF"
-    "-DBUILD_JPEG=OFF"
-    "-DBUILD_PNG=OFF"
-    "-DBUILD_WEBP=OFF"
-  ] ++ lib.optionals (!effectiveStdenv.isDarwin) [
-    "-DOPENCL_LIBRARY=${ocl-icd}/lib/libOpenCL.so"
-  ] ++ lib.optionals enablePython [
-    "-DOPENCV_SKIP_PYTHON_LOADER=ON"
-  ] ++ lib.optionals (enabledModules != [ ]) [
-    "-DBUILD_LIST=${lib.concatStringsSep "," enabledModules}"
+    (cmakeBool "BUILD_ZLIB" false)
+    (cmakeBool "BUILD_TIFF" false)
+    (cmakeBool "BUILD_OPENJPEG" false)
+    (cmakeBool "BUILD_JASPER" false)
+    (cmakeBool "BUILD_JPEG" false)
+    (cmakeBool "BUILD_PNG" false)
+    (cmakeBool "BUILD_WEBP" false)
+  ] ++ optionals (!effectiveStdenv.hostPlatform.isDarwin) [
+    (cmakeOptionType "path" "OPENCL_LIBRARY" "${ocl-icd}/lib/libOpenCL.so")
+  ] ++ optionals enablePython [
+    (cmakeBool "OPENCV_SKIP_PYTHON_LOADER" true)
+  ] ++ optionals (enabledModules != [ ]) [
+    (cmakeFeature "BUILD_LIST" (concatStringsSep "," enabledModules))
   ];
 
-  postBuild = lib.optionalString enableDocs ''
+  postBuild = optionalString enableDocs ''
     make doxygen
   '';
 
   preInstall =
-    lib.optionalString (runAccuracyTests || runPerformanceTests) ''
-    mkdir $package_tests
-    cp -R $src/samples $package_tests/
-    ''
-    + lib.optionalString runAccuracyTests "mv ./bin/*test* $package_tests/ \n"
-    + lib.optionalString runPerformanceTests "mv ./bin/*perf* $package_tests/";
+    optionalString (runAccuracyTests || runPerformanceTests) ''
+      mkdir $package_tests
+      cp -R $src/samples $package_tests/
+    '' + optionalString runAccuracyTests ''
+      mv ./bin/*test* $package_tests/
+    '' + optionalString runPerformanceTests ''
+      mv ./bin/*perf* $package_tests/
+    '';
 
   # By default $out/lib/pkgconfig/opencv4.pc looks something like this:
   #
@@ -519,12 +518,23 @@ effectiveStdenv.mkDerivation {
   ''
   # fix deps not progagating from opencv4.cxxdev if cuda is disabled
   # see https://github.com/NixOS/nixpkgs/issues/276691
-  + lib.optionalString (!enableCuda) ''
+  + optionalString (!enableCuda) ''
     mkdir -p "$cxxdev/nix-support"
     echo "''${!outputDev}" >> "$cxxdev/nix-support/propagated-build-inputs"
   ''
+  # remove the requirement that the exact same version of CUDA is used in packages
+  # consuming OpenCV's CMakes files
+  + optionalString enableCuda ''
+    substituteInPlace "$out/lib/cmake/opencv4/OpenCVConfig.cmake" \
+      --replace-fail \
+        'find_host_package(CUDA ''${OpenCV_CUDA_VERSION} EXACT REQUIRED)' \
+        'find_host_package(CUDA REQUIRED)' \
+      --replace-fail \
+        'message(FATAL_ERROR "OpenCV static library was compiled with CUDA' \
+        'message("OpenCV static library was compiled with CUDA'
+  ''
   # install python distribution information, so other packages can `import opencv`
-  + lib.optionalString enablePython ''
+  + optionalString enablePython ''
     pushd $NIX_BUILD_TOP/$sourceRoot/modules/python/package
     python -m pip wheel --verbose --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist .
 
@@ -545,24 +555,24 @@ effectiveStdenv.mkDerivation {
     tests = {
       inherit (gst_all_1) gst-plugins-bad;
     }
-    // lib.optionalAttrs (!effectiveStdenv.isDarwin) { inherit qimgv; }
-    // lib.optionalAttrs (!enablePython) { pythonEnabled = pythonPackages.opencv4; }
-    // lib.optionalAttrs (effectiveStdenv.buildPlatform != "x86_64-darwin") {
+    // optionalAttrs (!effectiveStdenv.hostPlatform.isDarwin) { inherit qimgv; }
+    // optionalAttrs (!enablePython) { pythonEnabled = pythonPackages.opencv4; }
+    // optionalAttrs (effectiveStdenv.buildPlatform != "x86_64-darwin") {
       opencv4-tests = callPackage ./tests.nix {
         inherit enableGStreamer enableGtk2 enableGtk3 runAccuracyTests runPerformanceTests testDataSrc;
         inherit opencv4;
       };
     }
-    // lib.optionalAttrs (enableCuda) {
+    // optionalAttrs (enableCuda) {
       no-libstdcxx-errors = callPackage ./libstdcxx-test.nix { attrName = "opencv4"; };
     };
-  } // lib.optionalAttrs enablePython { pythonPath = [ ]; };
+  } // optionalAttrs enablePython { pythonPath = [ ]; };
 
-  meta = with lib; {
+  meta = {
     description = "Open Computer Vision Library with more than 500 algorithms";
     homepage = "https://opencv.org/";
-    license = with licenses; if enableUnfree then unfree else bsd3;
-    maintainers = with maintainers; [ basvandijk ];
-    platforms = with platforms; linux ++ darwin;
+    license = if enableUnfree then lib.licenses.unfree else lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ basvandijk ];
+    platforms = with lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/opencv/default.nix b/pkgs/development/libraries/opencv/default.nix
deleted file mode 100644
index 06cc02c47c948..0000000000000
--- a/pkgs/development/libraries/opencv/default.nix
+++ /dev/null
@@ -1,84 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, unzip
-, zlib
-, enableGtk2 ? false, gtk2
-, enableJPEG ? true, libjpeg
-, enablePNG ? true, libpng
-, enableTIFF ? true, libtiff
-, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
-, enableFfmpeg ? false, ffmpeg
-, enableGStreamer ? false, gst_all_1
-, enableEigen ? true, eigen
-, enableUnfree ? false
-, AVFoundation, Cocoa, QTKit, Accelerate
-}:
-
-let
-  opencvFlag = name: enabled: "-DWITH_${name}=${if enabled then "ON" else "OFF"}";
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "opencv";
-  version = "2.4.13.7";
-
-  src = fetchFromGitHub {
-    owner = "opencv";
-    repo = "opencv";
-    rev = version;
-    sha256 = "062js7zhh4ixi2wk61wyi23qp9zsk5vw24iz2i5fab2hp97y5zq3";
-  };
-
-  patches =
-    [ # Don't include a copy of the CMake status output in the
-      # build. This causes a runtime dependency on GCC.
-      ./no-build-info.patch
-    ];
-
-  # This prevents cmake from using libraries in impure paths (which causes build failure on non NixOS)
-  postPatch = ''
-    sed -i '/Add these standard paths to the search paths for FIND_LIBRARY/,/^\s*$/{d}' CMakeLists.txt
-  '';
-
-  outputs = [ "out" "dev" ];
-
-  buildInputs =
-       [ zlib ]
-    ++ lib.optional enableGtk2 gtk2
-    ++ lib.optional enableJPEG libjpeg
-    ++ lib.optional enablePNG libpng
-    ++ lib.optional enableTIFF libtiff
-    ++ lib.optionals enableEXR [ openexr ilmbase ]
-    ++ lib.optional enableFfmpeg ffmpeg
-    ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
-    ++ lib.optional enableEigen eigen
-    ++ lib.optionals stdenv.isDarwin [ AVFoundation Cocoa QTKit Accelerate ]
-    ;
-
-  nativeBuildInputs = [ cmake pkg-config unzip ];
-
-  env.NIX_CFLAGS_COMPILE = lib.optionalString enableEXR "-I${ilmbase.dev}/include/OpenEXR";
-
-  cmakeFlags = [
-    (opencvFlag "TIFF" enableTIFF)
-    (opencvFlag "JPEG" enableJPEG)
-    (opencvFlag "PNG" enablePNG)
-    (opencvFlag "OPENEXR" enableEXR)
-    (opencvFlag "GSTREAMER" enableGStreamer)
-  ] ++ lib.optional (!enableUnfree) "-DBUILD_opencv_nonfree=OFF";
-
-  hardeningDisable = [ "bindnow" "relro" ];
-
-  # Fix pkg-config file that gets broken with multiple outputs
-  postFixup = ''
-    sed -i $dev/lib/pkgconfig/opencv.pc -e "s|includedir_old=.*|includedir_old=$dev/include/opencv|"
-    sed -i $dev/lib/pkgconfig/opencv.pc -e "s|includedir_new=.*|includedir_new=$dev/include|"
-  '';
-
-  meta = with lib; {
-    description = "Open Computer Vision Library with more than 500 algorithms";
-    homepage = "https://opencv.org/";
-    license = if enableUnfree then licenses.unfree else licenses.bsd3;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/opencv/no-build-info.patch b/pkgs/development/libraries/opencv/no-build-info.patch
deleted file mode 100644
index 4ee9701583a06..0000000000000
--- a/pkgs/development/libraries/opencv/no-build-info.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ru -x '*~' opencv-2.4.13-orig/modules/core/src/system.cpp opencv-2.4.13/modules/core/src/system.cpp
---- opencv-2.4.13-orig/modules/core/src/system.cpp	1970-01-01 01:00:01.000000000 +0100
-+++ opencv-2.4.13/modules/core/src/system.cpp	2016-10-02 18:44:53.674181762 +0200
-@@ -442,9 +442,7 @@
- 
- const std::string& getBuildInformation()
- {
--    static std::string build_info =
--#include "version_string.inc"
--    ;
-+    static std::string build_info = "(build info elided)";
-     return build_info;
- }
- 
diff --git a/pkgs/development/libraries/opencv/tests.nix b/pkgs/development/libraries/opencv/tests.nix
index d1966b1a4aa82..dec10c1b13ab8 100644
--- a/pkgs/development/libraries/opencv/tests.nix
+++ b/pkgs/development/libraries/opencv/tests.nix
@@ -26,7 +26,7 @@ let
     "video"
     #"videoio" # - a lot of GStreamer warnings and failed tests
     #"dnn" #- some caffe tests failed, probably because github workflow also downloads additional models
-  ] ++ lib.optionals (!stdenv.isAarch64 && enableGStreamer) [ "gapi" ]
+  ] ++ lib.optionals (!stdenv.hostPlatform.isAarch64 && enableGStreamer) [ "gapi" ]
   ++ lib.optionals (enableGtk2 || enableGtk3) [ "highgui" ];
   perfTestNames = [
     "calib3d"
@@ -38,8 +38,8 @@ let
     "photo"
     "stitching"
     "video"
-  ] ++ lib.optionals (!stdenv.isAarch64 && enableGStreamer) [ "gapi" ];
-  testRunner = lib.optionalString (!stdenv.isDarwin) "${lib.getExe xvfb-run} -a ";
+  ] ++ lib.optionals (!stdenv.hostPlatform.isAarch64 && enableGStreamer) [ "gapi" ];
+  testRunner = lib.optionalString (!stdenv.hostPlatform.isDarwin) "${lib.getExe xvfb-run} -a ";
   testsPreparation = ''
     touch $out
     # several tests want a write access, so we have to copy files
diff --git a/pkgs/development/libraries/opendbx/default.nix b/pkgs/development/libraries/opendbx/default.nix
index 04ffde29daa02..ba66ba5be18a9 100644
--- a/pkgs/development/libraries/opendbx/default.nix
+++ b/pkgs/development/libraries/opendbx/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     export CPPFLAGS="-I${getDev libmysqlclient}/include/mysql"
-    export LDFLAGS="-L${libmysqlclient}/lib/mysql -L${postgresql}/lib"
+    export LDFLAGS="-L${libmysqlclient}/lib/mysql"
     configureFlagsArray=(--with-backends="mysql pgsql sqlite3")
   '';
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "Extremely lightweight but extensible database access library written in C";
     mainProgram = "odbx-sql";
     license = licenses.lgpl21;
diff --git a/pkgs/development/libraries/opendht/default.nix b/pkgs/development/libraries/opendht/default.nix
index 3bd5c76e56920..e7408ba37e672 100644
--- a/pkgs/development/libraries/opendht/default.nix
+++ b/pkgs/development/libraries/opendht/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opendht";
-  version = "3.1.11";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "savoirfairelinux";
     repo = "opendht";
     rev = "v${version}";
-    hash = "sha256-lJaQGkhpKfSSNVbP+NqommagtoWyi8CdauVxEhiI9Bc=";
+    hash = "sha256-s172Sj1EvV7Lmnmd+xyKmYF2cDEa8Bot10ovggEsOFg=";
   };
 
   nativeBuildInputs = [
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     restinio
     http-parser
     openssl
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Security
   ];
 
diff --git a/pkgs/development/libraries/opendkim/default.nix b/pkgs/development/libraries/opendkim/default.nix
index 00b5d624153a3..8425d5a815bf9 100644
--- a/pkgs/development/libraries/opendkim/default.nix
+++ b/pkgs/development/libraries/opendkim/default.nix
@@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
     "--with-milter=${libmilter}"
     "ac_cv_func_malloc_0_nonnull=yes"
     "ac_cv_func_realloc_0_nonnull=yes"
-  ] ++ lib.optional stdenv.isDarwin "--with-unbound=${unbound}";
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin "--with-unbound=${unbound}";
 
   nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper ];
 
-  buildInputs = [ libbsd openssl libmilter perl ] ++ lib.optional stdenv.isDarwin unbound;
+  buildInputs = [ libbsd openssl libmilter perl ] ++ lib.optional stdenv.hostPlatform.isDarwin unbound;
 
   postInstall = ''
     wrapProgram $out/sbin/opendkim-genkey \
diff --git a/pkgs/development/libraries/openexr/3.nix b/pkgs/development/libraries/openexr/3.nix
index 9e6d6eaa65da9..56562f771698f 100644
--- a/pkgs/development/libraries/openexr/3.nix
+++ b/pkgs/development/libraries/openexr/3.nix
@@ -41,10 +41,10 @@ stdenv.mkDerivation rec {
 
   # Without 'sse' enforcement tests fail on i686 as due to excessive precision as:
   #   error reading back channel B pixel 21,-76 got -nan expected -nan
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isi686 "-msse2 -mfpmath=sse";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isi686 "-msse2 -mfpmath=sse";
 
   # https://github.com/AcademySoftwareFoundation/openexr/issues/1400
-  doCheck = !stdenv.isAarch32;
+  doCheck = !stdenv.hostPlatform.isAarch32;
 
   passthru.tests = {
     musl = pkgsCross.musl64.openexr_3;
diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix
index b45557b95c1b2..a79759be24f22 100644
--- a/pkgs/development/libraries/openexr/default.nix
+++ b/pkgs/development/libraries/openexr/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   # https://github.com/AcademySoftwareFoundation/openexr/issues/1400
   # https://github.com/AcademySoftwareFoundation/openexr/issues/1281
-  doCheck = !stdenv.isAarch32 && !stdenv.isi686;
+  doCheck = !stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isi686;
 
   meta = with lib; {
     description = "High dynamic-range (HDR) image file format";
diff --git a/pkgs/development/libraries/openfec/default.nix b/pkgs/development/libraries/openfec/default.nix
index 35ce5806aea77..8cee39c3a3ab8 100644
--- a/pkgs/development/libraries/openfec/default.nix
+++ b/pkgs/development/libraries/openfec/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "openfec";
-  version = "1.4.2.9";
+  version = "1.4.2.11";
 
   src = fetchzip {
     url = "https://github.com/roc-streaming/openfec/archive/refs/tags/v${version}.tar.gz";
-    hash = "sha256-A/U9Nh8tspRoT3bYePJLUrNa9jxiL0r2Xaf64wWbmVA=";
+    hash = "sha256-lBR8vz8whEdPVHAGVq9eRriKtmS5tUAvtoyXwO4AuEs=";
   };
 
   outputs = [ "out" "dev" ];
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       find $dev/include -type f -a ! -iname '*.h' -delete
 
       install -D -m755 -t $out/lib ../bin/Release/libopenfec${so}
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
       install_name_tool -id $out/lib/libopenfec${so} $out/lib/libopenfec${so}
     '' + ''
       ln -s libopenfec${so} $out/lib/libopenfec${so}.1
diff --git a/pkgs/development/libraries/openfst/default.nix b/pkgs/development/libraries/openfst/default.nix
deleted file mode 100644
index cf49842291296..0000000000000
--- a/pkgs/development/libraries/openfst/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, stdenv, fetchurl, autoreconfHook }:
-
-stdenv.mkDerivation rec {
-  pname = "openfst";
-  version = "1.8.2";
-
-  src = fetchurl {
-    url = "http://www.openfst.org/twiki/pub/FST/FstDownload/${pname}-${version}.tar.gz";
-    sha256 = "sha256-3ph782JHIcXVujIa+VdRiY5PS7Qcijbi1k8GJ2Vti0I=";
-  };
-
-  configureFlags = [
-    "--enable-compact-fsts"
-    "--enable-compress"
-    "--enable-const-fsts"
-    "--enable-far"
-    "--enable-linear-fsts"
-    "--enable-lookahead-fsts"
-    "--enable-mpdt"
-    "--enable-ngram-fsts"
-    "--enable-pdt"
-  ];
-
-  enableParallelBuilding = true;
-
-  nativeBuildInputs = [ autoreconfHook ];
-
-  meta = with lib; {
-    description = "Library for working with finite-state transducers";
-    longDescription = ''
-      Library for constructing, combining, optimizing, and searching weighted finite-state transducers (FSTs).
-      FSTs have key applications in speech recognition and synthesis, machine translation, optical character recognition,
-      pattern matching, string processing, machine learning, information extraction and retrieval among others
-    '';
-    homepage = "https://www.openfst.org/twiki/bin/view/FST/WebHome";
-    license = licenses.asl20;
-    maintainers = [ maintainers.dfordivam ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/opengrm-ngram/default.nix b/pkgs/development/libraries/opengrm-ngram/default.nix
deleted file mode 100644
index b84e4159f3e73..0000000000000
--- a/pkgs/development/libraries/opengrm-ngram/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, stdenv, autoreconfHook, fetchurl, openfst }:
-
-stdenv.mkDerivation rec {
-  pname = "opengrm-ngram";
-  version = "1.3.14";
-
-  src = fetchurl {
-    url = "http://www.openfst.org/twiki/pub/GRM/NGramDownload/ngram-${version}.tar.gz";
-    sha256 = "sha256-ivMPDy6CPM17hWCToLOVzUgcWZiEt2pjYeizeBLYnYc=";
-  };
-
-  nativeBuildInputs = [ autoreconfHook ];
-
-  buildInputs = [ openfst ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "Library to make and modify n-gram language models encoded as weighted finite-state transducers";
-    homepage = "https://www.openfst.org/twiki/bin/view/GRM/NGramLibrary";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ mic92 ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/openimagedenoise/default.nix b/pkgs/development/libraries/openimagedenoise/default.nix
index ad68505ad609f..cfd38708cd9aa 100644
--- a/pkgs/development/libraries/openimagedenoise/default.nix
+++ b/pkgs/development/libraries/openimagedenoise/default.nix
@@ -14,7 +14,7 @@
 }:
 
 let
-  stdenv' = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
+  stdenv' = if stdenv.hostPlatform.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
 in
 stdenv'.mkDerivation (finalAttrs: {
   pname = "openimagedenoise";
@@ -39,11 +39,11 @@ stdenv'.mkDerivation (finalAttrs: {
     python3
     ispc
   ] ++ lib.optional cudaSupport cudaPackages.cuda_nvcc
-    ++ lib.optionals stdenv.isDarwin [ xcodebuild ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcodebuild ];
 
   buildInputs =
     [ tbb ]
-    ++ lib.optionals stdenv.isDarwin (
+    ++ lib.optionals stdenv.hostPlatform.isDarwin (
       with darwin.apple_sdk_11_0.frameworks;
       [
         Accelerate
diff --git a/pkgs/development/libraries/openimageio/default.nix b/pkgs/development/libraries/openimageio/default.nix
index 3d2dc9b8f0e73..51c1f255c3265 100644
--- a/pkgs/development/libraries/openimageio/default.nix
+++ b/pkgs/development/libraries/openimageio/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openimageio";
-  version = "2.5.5.0";
+  version = "2.5.15.0";
 
   src = fetchFromGitHub {
-    owner = "OpenImageIO";
-    repo = "oiio";
+    owner = "AcademySoftwareFoundation";
+    repo = "OpenImageIO";
     rev = "v${version}";
-    hash = "sha256-FtUZqk1m9ahdnwhrBeMFkUbV0dangMY/w9ShevCASfo=";
+    hash = "sha256-jtX6IDR/yFn10hf+FxM0s4St9XYxhQ1UlMAsNzOxuio=";
   };
 
   # Workaround broken zlib version detecion in CMake < 3.37.
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
     homepage = "https://openimageio.org";
     description = "Library and tools for reading and writing images";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index 12b05df234d83..4af80702b556d 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
-, libdeflate, libpng, libtiff, zlib, lcms2, jpylyzer
+, libpng, libtiff, zlib, lcms2, jpylyzer
 , jpipLibSupport ? false # JPIP library & executables
 , jpipServerSupport ? false, curl, fcgi # JPIP Server
 , jdk
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     ++ lib.optionals jpipServerSupport [ curl fcgi ]
     ++ lib.optional (jpipLibSupport) jdk;
 
-  doCheck = (!stdenv.isAarch64 && !stdenv.hostPlatform.isPower64); # tests fail on aarch64-linux and powerpc64
+  doCheck = (!stdenv.hostPlatform.isAarch64 && !stdenv.hostPlatform.isPower64); # tests fail on aarch64-linux and powerpc64
   nativeCheckInputs = [ jpylyzer ];
   checkPhase = ''
     substituteInPlace ../tools/ctest_scripts/travis-ci.cmake \
diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index 266b6900934ea..8ca98b386aa2c 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -17,11 +17,11 @@
 
 stdenv.mkDerivation rec {
   pname = "openldap";
-  version = "2.6.7";
+  version = "2.6.8";
 
   src = fetchurl {
     url = "https://www.openldap.org/software/download/OpenLDAP/openldap-release/${pname}-${version}.tgz";
-    hash = "sha256-zXdfYlyUTteKPaGKA7A7CO6nPIqryXtBuzNumhCVSTA=";
+    hash = "sha256-SJaTI+lOO+OwPGoTKULcun741UXyrTVAFwkBn2lsPE4=";
   };
 
   # TODO: separate "out" and "bin"
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     libsodium
     libtool
     openssl
-  ] ++ lib.optionals (stdenv.isLinux) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isLinux) [
     libxcrypt # causes linking issues on *-darwin
     systemdMinimal
   ];
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "--with-yielding_select=yes"
     "ac_cv_func_memcmp_working=yes"
-  ] ++ lib.optional stdenv.isFreeBSD "--with-pic";
+  ] ++ lib.optional stdenv.hostPlatform.isFreeBSD "--with-pic";
 
   env.NIX_CFLAGS_COMPILE = toString [ "-DLDAPI_SOCK=\"/run/openldap/ldapi\"" ];
 
diff --git a/pkgs/development/libraries/openmpi/default.nix b/pkgs/development/libraries/openmpi/default.nix
index 8c54c13c9139e..a1fb9454561b7 100644
--- a/pkgs/development/libraries/openmpi/default.nix
+++ b/pkgs/development/libraries/openmpi/default.nix
@@ -1,136 +1,280 @@
-{ lib, stdenv, fetchurl, removeReferencesTo, gfortran, perl, libnl
-, rdma-core, zlib, numactl, libevent, hwloc, targetPackages, symlinkJoin
-, libpsm2, libfabric, pmix, ucx, ucc, makeWrapper
-, config
-# Enable CUDA support
-, cudaSupport ? config.cudaSupport, cudaPackages
-
-# Enable the Sun Grid Engine bindings
-, enableSGE ? false
-
-# Pass PATH/LD_LIBRARY_PATH to point to current mpirun by default
-, enablePrefix ? false
-
-# Enable libfabric support (necessary for Omnipath networks) on x86_64 linux
-, fabricSupport ? stdenv.isLinux && stdenv.isx86_64
-
-# Enable Fortran support
-, fortranSupport ? true
+{
+  lib,
+  stdenv,
+  fetchurl,
+  removeReferencesTo,
+  gfortran,
+  perl,
+  libnl,
+  rdma-core,
+  zlib,
+  numactl,
+  libevent,
+  hwloc,
+  targetPackages,
+  libpsm2,
+  libfabric,
+  pmix,
+  ucx,
+  ucc,
+  prrte,
+  makeWrapper,
+  python3,
+  config,
+  # Enable CUDA support
+  cudaSupport ? config.cudaSupport,
+  cudaPackages,
+  # Enable the Sun Grid Engine bindings
+  enableSGE ? false,
+  # Pass PATH/LD_LIBRARY_PATH to point to current mpirun by default
+  enablePrefix ? false,
+  # Enable libfabric support (necessary for Omnipath networks) on x86_64 linux
+  fabricSupport ? stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64,
+  # Enable Fortran support
+  fortranSupport ? true,
+  # AVX/SSE options. See passthru.defaultAvxOptions for the available options.
+  # note that opempi fails to build with AVX disabled, meaning that everything
+  # up to AVX is enabled by default.
+  avxOptions ? { },
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "openmpi";
-  version = "4.1.6";
+  version = "5.0.5";
 
-  src = with lib.versions; fetchurl {
-    url = "https://www.open-mpi.org/software/ompi/v${major version}.${minor version}/downloads/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-90CZRIVRbetjtTEa8SLCZRefUyig2FelZ7hdsAsR5BU=";
+  src = fetchurl {
+    url = "https://www.open-mpi.org/software/ompi/v${lib.versions.majorMinor finalAttrs.version}/downloads/openmpi-${finalAttrs.version}.tar.bz2";
+    sha256 = "sha256-ZYjVfApL0pmiQQP04ZYFGynotV+9pJ4R1bPTIDCjJ3Y=";
   };
 
   postPatch = ''
     patchShebangs ./
 
-    # Ensure build is reproducible
-    ts=`date -d @$SOURCE_DATE_EPOCH`
-    sed -i 's/OPAL_CONFIGURE_USER=.*/OPAL_CONFIGURE_USER="nixbld"/' configure
-    sed -i 's/OPAL_CONFIGURE_HOST=.*/OPAL_CONFIGURE_HOST="localhost"/' configure
-    sed -i "s/OPAL_CONFIGURE_DATE=.*/OPAL_CONFIGURE_DATE=\"$ts\"/" configure
-    find -name "Makefile.in" -exec sed -i "s/\`date\`/$ts/" \{} \;
+    # This is dynamically detected. Configure does not provide fine grained options
+    # We just disable the check in the configure script for now
+    ${lib.pipe (finalAttrs.passthru.defaultAvxOptions // avxOptions) [
+      (lib.mapAttrsToList (
+        option: val: ''
+          substituteInPlace configure \
+            --replace-fail \
+              ompi_cv_op_avx_check_${option}=yes \
+              ompi_cv_op_avx_check_${option}=${if val then "yes" else "no"}
+        ''
+      ))
+      (lib.concatStringsSep "\n")
+    ]}
   '';
 
-  outputs = [ "out" "man" "dev" ];
+  # Ensure build is reproducible according to manual
+  # https://docs.open-mpi.org/en/v5.0.x/release-notes/general.html#general-notes
+  env = {
+    USER = "nixbld";
+    HOSTNAME = "localhost";
+    SOURCE_DATE_EPOCH = "0";
+  };
+
+  outputs =
+    [ "out" ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [
+      "man"
+      "dev"
+    ];
 
-  buildInputs = [ zlib ]
-    ++ lib.optionals stdenv.isLinux [ libnl numactl pmix ucx ucc ]
+  buildInputs =
+    [
+      zlib
+      libevent
+      hwloc
+    ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [
+      libnl
+      numactl
+      pmix
+      ucx
+      ucc
+      prrte
+    ]
     ++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ]
-    ++ [ libevent hwloc ]
-    ++ lib.optional (stdenv.isLinux || stdenv.isFreeBSD) rdma-core
-    ++ lib.optionals fabricSupport [ libpsm2 libfabric ];
+    ++ lib.optionals (stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isFreeBSD) [ rdma-core ]
+    # needed for internal pmix
+    ++ lib.optionals (!stdenv.hostPlatform.isLinux) [ python3 ]
+    ++ lib.optionals fabricSupport [
+      libpsm2
+      libfabric
+    ];
 
-  nativeBuildInputs = [ perl removeReferencesTo makeWrapper ]
+  nativeBuildInputs =
+    [
+      perl
+      removeReferencesTo
+      makeWrapper
+    ]
     ++ lib.optionals cudaSupport [ cudaPackages.cuda_nvcc ]
     ++ lib.optionals fortranSupport [ gfortran ];
 
-  configureFlags = lib.optional (!cudaSupport) "--disable-mca-dso"
-    ++ lib.optional (!fortranSupport) "--disable-mpi-fortran"
-    ++ lib.optionals stdenv.isLinux  [
-      "--with-libnl=${lib.getDev libnl}"
-      "--with-pmix=${lib.getDev pmix}"
-      "--with-pmix-libdir=${pmix}/lib"
-      "--enable-mpi-cxx"
-    ] ++ lib.optional enableSGE "--with-sge"
-    ++ lib.optional enablePrefix "--enable-mpirun-prefix-by-default"
+  configureFlags = [
+    (lib.enableFeature cudaSupport "mca-dso")
+    (lib.enableFeature fortranSupport "mpi-fortran")
+    (lib.withFeatureAs stdenv.hostPlatform.isLinux "libnl" (lib.getDev libnl))
+    "--with-pmix=${lib.getDev pmix}"
+    "--with-pmix-libdir=${lib.getLib pmix}/lib"
+    # Puts a "default OMPI_PRTERUN" value to mpirun / mpiexec executables
+    (lib.withFeatureAs stdenv.hostPlatform.isLinux "prrte" (lib.getBin prrte))
+    (lib.withFeature enableSGE "sge")
+    (lib.enableFeature enablePrefix "mpirun-prefix-by-default")
     # TODO: add UCX support, which is recommended to use with cuda for the most robust OpenMPI build
     # https://github.com/openucx/ucx
     # https://www.open-mpi.org/faq/?category=buildcuda
-    ++ lib.optionals cudaSupport [ "--with-cuda=${cudaPackages.cuda_cudart}" "--enable-dlopen" ]
-    ++ lib.optionals fabricSupport [ "--with-psm2=${lib.getDev libpsm2}" "--with-libfabric=${lib.getDev libfabric}" ]
-    ;
+    (lib.withFeatureAs cudaSupport "cuda" (lib.getDev cudaPackages.cuda_cudart))
+    (lib.enableFeature cudaSupport "dlopen")
+    (lib.withFeatureAs fabricSupport "psm2" (lib.getDev libpsm2))
+    (lib.withFeatureAs fabricSupport "ofi" (lib.getDev libfabric))
+    # The flag --without-ofi-libdir is not supported from some reason, so we
+    # don't use lib.withFeatureAs
+  ] ++ lib.optionals fabricSupport [ "--with-ofi-libdir=${lib.getLib libfabric}/lib" ];
 
   enableParallelBuilding = true;
 
-  postInstall = ''
-    find $out/lib/ -name "*.la" -exec rm -f \{} \;
-
-    for f in mpi shmem osh; do
-      for i in f77 f90 CC c++ cxx cc fort; do
-        moveToOutput "bin/$f$i" "''${!outputDev}"
-        echo "move $fi$i"
-        moveToOutput "share/openmpi/$f$i-wrapper-data.txt" "''${!outputDev}"
-      done
-    done
-
-    for i in ortecc orte-info ompi_info oshmem_info opal_wrapper; do
-      moveToOutput "bin/$i" "''${!outputDev}"
-    done
-
-    moveToOutput "share/openmpi/ortecc-wrapper-data.txt" "''${!outputDev}"
-   '';
-
-  postFixup = ''
-    remove-references-to -t $dev $(readlink -f $out/lib/libopen-pal${stdenv.hostPlatform.extensions.sharedLibrary})
-    remove-references-to -t $man $(readlink -f $out/lib/libopen-pal${stdenv.hostPlatform.extensions.sharedLibrary})
-
-    # The path to the wrapper is hard coded in libopen-pal.so, which we just cleared.
-    wrapProgram $dev/bin/opal_wrapper \
-      --set OPAL_INCLUDEDIR $dev/include \
-      --set OPAL_PKGDATADIR $dev/share/openmpi
+  postInstall =
+    let
+      # The file names we need to iterate are a combination of ${p}${s}, and there
+      # are 7x3 such options. We use lib.mapCartesianProduct to iterate them all.
+      fileNamesToIterate = {
+        p = [
+          "mpi"
+          "shmem"
+          "osh"
+        ];
+        s =
+          [
+            "CC"
+            "c++"
+            "cxx"
+            "cc"
+          ]
+          ++ lib.optionals fortranSupport [
+            "f77"
+            "f90"
+            "fort"
+          ];
+      };
+      wrapperDataSubstitutions =
+        {
+          # The attr key is the filename prefix. The list's 1st value is the
+          # compiler=_ line that should be replaced by a compiler=#2 string, where
+          # #2 is the 2nd value in the list.
+          "cc" = [
+            "gcc"
+            "${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}cc"
+          ];
+          "c++" = [
+            "g++"
+            "${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}c++"
+          ];
+        }
+        // lib.optionalAttrs fortranSupport {
+          "fort" = [
+            "gfortran"
+            "${targetPackages.gfortran or gfortran}/bin/${
+              targetPackages.gfortran.targetPrefix or gfortran.targetPrefix
+            }gfortran"
+          ];
+        };
+      # The -wrapper-data.txt files that are not symlinks, need to be iterated as
+      # well, here they start withw ${part1}${part2}, and we use
+      # lib.mapCartesianProduct as well.
+      wrapperDataFileNames = {
+        part1 = [
+          "mpi"
+          "shmem"
+        ];
+        part2 = builtins.attrNames wrapperDataSubstitutions;
+      };
+    in
+    ''
+      find $out/lib/ -name "*.la" -exec rm -f \{} \;
 
-    # default compilers should be indentical to the
-    # compilers at build time
+      # The main wrapper that all the rest of the commonly used binaries are
+      # symlinked to
+      moveToOutput "bin/opal_wrapper" "''${!outputDev}"
+      # All of the following files are symlinks to opal_wrapper
+      ${lib.pipe fileNamesToIterate [
+        (lib.mapCartesianProduct (
+          { p, s }:
+          ''
+            echo "handling ${p}${s}"
+            moveToOutput "bin/${p}${s}" "''${!outputDev}"
+            moveToOutput "share/openmpi/${p}${s}-wrapper-data.txt" "''${!outputDev}"
+          ''
+        ))
+        (lib.concatStringsSep "\n")
+      ]}
+      # default compilers should be indentical to the
+      # compilers at build time
+      ${lib.pipe wrapperDataFileNames [
+        (lib.mapCartesianProduct (
+          { part1, part2 }:
+          # From some reason the Darwin build doesn't include some of these
+          # wrapperDataSubstitutions strings and even some of the files. Hence
+          # we currently don't perform these substitutions on other platforms,
+          # until a Darwin user will care enough about this cross platform
+          # related substitution.
+          lib.optionalString stdenv.hostPlatform.isLinux ''
+            substituteInPlace "''${!outputDev}/share/openmpi/${part1}${part2}-wrapper-data.txt" \
+              --replace-fail \
+                compiler=${lib.elemAt wrapperDataSubstitutions.${part2} 0} \
+                compiler=${lib.elemAt wrapperDataSubstitutions.${part2} 1}
+          ''
+        ))
+        (lib.concatStringsSep "\n")
+      ]}
+      # A symlink to $\{lib.getDev pmix}/bin/pmixcc upstreeam puts here as well
+      # from some reason.
+      moveToOutput "bin/pcc" "''${!outputDev}"
 
-    echo "$dev/share/openmpi/mpicc-wrapper-data.txt"
-    sed -i 's:compiler=.*:compiler=${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}cc:' \
-      $dev/share/openmpi/mpicc-wrapper-data.txt
-
-    echo "$dev/share/openmpi/ortecc-wrapper-data.txt"
-    sed -i 's:compiler=.*:compiler=${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}cc:' \
-       $dev/share/openmpi/ortecc-wrapper-data.txt
-
-    echo "$dev/share/openmpi/mpic++-wrapper-data.txt"
-    sed -i 's:compiler=.*:compiler=${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}c++:' \
-       $dev/share/openmpi/mpic++-wrapper-data.txt
-  '' + lib.optionalString fortranSupport ''
+      # Handle informative binaries about the compilation
+      for i in {prte,ompi,oshmem}_info; do
+        moveToOutput "bin/$i" "''${!outputDev}"
+      done
+    '';
 
-    echo "$dev/share/openmpi/mpifort-wrapper-data.txt"
-    sed -i 's:compiler=.*:compiler=${gfortran}/bin/${gfortran.targetPrefix}gfortran:'  \
-       $dev/share/openmpi/mpifort-wrapper-data.txt
+  postFixup =
+    lib.optionalString (lib.elem "man" finalAttrs.outputs) ''
+      remove-references-to -t "''${!outputMan}" $(readlink -f $out/lib/libopen-pal${stdenv.hostPlatform.extensions.library})
+    ''
+    + lib.optionalString (lib.elem "dev" finalAttrs.outputs) ''
+      remove-references-to -t "''${!outputDev}" $out/bin/mpirun
+      remove-references-to -t "''${!outputDev}" $(readlink -f $out/lib/libopen-pal${stdenv.hostPlatform.extensions.library})
 
-  '';
+      # The path to the wrapper is hard coded in libopen-pal.so, which we just cleared.
+      wrapProgram "''${!outputDev}/bin/opal_wrapper" \
+        --set OPAL_INCLUDEDIR "''${!outputDev}/include" \
+        --set OPAL_PKGDATADIR "''${!outputDev}/share/openmpi"
+    '';
 
   doCheck = true;
 
   passthru = {
+    defaultAvxOptions = {
+      sse3 = true;
+      sse41 = true;
+      avx = true;
+      avx2 = stdenv.hostPlatform.avx2Support;
+      avx512 = stdenv.hostPlatform.avx512Support;
+    };
     inherit cudaSupport;
     cudatoolkit = cudaPackages.cudatoolkit; # For backward compatibility only
   };
 
-  meta = with lib; {
+  meta = {
     homepage = "https://www.open-mpi.org/";
     description = "Open source MPI-3 implementation";
     longDescription = "The Open MPI Project is an open source MPI-3 implementation that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.";
-    maintainers = with maintainers; [ markuskowa ];
-    license = licenses.bsd3;
-    platforms = platforms.unix;
+    maintainers = with lib.maintainers; [
+      markuskowa
+      doronbehar
+    ];
+    license = lib.licenses.bsd3;
+    platforms = lib.platforms.unix;
   };
-}
+})
diff --git a/pkgs/development/libraries/openpam/default.nix b/pkgs/development/libraries/openpam/default.nix
deleted file mode 100644
index 9f7f1b7bf4153..0000000000000
--- a/pkgs/development/libraries/openpam/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ stdenv, fetchurl, lib }:
-
-stdenv.mkDerivation rec {
-  pname = "openpam";
-  version = "20170430";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/openpam/openpam/Resedacea/${pname}-${version}.tar.gz";
-    sha256 = "0pz8kf9mxj0k8yp8jgmhahddz58zv2b7gnyjwng75xgsx4i55xi2";
-  };
-
-  meta = with lib; {
-    homepage = "https://www.openpam.org";
-    description = "Open source PAM library that focuses on simplicity, correctness, and cleanliness";
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ matthewbauer ];
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/libraries/opensaml-cpp/default.nix b/pkgs/development/libraries/opensaml-cpp/default.nix
index 5e7de98efc461..910a8bc827379 100644
--- a/pkgs/development/libraries/opensaml-cpp/default.nix
+++ b/pkgs/development/libraries/opensaml-cpp/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     boost openssl log4shib xercesc xml-security-c xml-tooling-c zlib
-  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     CoreServices
     SystemConfiguration
   ]);
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--with-xmltooling=${xml-tooling-c}" ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (!stdenv.isDarwin) "-std=c++14";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (!stdenv.hostPlatform.isDarwin) "-std=c++14";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/openscenegraph/default.nix b/pkgs/development/libraries/openscenegraph/default.nix
index 3566e458598c5..1b0f4b229d36f 100644
--- a/pkgs/development/libraries/openscenegraph/default.nix
+++ b/pkgs/development/libraries/openscenegraph/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config cmake doxygen ];
 
-  buildInputs = lib.optionals (!stdenv.isDarwin) [
+  buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [
     libX11 libXinerama libXrandr libGLU libGL
   ] ++ [
     glib libxml2 pcre zlib
@@ -63,8 +63,8 @@ stdenv.mkDerivation rec {
     ++ lib.optional sdlSupport SDL2
     ++ lib.optional restSupport asio
     ++ lib.optionals withExamples [ fltk ]
-    ++ lib.optionals (!stdenv.isDarwin) [  ]
-    ++ lib.optionals stdenv.isDarwin [ AGL Accelerate Carbon Cocoa Foundation ]
+    ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [  ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ AGL Accelerate Carbon Cocoa Foundation ]
     ++ lib.optional (restSupport || colladaSupport) boost
     ;
 
diff --git a/pkgs/development/libraries/openslp/default.nix b/pkgs/development/libraries/openslp/default.nix
index e390cfd932fdd..33b01b764709b 100644
--- a/pkgs/development/libraries/openslp/default.nix
+++ b/pkgs/development/libraries/openslp/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     platforms = platforms.all;
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin && stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
     knownVulnerabilities = [
       "CVE-2023-29552: UDP Reflection Attack with ampliciation factor of up to 2200"
     ];
diff --git a/pkgs/development/libraries/openssl/3.3/CVE-2024-5535.patch b/pkgs/development/libraries/openssl/3.3/CVE-2024-5535.patch
new file mode 100644
index 0000000000000..2d0f822b25eea
--- /dev/null
+++ b/pkgs/development/libraries/openssl/3.3/CVE-2024-5535.patch
@@ -0,0 +1,108 @@
+From e86ac436f0bd54d4517745483e2315650fae7b2c Mon Sep 17 00:00:00 2001
+From: Matt Caswell <matt@openssl.org>
+Date: Fri, 31 May 2024 11:14:33 +0100
+Subject: [PATCH] Fix SSL_select_next_proto
+
+Ensure that the provided client list is non-NULL and starts with a valid
+entry. When called from the ALPN callback the client list should already
+have been validated by OpenSSL so this should not cause a problem. When
+called from the NPN callback the client list is locally configured and
+will not have already been validated. Therefore SSL_select_next_proto
+should not assume that it is correctly formatted.
+
+We implement stricter checking of the client protocol list. We also do the
+same for the server list while we are about it.
+
+CVE-2024-5535
+
+Reviewed-by: Tomas Mraz <tomas@openssl.org>
+Reviewed-by: Neil Horman <nhorman@openssl.org>
+(Merged from https://github.com/openssl/openssl/pull/24716)
+
+(cherry picked from commit 2ebbe2d7ca8551c4cb5fbb391ab9af411708090e)
+---
+ ssl/ssl_lib.c | 63 ++++++++++++++++++++++++++++++++-------------------
+ 1 file changed, 40 insertions(+), 23 deletions(-)
+
+diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
+index 5ec6ac4b63dc5..4c20ac4bf1fe7 100644
+--- a/ssl/ssl_lib.c
++++ b/ssl/ssl_lib.c
+@@ -3530,37 +3530,54 @@ int SSL_select_next_proto(unsigned char **out, unsigned char *outlen,
+                           unsigned int server_len,
+                           const unsigned char *client, unsigned int client_len)
+ {
+-    unsigned int i, j;
+-    const unsigned char *result;
+-    int status = OPENSSL_NPN_UNSUPPORTED;
++    PACKET cpkt, csubpkt, spkt, ssubpkt;
++
++    if (!PACKET_buf_init(&cpkt, client, client_len)
++            || !PACKET_get_length_prefixed_1(&cpkt, &csubpkt)
++            || PACKET_remaining(&csubpkt) == 0) {
++        *out = NULL;
++        *outlen = 0;
++        return OPENSSL_NPN_NO_OVERLAP;
++    }
++
++    /*
++     * Set the default opportunistic protocol. Will be overwritten if we find
++     * a match.
++     */
++    *out = (unsigned char *)PACKET_data(&csubpkt);
++    *outlen = (unsigned char)PACKET_remaining(&csubpkt);
+ 
+     /*
+      * For each protocol in server preference order, see if we support it.
+      */
+-    for (i = 0; i < server_len;) {
+-        for (j = 0; j < client_len;) {
+-            if (server[i] == client[j] &&
+-                memcmp(&server[i + 1], &client[j + 1], server[i]) == 0) {
+-                /* We found a match */
+-                result = &server[i];
+-                status = OPENSSL_NPN_NEGOTIATED;
+-                goto found;
++    if (PACKET_buf_init(&spkt, server, server_len)) {
++        while (PACKET_get_length_prefixed_1(&spkt, &ssubpkt)) {
++            if (PACKET_remaining(&ssubpkt) == 0)
++                continue; /* Invalid - ignore it */
++            if (PACKET_buf_init(&cpkt, client, client_len)) {
++                while (PACKET_get_length_prefixed_1(&cpkt, &csubpkt)) {
++                    if (PACKET_equal(&csubpkt, PACKET_data(&ssubpkt),
++                                     PACKET_remaining(&ssubpkt))) {
++                        /* We found a match */
++                        *out = (unsigned char *)PACKET_data(&ssubpkt);
++                        *outlen = (unsigned char)PACKET_remaining(&ssubpkt);
++                        return OPENSSL_NPN_NEGOTIATED;
++                    }
++                }
++                /* Ignore spurious trailing bytes in the client list */
++            } else {
++                /* This should never happen */
++                return OPENSSL_NPN_NO_OVERLAP;
+             }
+-            j += client[j];
+-            j++;
+         }
+-        i += server[i];
+-        i++;
++        /* Ignore spurious trailing bytes in the server list */
+     }
+ 
+-    /* There's no overlap between our protocols and the server's list. */
+-    result = client;
+-    status = OPENSSL_NPN_NO_OVERLAP;
+-
+- found:
+-    *out = (unsigned char *)result + 1;
+-    *outlen = result[0];
+-    return status;
++    /*
++     * There's no overlap between our protocols and the server's list. We use
++     * the default opportunistic protocol selected earlier
++     */
++    return OPENSSL_NPN_NO_OVERLAP;
+ }
+ 
+ #ifndef OPENSSL_NO_NEXTPROTONEG
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 361756f94ea90..40edcdee6bc3e 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -4,7 +4,8 @@
 , withZlib ? false, zlib
 , enableSSL2 ? false
 , enableSSL3 ? false
-, enableKTLS ? stdenv.isLinux
+, enableMD2 ? false
+, enableKTLS ? stdenv.hostPlatform.isLinux
 , static ? stdenv.hostPlatform.isStatic
 # path to openssl.cnf file. will be placed in $etc/etc/ssl/openssl.cnf to replace the default
 , conf ? null
@@ -24,7 +25,7 @@ let
     inherit version;
 
     src = fetchurl {
-      url = "https://www.openssl.org/source/${finalAttrs.pname}-${version}.tar.gz";
+      url = "https://www.openssl.org/source/openssl-${version}.tar.gz";
       inherit hash;
     };
 
@@ -87,6 +88,7 @@ let
         x86_64-linux = "./Configure linux-x86_64";
         x86_64-solaris = "./Configure solaris64-x86_64-gcc";
         powerpc64-linux = "./Configure linux-ppc64";
+        riscv32-linux = "./Configure ${if lib.versionAtLeast version "3.2" then "linux32-riscv32" else "linux-latomic"}";
         riscv64-linux = "./Configure linux64-riscv64";
       }.${stdenv.hostPlatform.system} or (
         if stdenv.hostPlatform == stdenv.buildPlatform
@@ -102,6 +104,7 @@ let
                                      (toString stdenv.hostPlatform.parsed.cpu.bits)}"
         else if stdenv.hostPlatform.isLinux
           then if stdenv.hostPlatform.isx86_64 then "./Configure linux-x86_64"
+          else if stdenv.hostPlatform.isMicroBlaze then "./Configure linux-latomic"
           else if stdenv.hostPlatform.isMips32 then "./Configure linux-mips32"
           else if stdenv.hostPlatform.isMips64n32 then "./Configure linux-mips64"
           else if stdenv.hostPlatform.isMips64n64 then "./Configure linux64-mips64"
@@ -128,7 +131,8 @@ let
     ] ++ lib.optionals withCryptodev [
       "-DHAVE_CRYPTODEV"
       "-DUSE_CRYPTODEV_DIGESTS"
-    ] ++ lib.optional enableSSL2 "enable-ssl2"
+    ] ++ lib.optional enableMD2 "enable-md2"
+      ++ lib.optional enableSSL2 "enable-ssl2"
       ++ lib.optional enableSSL3 "enable-ssl3"
       # We select KTLS here instead of the configure-time detection (which we patch out).
       # KTLS should work on FreeBSD 13+ as well, so we could enable it if someone tests it.
@@ -143,6 +147,15 @@ let
       # trying to build binaries statically.
       ++ lib.optional static "no-ct"
       ++ lib.optional withZlib "zlib"
+      # /dev/crypto support has been dropped in OpenBSD 5.7.
+      #
+      # OpenBSD's ports does this too,
+      # https://github.com/openbsd/ports/blob/a1147500c76970fea22947648fb92a093a529d7c/security/openssl/3.3/Makefile#L25.
+      #
+      # https://github.com/openssl/openssl/pull/10565 indicated the
+      # intent was that this would be configured properly automatically,
+      # but that doesn't appear to be the case.
+      ++ lib.optional stdenv.hostPlatform.isOpenBSD "no-devcryptoeng"
       ++ lib.optionals (stdenv.hostPlatform.isMips && stdenv.hostPlatform ? gcc.arch) [
       # This is necessary in order to avoid openssl adding -march
       # flags which ultimately conflict with those added by
@@ -218,19 +231,19 @@ let
 
     passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
 
-    meta = with lib; {
+    meta = {
       homepage = "https://www.openssl.org/";
       changelog = "https://github.com/openssl/openssl/blob/openssl-${version}/CHANGES.md";
       description = "Cryptographic library that implements the SSL and TLS protocols";
-      license = licenses.openssl;
+      license = lib.licenses.openssl;
       mainProgram = "openssl";
-      maintainers = with maintainers; [ thillux ];
+      maintainers = with lib.maintainers; [ thillux ] ++ lib.teams.stridtech.members;
       pkgConfigModules = [
         "libcrypto"
         "libssl"
         "openssl"
       ];
-      platforms = platforms.all;
+      platforms = lib.platforms.all;
     } // extraMeta;
   });
 
@@ -267,8 +280,8 @@ in {
   };
 
   openssl_3 = common {
-    version = "3.0.13";
-    hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM=";
+    version = "3.0.14";
+    hash = "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o=";
 
     patches = [
       ./3.0/nix-ssl-cert-file.patch
@@ -277,6 +290,8 @@ in {
       # This patch disables build-time detection.
       ./3.0/openssl-disable-kernel-detection.patch
 
+      ./3.3/CVE-2024-5535.patch
+
       (if stdenv.hostPlatform.isDarwin
        then ./use-etc-ssl-certs-darwin.patch
        else ./use-etc-ssl-certs.patch)
@@ -284,14 +299,14 @@ in {
 
     withDocs = true;
 
-    extraMeta = with lib; {
-      license = licenses.asl20;
+    extraMeta = {
+      license = lib.licenses.asl20;
     };
   };
 
   openssl_3_2 = common {
-    version = "3.2.1";
-    hash = "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk=";
+    version = "3.2.2";
+    hash = "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc=";
 
     patches = [
       ./3.0/nix-ssl-cert-file.patch
@@ -300,6 +315,8 @@ in {
       # This patch disables build-time detection.
       ./3.0/openssl-disable-kernel-detection.patch
 
+      ./3.3/CVE-2024-5535.patch
+
       (if stdenv.hostPlatform.isDarwin
        then ./3.2/use-etc-ssl-certs-darwin.patch
        else ./3.2/use-etc-ssl-certs.patch)
@@ -307,14 +324,14 @@ in {
 
     withDocs = true;
 
-    extraMeta = with lib; {
-      license = licenses.asl20;
+    extraMeta = {
+      license = lib.licenses.asl20;
     };
   };
 
   openssl_3_3 = common {
-    version = "3.3.0";
-    hash = "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI=";
+    version = "3.3.1";
+    hash = "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34=";
 
     patches = [
       ./3.0/nix-ssl-cert-file.patch
@@ -323,6 +340,8 @@ in {
       # This patch disables build-time detection.
       ./3.0/openssl-disable-kernel-detection.patch
 
+      ./3.3/CVE-2024-5535.patch
+
       (if stdenv.hostPlatform.isDarwin
        then ./3.2/use-etc-ssl-certs-darwin.patch
        else ./3.2/use-etc-ssl-certs.patch)
@@ -330,8 +349,8 @@ in {
 
     withDocs = true;
 
-    extraMeta = with lib; {
-      license = licenses.asl20;
+    extraMeta = {
+      license = lib.licenses.asl20;
     };
   };
 }
diff --git a/pkgs/development/libraries/opensubdiv/default.nix b/pkgs/development/libraries/opensubdiv/default.nix
index 0cf848ac44b77..4cee5df5dc3d7 100644
--- a/pkgs/development/libraries/opensubdiv/default.nix
+++ b/pkgs/development/libraries/opensubdiv/default.nix
@@ -31,8 +31,8 @@ stdenv.mkDerivation rec {
       glew xorg.libX11 xorg.libXrandr xorg.libXxf86vm xorg.libXcursor
       xorg.libXinerama xorg.libXi
     ]
-    ++ lib.optionals (openclSupport && !stdenv.isDarwin) [ ocl-icd ]
-    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+    ++ lib.optionals (openclSupport && !stdenv.hostPlatform.isDarwin) [ ocl-icd ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
       OpenCL
       Cocoa
       CoreVideo
@@ -58,10 +58,10 @@ stdenv.mkDerivation rec {
     [ "-DNO_TUTORIALS=1"
       "-DNO_REGRESSION=1"
       "-DNO_EXAMPLES=1"
-      (lib.cmakeBool "NO_METAL" (!stdenv.isDarwin))
+      (lib.cmakeBool "NO_METAL" (!stdenv.hostPlatform.isDarwin))
       (lib.cmakeBool "NO_OPENCL" (!openclSupport))
       (lib.cmakeBool "NO_CUDA" (!cudaSupport))
-    ] ++ lib.optionals (!stdenv.isDarwin) [
+    ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
       "-DGLEW_INCLUDE_DIR=${glew.dev}/include"
       "-DGLEW_LIBRARY=${glew.dev}/lib"
     ] ++ lib.optionals cudaSupport [
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
     homepage = "http://graphics.pixar.com/opensubdiv";
     broken = openclSupport && cudaSupport;
     platforms = lib.platforms.unix;
-    maintainers = [ lib.maintainers.eelco ];
+    maintainers = [ ];
     license = lib.licenses.asl20;
   };
 }
diff --git a/pkgs/development/libraries/openvdb/default.nix b/pkgs/development/libraries/openvdb/default.nix
index 2b1fca97f06e2..72d2d7dce0c84 100644
--- a/pkgs/development/libraries/openvdb/default.nix
+++ b/pkgs/development/libraries/openvdb/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec
   cmakeFlags = [ "-DOPENVDB_CORE_STATIC=OFF" "-DOPENVDB_BUILD_NANOVDB=ON"];
 
   # error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
-  env = lib.optionalAttrs (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13" && lib.versionAtLeast tbb.version "2021.8.0") {
+  env = lib.optionalAttrs (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13" && lib.versionAtLeast tbb.version "2021.8.0") {
     NIX_CFLAGS_COMPILE = "-faligned-allocation";
   };
 
diff --git a/pkgs/development/libraries/openvino/default.nix b/pkgs/development/libraries/openvino/default.nix
index 14ad6c166e551..98129c5944d15 100644
--- a/pkgs/development/libraries/openvino/default.nix
+++ b/pkgs/development/libraries/openvino/default.nix
@@ -6,7 +6,7 @@
 
 # build
 , scons
-, addOpenGLRunpath
+, addDriverRunpath
 , autoPatchelfHook
 , cmake
 , git
@@ -38,7 +38,7 @@ let
   stdenv = gcc12Stdenv;
 
   # prevent scons from leaking in the default python version
-  scons' = scons.override { python3 = python3Packages.python; };
+  scons' = scons.override { inherit python3Packages; };
 
   tbbbind_version = "2_5";
   tbbbind = fetchurl {
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    addOpenGLRunpath
+    addDriverRunpath
     autoPatchelfHook
     cmake
     git
@@ -116,7 +116,7 @@ stdenv.mkDerivation rec {
     (cmakeBool "ENABLE_SAMPLES" false)
 
     # features
-    (cmakeBool "ENABLE_INTEL_CPU" stdenv.isx86_64)
+    (cmakeBool "ENABLE_INTEL_CPU" stdenv.hostPlatform.isx86_64)
     (cmakeBool "ENABLE_JS" false)
     (cmakeBool "ENABLE_LTO" true)
     (cmakeBool "ENABLE_ONEDNN_FOR_GPU" false)
@@ -161,7 +161,7 @@ stdenv.mkDerivation rec {
   postFixup = ''
     # Link to OpenCL
     find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
-      addOpenGLRunpath "$lib"
+      addDriverRunpath "$lib"
     done
   '';
 
@@ -177,7 +177,7 @@ stdenv.mkDerivation rec {
     homepage = "https://docs.openvinotoolkit.org/";
     license = with licenses; [ asl20 ];
     platforms = platforms.all;
-    broken = stdenv.isDarwin; # Cannot find macos sdk
+    broken = stdenv.hostPlatform.isDarwin; # Cannot find macos sdk
     maintainers = with maintainers; [ tfmoraes ];
   };
 }
diff --git a/pkgs/development/libraries/openwsman/default.nix b/pkgs/development/libraries/openwsman/default.nix
index 4df98d28fd096..a12abd5db557a 100644
--- a/pkgs/development/libraries/openwsman/default.nix
+++ b/pkgs/development/libraries/openwsman/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   preConfigure = ''
-    cmakeFlags="$cmakeFlags -DPACKAGE_ARCHITECTURE=$(uname -m)";
+    appendToVar cmakeFlags "-DPACKAGE_ARCHITECTURE=$(uname -m)"
   '';
 
   configureFlags = [ "--disable-more-warnings" ];
diff --git a/pkgs/development/libraries/openxr-loader/default.nix b/pkgs/development/libraries/openxr-loader/default.nix
index f153d7f2f18b6..febbf5114e58e 100644
--- a/pkgs/development/libraries/openxr-loader/default.nix
+++ b/pkgs/development/libraries/openxr-loader/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openxr-loader";
-  version = "1.1.37";
+  version = "1.1.40";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenXR-SDK-Source";
     rev = "release-${version}";
-    sha256 = "sha256-J9IfhTFFSY+rK0DqFdXtINo7nlGUcy2Lljq81T417qc=";
+    sha256 = "sha256-dKSQqiZtnxKj9arpxm9vwz8WzKBXh6y6vzZ9uHP7vX0=";
   };
 
   nativeBuildInputs = [ cmake python3 pkg-config ];
diff --git a/pkgs/development/libraries/openzwave/default.nix b/pkgs/development/libraries/openzwave/default.nix
index f45eacfd157f8..ae9e63619a802 100644
--- a/pkgs/development/libraries/openzwave/default.nix
+++ b/pkgs/development/libraries/openzwave/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch
+{ lib, stdenv, fetchFromGitHub
 , doxygen, fontconfig, graphviz-nox, libxml2, pkg-config, which
 , systemd }:
 
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     description = "C++ library to control Z-Wave Networks via a USB Z-Wave Controller";
     homepage = "http://www.openzwave.net/";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/oracle-instantclient/default.nix b/pkgs/development/libraries/oracle-instantclient/default.nix
index 87381141d98f0..4d6a605bf0849 100644
--- a/pkgs/development/libraries/oracle-instantclient/default.nix
+++ b/pkgs/development/libraries/oracle-instantclient/default.nix
@@ -99,12 +99,12 @@ stdenv.mkDerivation {
   inherit pname version srcs;
 
   buildInputs = [ stdenv.cc.cc.lib ]
-    ++ optional stdenv.isLinux libaio
+    ++ optional stdenv.hostPlatform.isLinux libaio
     ++ optional odbcSupport unixODBC;
 
   nativeBuildInputs = [ makeWrapper unzip ]
-    ++ optional stdenv.isLinux autoPatchelfHook
-    ++ optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ optional stdenv.hostPlatform.isLinux autoPatchelfHook
+    ++ optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   outputs = [ "out" "dev" "lib" ];
 
@@ -125,7 +125,7 @@ stdenv.mkDerivation {
     ln -sfn $out/bin/sqlplus $out/bin/sqlplus64
   '';
 
-  postFixup = optionalString stdenv.isDarwin ''
+  postFixup = optionalString stdenv.hostPlatform.isDarwin ''
     for exe in "$out/bin/"* ; do
       if [ ! -L "$exe" ]; then
         install_name_tool -add_rpath "$lib/lib" "$exe"
diff --git a/pkgs/development/libraries/osm-gps-map/default.nix b/pkgs/development/libraries/osm-gps-map/default.nix
index 9fa4bf10f47fc..0be196597c903 100644
--- a/pkgs/development/libraries/osm-gps-map/default.nix
+++ b/pkgs/development/libraries/osm-gps-map/default.nix
@@ -1,4 +1,4 @@
-{ cairo, fetchzip, glib, gnome, gtk3, gobject-introspection, pkg-config, lib, stdenv }:
+{ cairo, fetchzip, glib, libsoup, gnome-common, gtk3, gobject-introspection, pkg-config, lib, stdenv }:
 
 stdenv.mkDerivation rec {
   pname = "osm-gps-map";
@@ -11,11 +11,12 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" "doc" ];
 
-  nativeBuildInputs = [ pkg-config gobject-introspection ];
+  nativeBuildInputs = [ pkg-config gobject-introspection gnome-common ];
 
   buildInputs = [
     cairo glib
-    gnome.gnome-common gtk3 gnome.libsoup
+    gtk3
+    libsoup
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/p11-kit/default.nix b/pkgs/development/libraries/p11-kit/default.nix
index 32ee1dced38e8..b520c7087ba74 100644
--- a/pkgs/development/libraries/p11-kit/default.nix
+++ b/pkgs/development/libraries/p11-kit/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "p11-kit";
-  version = "0.25.3";
+  version = "0.25.5";
 
   src = fetchFromGitHub {
     owner = "p11-glue";
     repo = pname;
     rev = version;
-    hash = "sha256-zIbkw0pwt4TdyjncnSDeTN6Gsx7cc+x7Un4rnagZxQk=";
+    hash = "sha256-2xDUvXGsF8x42uezgnvOXLVUdNNHcaE042HDDEJeplc=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/packr/default.nix b/pkgs/development/libraries/packr/default.nix
index 43822d76aa197..d149c48cc563b 100644
--- a/pkgs/development/libraries/packr/default.nix
+++ b/pkgs/development/libraries/packr/default.nix
@@ -34,7 +34,7 @@ let p2 = buildGoModule rec {
     #
     # but this package is no longer maintained.
     #
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 };
 p1 = buildGoModule rec {
@@ -66,7 +66,7 @@ p1 = buildGoModule rec {
     #
     # but this package is no longer maintained.
     #
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 };
 in
diff --git a/pkgs/development/libraries/pagmo2/default.nix b/pkgs/development/libraries/pagmo2/default.nix
index 4bbf6f77288f2..e39f059e31d26 100644
--- a/pkgs/development/libraries/pagmo2/default.nix
+++ b/pkgs/development/libraries/pagmo2/default.nix
@@ -12,27 +12,27 @@
 
 stdenv.mkDerivation rec {
   pname = "pagmo2";
-  version = "2.19.0";
+  version = "2.19.1";
 
   src = fetchFromGitHub {
      owner = "esa";
      repo = "pagmo2";
      rev = "v${version}";
-     sha256 = "sha256-z5kg2xKZ666EPK844yp+hi4iGisaIPme9xNdzsAEEjw=";
+     sha256 = "sha256-ido3e0hQLDEPT0AmsfAVTPlGbWe5QBkxgRO6Fg1wp/c=";
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ eigen nlopt boost tbb ] ++ lib.optional (!stdenv.isDarwin) ipopt;
+  buildInputs = [ eigen nlopt boost tbb ] ++ lib.optional (!stdenv.hostPlatform.isDarwin) ipopt;
 
   cmakeFlags = [
     "-DPAGMO_BUILD_TESTS=${if runTests then "ON" else "OFF"}"
     "-DPAGMO_WITH_EIGEN3=yes"
     "-DPAGMO_WITH_NLOPT=yes"
     "-DNLOPT_LIBRARY=${nlopt}/lib/libnlopt${stdenv.hostPlatform.extensions.sharedLibrary}"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "-DPAGMO_WITH_IPOPT=yes"
     "-DCMAKE_CXX_FLAGS='-fuse-ld=gold'"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # FIXME: fails ipopt test with Invalid_Option on darwin, so disable.
     "-DPAGMO_WITH_IPOPT=no"
     "-DLLVM_USE_LINKER=gold"
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index d91552e3799a5..4b442a0ff900b 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -16,7 +16,7 @@
 , ninja
 , glib
 , python3
-, x11Support? !stdenv.isDarwin, libXft
+, x11Support? !stdenv.hostPlatform.isDarwin, libXft
 , withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
 , buildPackages, gobject-introspection
 , testers
@@ -50,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [
     fribidi
     libthai
-  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     ApplicationServices
     Carbon
     CoreGraphics
diff --git a/pkgs/development/libraries/pangolin/default.nix b/pkgs/development/libraries/pangolin/default.nix
index c96bf713af8c9..1dd52ab7ff36f 100644
--- a/pkgs/development/libraries/pangolin/default.nix
+++ b/pkgs/development/libraries/pangolin/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, cmake, pkg-config, doxygen, libGL, glew
-, xorg, ffmpeg_4, libjpeg, libpng, libtiff, eigen
+, xorg, ffmpeg_7, libjpeg, libpng, libtiff, eigen
 , Carbon, Cocoa
 }:
 
@@ -20,13 +20,13 @@ stdenv.mkDerivation rec {
     libGL
     glew
     xorg.libX11
-    ffmpeg_4
+    ffmpeg_7
     libjpeg
     libpng
     libtiff
     eigen
   ]
-  ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa ];
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon Cocoa ];
 
   # The tests use cmake's findPackage to find the installed version of
   # pangolin, which isn't what we want (or available).
diff --git a/pkgs/development/libraries/pangomm/2.42.nix b/pkgs/development/libraries/pangomm/2.42.nix
index 267e46c48c3d4..ebbaee6685630 100644
--- a/pkgs/development/libraries/pangomm/2.42.nix
+++ b/pkgs/development/libraries/pangomm/2.42.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkg-config meson ninja python3 ] ++ lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = [ pkg-config meson ninja python3 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
   ];
   propagatedBuildInputs = [ pango glibmm cairomm ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) || stdenv.hostPlatform.isDarwin;
     description = "C++ interface to the Pango text rendering library";
     homepage    = "https://www.pango.org/";
     license     = with licenses; [ lgpl2 lgpl21 ];
diff --git a/pkgs/development/libraries/pangomm/2.48.nix b/pkgs/development/libraries/pangomm/2.48.nix
index fa4148e06aa02..3b513b889937e 100644
--- a/pkgs/development/libraries/pangomm/2.48.nix
+++ b/pkgs/development/libraries/pangomm/2.48.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     python3
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
   ];
 
diff --git a/pkgs/development/libraries/pangomm/default.nix b/pkgs/development/libraries/pangomm/default.nix
index 02a76869cf1ed..65dede46ee9eb 100644
--- a/pkgs/development/libraries/pangomm/default.nix
+++ b/pkgs/development/libraries/pangomm/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkg-config meson ninja python3 ] ++ lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = [ pkg-config meson ninja python3 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     ApplicationServices
   ];
   propagatedBuildInputs = [ pango glibmm cairomm ];
diff --git a/pkgs/development/libraries/parson/default.nix b/pkgs/development/libraries/parson/default.nix
index 3ee5c73290a19..4bdee532eea84 100644
--- a/pkgs/development/libraries/parson/default.nix
+++ b/pkgs/development/libraries/parson/default.nix
@@ -13,11 +13,11 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ meson ninja ];
 
-  meta = with lib; {
+  meta = {
     description = "Lightweight JSON library written in C";
     homepage = "https://github.com/kgabis/parson";
-    license = licenses.mit;
-    platforms = platforms.all;
+    license = lib.licenses.mit;
+    platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/libraries/partio/default.nix b/pkgs/development/libraries/partio/default.nix
index 75817ff568f72..2c117bdabb900 100644
--- a/pkgs/development/libraries/partio/default.nix
+++ b/pkgs/development/libraries/partio/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , unzip
 , cmake
-, freeglut
+, libglut
 , libGLU
 , libGL
 , zlib
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
     unzip
     cmake
     doxygen
+    python3
   ];
 
   buildInputs = [
@@ -38,12 +39,11 @@ stdenv.mkDerivation rec {
     swig
     xorg.libXi
     xorg.libXmu
-    python3
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.Cocoa
     darwin.apple_sdk.frameworks.GLUT
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    freeglut
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
+    libglut
     libGLU
     libGL
   ];
diff --git a/pkgs/development/libraries/pc-ble-driver/default.nix b/pkgs/development/libraries/pc-ble-driver/default.nix
index 7a7b8475d7c46..0391b72ada89a 100644
--- a/pkgs/development/libraries/pc-ble-driver/default.nix
+++ b/pkgs/development/libraries/pc-ble-driver/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [
     "-DNRF_BLE_DRIVER_VERSION=${version}"
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
     "-DARCH=arm64"
   ];
 
@@ -39,9 +39,9 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [
 
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     IOKit
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     udev
   ];
 
diff --git a/pkgs/development/libraries/pcaudiolib/default.nix b/pkgs/development/libraries/pcaudiolib/default.nix
index c6e67d39c1956..1152283b1f2c3 100644
--- a/pkgs/development/libraries/pcaudiolib/default.nix
+++ b/pkgs/development/libraries/pcaudiolib/default.nix
@@ -10,7 +10,7 @@
 , pkg-config
 , portaudio
 , which
-, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
+, pulseaudioSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "espeak-ng";
-    repo = finalAttrs.pname;
+    repo = "pcaudiolib";
     rev = finalAttrs.version;
     hash = "sha256-ZG/HBk5DHaZP/H3M01vDr3M2nP9awwsPuKpwtalz3EE=";
   };
@@ -35,12 +35,12 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [
     portaudio
   ]
-  ++ lib.optional stdenv.isLinux alsa-lib
+  ++ lib.optional stdenv.hostPlatform.isLinux alsa-lib
   ++ lib.optional pulseaudioSupport libpulseaudio;
 
   # touch ChangeLog to avoid below error on darwin:
   # Makefile.am: error: required file './ChangeLog.md' not found
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     touch ChangeLog
   '' + ''
     ./autogen.sh
diff --git a/pkgs/development/libraries/pcg-c/default.nix b/pkgs/development/libraries/pcg-c/default.nix
index ced4e04c0b876..3ad9df8b64bdb 100644
--- a/pkgs/development/libraries/pcg-c/default.nix
+++ b/pkgs/development/libraries/pcg-c/default.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     '';
     platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.linus ];
-    broken = stdenv.isi686; # https://github.com/imneme/pcg-c/issues/11
+    broken = stdenv.hostPlatform.isi686; # https://github.com/imneme/pcg-c/issues/11
   };
 }
diff --git a/pkgs/development/libraries/pcl/default.nix b/pkgs/development/libraries/pcl/default.nix
index 624ca4aa66724..41639d300ecdc 100644
--- a/pkgs/development/libraries/pcl/default.nix
+++ b/pkgs/development/libraries/pcl/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     qtbase
     libXt
   ]
-  ++ lib.optionals stdenv.isDarwin [ Cocoa AGL ];
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa AGL ];
 
   propagatedBuildInputs = [
     boost
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     vtk
   ];
 
-  cmakeFlags = lib.optionals stdenv.isDarwin [
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
     "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks"
   ] ++ lib.optionals cudaSupport [ "-DWITH_CUDA=true" ];
 
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
     homepage = "https://pointclouds.org/";
     description = "Open project for 2D/3D image and point cloud processing";
     license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ viric ];
+    maintainers = [ ];
     platforms = with lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix
index 52a4ba32315ee..58873ae875570 100644
--- a/pkgs/development/libraries/pcre/default.nix
+++ b/pkgs/development/libraries/pcre/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv, fetchurl, fetchpatch
+{ lib, stdenv, fetchurl, fetchpatch, updateAutotoolsGnuConfigScriptsHook
 , pcre, windows ? null
+  # Disable jit on Apple Silicon, https://github.com/zherczeg/sljit/issues/51
+, enableJit ? !(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
 , variant ? null
 }:
 
@@ -18,11 +20,12 @@ stdenv.mkDerivation rec {
 
   outputs = [ "bin" "dev" "out" "doc" "man" ];
 
-  # Disable jit on Apple Silicon, https://github.com/zherczeg/sljit/issues/51
-  configureFlags = lib.optional (!(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)) "--enable-jit=auto" ++ [
+  hardeningDisable = lib.optional enableJit "shadowstack";
+
+  configureFlags = [
     "--enable-unicode-properties"
     "--disable-cpp"
-  ]
+  ] ++ lib.optional enableJit "--enable-jit=auto"
     ++ lib.optional (variant != null) "--enable-${variant}";
 
   patches = [
@@ -37,6 +40,10 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  # necessary to build on FreeBSD native pending inclusion of
+  # https://git.savannah.gnu.org/cgit/config.git/commit/?id=e4786449e1c26716e3f9ea182caf472e4dbc96e0
+  nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
+
   preCheck = ''
     patchShebangs RunGrepTest
   '';
@@ -65,7 +72,7 @@ stdenv.mkDerivation rec {
     '';
 
     platforms = lib.platforms.all;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     pkgConfigModules = [
       "libpcre"
       "libpcreposix"
diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix
index 3450f910effef..a61a13590d165 100644
--- a/pkgs/development/libraries/pcre2/default.nix
+++ b/pkgs/development/libraries/pcre2/default.nix
@@ -7,30 +7,20 @@
 
 stdenv.mkDerivation rec {
   pname = "pcre2";
-  version = "10.43";
+  version = "10.44";
 
   src = fetchurl {
     url = "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2";
-    hash = "sha256-4qU5hP8LB9/bWuRIa7ubIcyo598kNAlsyb8bcow1C8s=";
+    hash = "sha256-008C4RPPcZOh6/J3DTrFJwiNSF1OBH7RDl0hfG713pY=";
   };
 
   nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
 
-  postPatch = ''
-    # Fix jit autodetection:
-    #   https://github.com/PCRE2Project/pcre2/pull/396
-    # Applying manually to avoid fetchpatch and autoreconfHook.
-    # TODO: remove once 10.44 is released
-    substituteInPlace configure --replace-fail \
-      '#include "src/sljit/sljitConfigInternal.h"' \
-      '#include "src/sljit/sljitConfigCPU.h"'
-  '';
-
   configureFlags = [
     "--enable-pcre2-16"
     "--enable-pcre2-32"
     # only enable jit on supported platforms which excludes Apple Silicon, see https://github.com/zherczeg/sljit/issues/51
-    "--enable-jit=${if stdenv.hostPlatform.isS390x || stdenv.hostPlatform.isLoongArch64 then "no" else "auto"}"
+    "--enable-jit=${if stdenv.hostPlatform.isS390x then "no" else "auto"}"
   ]
   # fix pcre jit in systemd units that set MemoryDenyWriteExecute=true like gitea
   ++ lib.optional withJitSealloc "--enable-jit-sealloc";
diff --git a/pkgs/development/libraries/pdal/default.nix b/pkgs/development/libraries/pdal/default.nix
index c035460fafae7..2ab81728d5ea5 100644
--- a/pkgs/development/libraries/pdal/default.nix
+++ b/pkgs/development/libraries/pdal/default.nix
@@ -19,6 +19,7 @@
 , pkg-config
 , postgresql
 , proj
+, sqlite
 , tiledb
 , xercesc
 , zlib
@@ -27,13 +28,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pdal";
-  version = "2.7.1";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "PDAL";
     repo = "PDAL";
     rev = finalAttrs.version;
-    sha256 = "sha256-JoHBxJ0hCWH7ZhmeJk4huT2k0AK5CzIV58NWCjWj5T0=";
+    hash = "sha256-VHcUyYADmNzxZ+Ix56TNuaP9wG+vRlEl71cNM0uMaHg=";
   };
 
   nativeBuildInputs = [
@@ -48,10 +49,11 @@ stdenv.mkDerivation (finalAttrs: {
     laszip
     libgeotiff
     libtiff
-    libxml2
+    (libxml2.override { enableHttp = true; })
     openscenegraph
     postgresql
     proj
+    sqlite
     tiledb
     xercesc
     zlib
@@ -87,12 +89,6 @@ stdenv.mkDerivation (finalAttrs: {
   doCheck = true;
 
   disabledTests = [
-    # Failing due to GDAL 3.9 change in coordinates precision.
-    # See: https://github.com/PDAL/PDAL/issues/4403
-    # This test should be re-enabled once https://github.com/PDAL/PDAL/pull/4411
-    # is merged !
-    "pdal_io_ogr_writer_test"
-
     # Tests failing due to TileDB library implementation, disabled also
     # by upstream CI.
     # See: https://github.com/PDAL/PDAL/blob/bc46bc77f595add4a6d568a1ff923d7fe20f7e74/.github/workflows/linux.yml#L81
@@ -128,7 +124,9 @@ stdenv.mkDerivation (finalAttrs: {
       version = "pdal ${finalAttrs.finalPackage.version}";
     };
     pdal = callPackage ./tests.nix { pdal = finalAttrs.finalPackage; };
-    pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+    pkg-config = testers.hasPkgConfigModules {
+      package = finalAttrs.finalPackage;
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/pdfhummus/default.nix b/pkgs/development/libraries/pdfhummus/default.nix
index 53a3d080f5413..96d2887452d6a 100644
--- a/pkgs/development/libraries/pdfhummus/default.nix
+++ b/pkgs/development/libraries/pdfhummus/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pdfhummus";
-  version = "4.6.5";
+  version = "4.6.7";
 
   src = fetchFromGitHub {
     owner = "galkahana";
     repo = "PDF-Writer";
     rev = "v${version}";
-    hash = "sha256-0k753wogNW8oW//mlVWxGLt8VIO+29f0C4CJ+rGprvw=";
+    hash = "sha256-XOoMh1YL4wJQ6Uliy0sdcrlqJbbbnZ0gmjuaXS1h+qQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/physfs/default.nix b/pkgs/development/libraries/physfs/default.nix
index 27f7c019ac779..e00be9c841f9d 100644
--- a/pkgs/development/libraries/physfs/default.nix
+++ b/pkgs/development/libraries/physfs/default.nix
@@ -16,7 +16,7 @@ let
     nativeBuildInputs = [ cmake doxygen ];
 
     buildInputs = [ zlib ]
-      ++ lib.optionals stdenv.isDarwin [ Foundation ];
+      ++ lib.optionals stdenv.hostPlatform.isDarwin [ Foundation ];
 
     doInstallCheck = true;
 
diff --git a/pkgs/development/libraries/physics/applgrid/default.nix b/pkgs/development/libraries/physics/applgrid/default.nix
index c2dbb1235b487..b083f278af9d1 100644
--- a/pkgs/development/libraries/physics/applgrid/default.nix
+++ b/pkgs/development/libraries/physics/applgrid/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ gfortran ];
 
   # For some reason zlib was only needed after bump to gfortran8
-  buildInputs = [ hoppet lhapdf root5 zlib ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
+  buildInputs = [ hoppet lhapdf root5 zlib ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ];
 
   patches = [
     ./bad_code.patch
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     substituteInPlace src/Makefile.in \
       --replace "-L\$(subst /libgfortran.a, ,\$(FRTLIB) )" "-L${gfortran.cc.lib}/lib"
-  '' + (lib.optionalString stdenv.isDarwin ''
+  '' + (lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/Makefile.in \
       --replace "gfortran -print-file-name=libgfortran.a" "gfortran -print-file-name=libgfortran.dylib"
   '');
diff --git a/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch b/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch
deleted file mode 100644
index bc8c77f913c62..0000000000000
--- a/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From a69607c511b6da94cde477283b129cbc9cfdd5a3 Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Tue, 11 Aug 2020 12:32:06 +0200
-Subject: [PATCH] Use `strerror` rather than `sys_errlist` to fix compilation
- w/glibc-2.32
-
-To quote the release-notes[1]:
-
-  All programs should use
-  strerror or strerror_r instead.
-
-[1] https://sourceware.org/pipermail/libc-announce/2020/000029.html
----
- 2006/src/packlib/cspack/sysreq/serror.c         | 10 +---------
- 2006/src/packlib/cspack/sysreq/socket.c         |  2 +-
- 2006/src/packlib/kernlib/kernbit/z268/systems.c |  4 ++--
- 2006/src/pawlib/paw/piafs/piafc.c               |  5 +----
- 4 files changed, 5 insertions(+), 16 deletions(-)
-
-diff --git a/2006/src/packlib/cspack/sysreq/serror.c b/2006/src/packlib/cspack/sysreq/serror.c
-index 3667c42a..c560e499 100644
---- a/2006/src/packlib/cspack/sysreq/serror.c
-+++ b/2006/src/packlib/cspack/sysreq/serror.c
-@@ -176,15 +176,7 @@ int     n;
-         }
-         else {
- #if !defined(vms)
--                if ((n>0) && (n<sys_nerr)) {
--                        return(sys_errlist[n]);
--                }
--                else {
--                        (void) sprintf(buf,"%s: %d\n",
-- sys_serrlist[SEMAXERR+1-SEBASEOFF],
--                            n);
--                        return(buf);
--                }
-+          return strerror(n);
- #else /* vms */
- /*
-  * There are (were) some bugs is DEC C compilers (/OPT), just check
-diff --git a/2006/src/packlib/cspack/sysreq/socket.c b/2006/src/packlib/cspack/sysreq/socket.c
-index ceb5bd63..34c2a7bc 100644
---- a/2006/src/packlib/cspack/sysreq/socket.c
-+++ b/2006/src/packlib/cspack/sysreq/socket.c
-@@ -412,7 +412,7 @@ char *
- s_errmsg()                              /* return last error message    */
- {
- #if !defined(vms)
--        return(sys_errlist[errno]);
-+        return(strerror(errno));
- #else /* vms */
- #if defined(MULTINET) && (MULTINET == 1)
-         return(vms_errno_string());
-diff --git a/2006/src/packlib/kernlib/kernbit/z268/systems.c b/2006/src/packlib/kernlib/kernbit/z268/systems.c
-index 98459459..d1ad63ed 100644
---- a/2006/src/packlib/kernlib/kernbit/z268/systems.c
-+++ b/2006/src/packlib/kernlib/kernbit/z268/systems.c
-@@ -134,7 +134,7 @@ int     *ovflw;
- #endif /* hpux */
- 
- 	if ( (ps=(FILE *)popen(command,"r"))==NULL ) {
--		fprintf(stderr,"systems(): popen(): %s\n",sys_errlist[errno] );
-+		fprintf(stderr,"systems(): popen(): %s\n",strerror(errno) );
- 		*rc= -errno;
- 		*chars=0        ;
-                 *l=0        ;
-@@ -144,7 +144,7 @@ int     *ovflw;
- 	rcode = fread(buf, 1, buflen , ps );
- 	if ( rcode < 0 ) {
- 		fprintf(stderr,"systems(): pipe fread(): %s\n",
--                                                       sys_errlist[errno] );
-+                                                       strerror(errno) );
- 		buf[0]='\n';
- 		*rc= -errno;
-                 *chars=0        ;
-diff --git a/2006/src/pawlib/paw/piafs/piafc.c b/2006/src/pawlib/paw/piafs/piafc.c
-index b163f80c..4d8d5528 100644
---- a/2006/src/pawlib/paw/piafs/piafc.c
-+++ b/2006/src/pawlib/paw/piafs/piafc.c
-@@ -1795,10 +1795,7 @@ static void fatalperror(char *msg)
-    extern char  *sys_errlist[];
- #endif
- 
--   if ((unsigned) errno < sys_nerr)
--      sprintf(buf, "%s: %s", msg, sys_errlist[errno]);
--   else
--      sprintf(buf, "%s: Error %d", msg, errno);
-+   sprintf(buf, "%s: %s", msg, strerror(errno));
- 
-    fatal(buf);
- }
--- 
-2.25.4
-
diff --git a/pkgs/development/libraries/physics/cernlib/default.nix b/pkgs/development/libraries/physics/cernlib/default.nix
index b589524113d2c..0673aeefffb1d 100644
--- a/pkgs/development/libraries/physics/cernlib/default.nix
+++ b/pkgs/development/libraries/physics/cernlib/default.nix
@@ -1,102 +1,73 @@
-{ lib, stdenv, fetchurl, gfortran, imake, makedepend, motif, xorg, libxcrypt }:
+{
+  lib,
+  stdenv,
+  fetchpatch,
+  fetchurl,
+  cmake,
+  freetype,
+  gfortran,
+  openssl,
+  libnsl,
+  motif,
+  xorg,
+  libxcrypt,
+}:
 
 stdenv.mkDerivation rec {
-  version = "2006";
+  version = "2024.06.12.0";
   pname = "cernlib";
+  year = lib.versions.major version;
 
   src = fetchurl {
     urls = [
-      "https://ftp.riken.jp/cernlib/download/${version}_source/tar/${version}_src.tar.gz"
-      "https://cernlib.web.cern.ch/cernlib/download/${version}_source/tar/${version}_src.tar.gz"
+      "https://ftp.riken.jp/cernlib/download/${year}_source/tar/cernlib-cernlib-${version}-free.tar.gz"
+      "https://cernlib.web.cern.ch/download/${year}_source/tar/cernlib-cernlib-${version}-free.tar.gz"
     ];
-    sha256 = "0awla1rl96z82br7slcmg8ks1d2a7slk6dj79ywb871j2ksi3fky";
+    hash = "sha256-SEFgQjPBkmRoaMD/7yXiXO9DZNrRhqZ01kptSDQur84=";
   };
 
-  buildInputs = with xorg; [ gfortran motif libX11 libXft libXt libxcrypt ];
-  nativeBuildInputs = [ imake makedepend ];
-  sourceRoot = ".";
-
-  patches = [ ./patch.patch ./0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch ];
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/user-attachments/files/16832928/geant321-fix-weak-alias-on-darwin.patch";
+      hash = "sha256-YzaUh4rJBszGdp5s/HDQMI5qQhCGrTt9P6XCgZOFn1I=";
+    })
+  ];
 
   postPatch = ''
-    echo 'InstallBinSubdirs(packlib scripts)' >> 2006/src/Imakefile
-    substituteInPlace 2006/src/config/site.def \
-      --replace "# define MakeCmd gmake" "# define MakeCmd make"
-    substituteInPlace 2006/src/config/lnxLib.rules \
-      --replace "# lib" "// lib"
-
-    substituteInPlace 2006/src/config/linux.cf \
-      --replace "# ifdef Hasgfortran" "# if 1" \
-      --replace "# define CcCmd			gcc4" "# define CcCmd			gcc"
-    substituteInPlace 2006/src/scripts/cernlib \
-      --replace "-lnsl" ""
-
-    # binutils 2.37 fix
-    substituteInPlace 2006/src/config/Imake.tmpl --replace "clq" "cq"
+    substituteInPlace CMakeLists.txt \
+      --replace-fail "find_program ( SED NAMES gsed" "find_program ( SED NAMES sed"
   '';
 
+  # gfortran warning's on iframework messes with CMake's check_fortran_compiler_flag
+  # see also https://github.com/NixOS/nixpkgs/issues/27218
   preConfigure = ''
-    export CERN=`pwd`
-    export CERN_LEVEL=${version}
-    export CERN_ROOT=$CERN/$CERN_LEVEL
-    export CVSCOSRC=`pwd`/$CERN_LEVEL/src
-    export PATH=$PATH:$CERN_ROOT/bin
+    export NIX_CFLAGS_COMPILE="$(echo $NIX_CFLAGS_COMPILE | sed 's|-iframework [^ ]*||g')"
   '';
 
-  FFLAGS = lib.optionals (lib.versionAtLeast gfortran.version "10.0.0") [
-    # Fix https://github.com/vmc-project/geant3/issues/17
-    "-fallow-invalid-boz"
-
-    # Fix for gfortran 10
-    "-fallow-argument-mismatch"
-  ];
-
-  NIX_CFLAGS = [ "-Wno-return-type" ];
-
-  # Workaround build failure on -fno-common toolchains:
-  # ld: libpacklib.a(kedit.o):kuip/klink1.h:11: multiple definition of `klnkaddr';
-  #   libzftplib.a(zftpcdf.o):zftp/zftpcdf.c:155: first defined here
-  env.NIX_CFLAGS_COMPILE = "-fcommon";
-
-  makeFlags = [
-    "FORTRANOPTIONS=$(FFLAGS)"
-    "CCOPTIONS=$(NIX_CFLAGS)"
-  ];
-
-  configurePhase = ''
-    runHook preConfigure
-
-    cd $CERN_ROOT
-    mkdir -p build
-    cd $CERN_ROOT/build
-    $CVSCOSRC/config/imake_boot
-
-    runHook postConfigure
-  '';
-
-  preBuild = ''
-    make -j $NIX_BUILD_CORES $makeFlags bin/kuipc
-    make -j $NIX_BUILD_CORES $makeFlags scripts/Makefile
-    pushd scripts
-    make -j $NIX_BUILD_CORES $makeFlags bin/cernlib
-    popd
-  '';
-
-  installTargets = [ "install.bin" "install.lib" "install.include" ];
-  installFlags = [
-    "CERN_BINDIR=${placeholder "out"}/bin"
-    "CERN_INCLUDEDIR=${placeholder "out"}/include"
-    "CERN_LIBDIR=${placeholder "out"}/lib"
-    "CERN_SHLIBDIR=${placeholder "out"}/libexec"
-  ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = with xorg; [
+    freetype
+    gfortran
+    openssl
+    libX11
+    libXaw
+    libXft
+    libXt
+    libxcrypt
+    motif
+  ] ++ lib.optional stdenv.hostPlatform.isLinux libnsl;
 
   setupHook = ./setup-hook.sh;
 
   meta = {
     homepage = "http://cernlib.web.cern.ch";
     description = "Legacy collection of libraries and modules for data analysis in high energy physics";
-    broken = stdenv.isDarwin;
-    platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
+    platforms = [
+      "aarch64-linux"
+      "i686-linux"
+      "x86_64-linux"
+      "x86_64-darwin"
+    ];
     maintainers = with lib.maintainers; [ veprbl ];
     license = lib.licenses.gpl2;
   };
diff --git a/pkgs/development/libraries/physics/cernlib/patch.patch b/pkgs/development/libraries/physics/cernlib/patch.patch
deleted file mode 100644
index 2d75b6bf0f88c..0000000000000
--- a/pkgs/development/libraries/physics/cernlib/patch.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-diff --git a/2006/src/config/Imake.tmpl b/2006/src/config/Imake.tmpl
-index 054fb04..a3b3828 100644
---- a/2006/src/config/Imake.tmpl
-+++ b/2006/src/config/Imake.tmpl
-@@ -455,7 +455,7 @@ XCOMM the platform-specific parameters - edit site.def to change
- #define NoRConst NO /* YES if const for structs of funcs is bad */
- #endif
- #ifndef InstPgmFlags
--#define InstPgmFlags -s
-+#define InstPgmFlags
- #endif
- #ifndef InstBinFlags
- #define InstBinFlags -m 0755
-diff --git a/2006/src/config/biglib.rules b/2006/src/config/biglib.rules
-index c90e58a..9173bdc 100644
---- a/2006/src/config/biglib.rules
-+++ b/2006/src/config/biglib.rules
-@@ -368,7 +368,7 @@ define build-object-list						@@\
- @ (set -e;\							@@\
- 	 case '${MFLAGS}' in *[i]*) set +e;; esac; \		@@\
- 	 subdirs=Quote(dirs);\					@@\
--	 list=`/bin/pwd`/$@;\					@@\
-+	 list=`pwd`/$@;\					@@\
- 	 for dir in $$subdirs; do \				@@\
- 	  (set -e;cd $$dir;SedCmd -e "\=^[^/]=s=^.=$$dir/&=" $@ >> $$list);\@@\
- 	 done) || (rm $@; exit 1)				@@\
-diff --git a/2006/src/config/imake_boot b/2006/src/config/imake_boot
-index b52d0d3..69cf1b3 100755
---- a/2006/src/config/imake_boot
-+++ b/2006/src/config/imake_boot
-@@ -10,8 +10,8 @@ if [ "$CVSCOSRC" = "" ] ; then
- fi
- if [ -f Imakefile ] ; then
- 	imake -DUseInstalled -I$CVSCOSRC/config \
--		-DTOPDIR=`/bin/pwd` -DCURDIR= -fImakefile
-+		-DTOPDIR=`pwd` -DCURDIR= -fImakefile
- else
- 	imake -DUseInstalled -I$CVSCOSRC/config \
--		-DTOPDIR=`/bin/pwd` -DCURDIR= -f$CVSCOSRC/Imakefile
-+		-DTOPDIR=`pwd` -DCURDIR= -f$CVSCOSRC/Imakefile
- fi
-diff --git a/2006/src/config/linux-lp64.cf b/2006/src/config/linux-lp64.cf
-index e071b2f..3cc5c3b 100644
---- a/2006/src/config/linux-lp64.cf
-+++ b/2006/src/config/linux-lp64.cf
-@@ -173,7 +173,7 @@
- #define FortranCmd		g77
- #define XargsCmd		xargs
- #define FortranSaveFlags	/* */ /* Everything static !? */
--#define DefaultFCOptions	-fno-automatic -fno-second-underscore -fugly-complex
-+#define DefaultFCOptions	-fno-automatic -fno-second-underscore
- #define CernlibSystem	        -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC -DCERNLIB_QMLXIA64
- 
- # endif
-diff --git a/2006/src/config/linux.cf b/2006/src/config/linux.cf
-index cc0bee5..a8dd954 100644
---- a/2006/src/config/linux.cf
-+++ b/2006/src/config/linux.cf
-@@ -258,7 +258,7 @@ endif									@@\
- #define FortranCmd		g77
- #define XargsCmd		xargs
- #define FortranSaveFlags	/* */ /* Everything static !? */
--#define DefaultFCOptions	-fno-automatic -fno-second-underscore -fugly-complex
-+#define DefaultFCOptions	-fno-automatic -fno-second-underscore
- #define CernlibSystem	        -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC
- 
- # endif
-diff --git a/2006/src/packlib/kuip/code_kuip/kkern.c b/2006/src/packlib/kuip/code_kuip/kkern.c
-index 3a5579f..5f3c352 100644
---- a/2006/src/packlib/kuip/code_kuip/kkern.c
-+++ b/2006/src/packlib/kuip/code_kuip/kkern.c
-@@ -543,24 +543,6 @@ char *str0dup( const char *str )
- 
- 
- /*
-- * like strdup() but string is n characters long and not terminated
-- */
--char *strndup( const char *str,
--              size_t len )
--{
--  size_t bytes = len + 1;
--  char *p;
--
--  if( bytes < ALLOC_MIN_BYTES )
--    bytes = ALLOC_MIN_BYTES;
--
--  p = strncpy( malloc( bytes ), str, len );
--  p[len] = '\0';
--  return p;
--}
--
--
--/*
-  * strdup() of character representation of integer n
-  */
- char *stridup( int n )
-diff --git a/2006/src/packlib/kuip/code_kuip/kmenu.c b/2006/src/packlib/kuip/code_kuip/kmenu.c
-index f135b07..23007a8 100644
---- a/2006/src/packlib/kuip/code_kuip/kmenu.c
-+++ b/2006/src/packlib/kuip/code_kuip/kmenu.c
-@@ -1404,7 +1404,7 @@ void interactive_find( char *expr, int keym )
-          printf ("See also:\n    ");
-          for (i = 0; i < nval; i++) {
-              if (i == ncmd) continue;
--             printf (flis_name[i]);
-+             printf ("%s", flis_name[i]);
-              if (i < nval-1)
-                 printf (", ");
-              else
-diff --git a/2006/src/packlib/kuip/kuip/kstring.h b/2006/src/packlib/kuip/kuip/kstring.h
-index 7811f15..12a1344 100644
---- a/2006/src/packlib/kuip/kuip/kstring.h
-+++ b/2006/src/packlib/kuip/kuip/kstring.h
-@@ -21,7 +21,6 @@ extern "C" {
-  */
- 
- #ifndef WIN32
--extern void* memmove( void* dst, const void* src, size_t n );
- #endif
- 
- /* GF. make conform to kkern.c#if !defined(__convexc__)*/
-@@ -46,7 +45,6 @@ extern char* str4dup( const char* str1, const char* str2, const char* str3,
-                      const char* str4 );
- extern char* str5dup( const char* str1, const char* str2, const char* str3,
-                      const char* str4, const char* str5 );
--extern char* strndup( const char* buf, size_t n );
- extern char* stridup( int i );
- 
- extern char* mstrcat( char* ptr, const char* str );
-diff --git a/2006/src/pawlib/paw/cpaw/bugrep.c b/2006/src/pawlib/paw/cpaw/bugrep.c
-index d503a45..d26e30f 100644
---- a/2006/src/pawlib/paw/cpaw/bugrep.c
-+++ b/2006/src/pawlib/paw/cpaw/bugrep.c
-@@ -432,51 +432,7 @@ br_add_config( char * tmp_file )
- 
- static int
- br_mail_file( char *addr, char *subj, char *file )
--#if (defined(CERNLIB_UNIX))&&(!defined(CERNLIB_WINNT))&&(!defined(CERNLIB_MACOSX))
--{
--        FILE            *mfp, *fp;
--        char            line[1024], my_addr[L_cuserid];
--        time_t          clock;
--        struct tm       *ts;
--
--        fp = fopen( file, "r" );
--        if ( fp == NULL ) {
--                printf( "BUGREPORT: cannot (re)open temporary file\n" );
--                return MAIL_ERROR;
--        }
--
--        cuserid( my_addr );
--
--        sprintf( line, "/usr/lib/sendmail -t" );
--        mfp = popen( line, "w" );
--
--        if ( mfp == NULL ) {
--                printf( "BUGREPORT: cannot run sendmail\n" );
--                return MAIL_ERROR;
--        }
--
--
--        clock = time( (time_t *) 0 );
--        ts = localtime( &clock );
--        strftime( line, sizeof( line ),
--                "%a, %d %h %y %H:%M:%S", ts );
--        fprintf ( mfp, "To: %s\n", addr );
--        fprintf ( mfp, "Bcc: %s\n", my_addr );
--        fprintf ( mfp, "Date: %s\n", line );
--        fprintf ( mfp, "Subject: %s\n", subj );
--        fprintf ( mfp, "\n" );
--
--        while( fgets( line, sizeof( line ), fp ) != NULL ) {
--                fputs( line, mfp );
--        }
--        fclose( fp );
--
--        pclose( mfp );
--
--        return MAIL_OK;
--}
--#endif
--#if defined(CERNLIB_MACOSX)
-+#if (defined(CERNLIB_UNIX))&&(!defined(CERNLIB_WINNT))
- {
-         FILE            *mfp, *fp;
-         char            line[1024], *my_addr;
diff --git a/pkgs/development/libraries/physics/cernlib/setup-hook.sh b/pkgs/development/libraries/physics/cernlib/setup-hook.sh
index d837593277606..d48b98cfa6241 100644
--- a/pkgs/development/libraries/physics/cernlib/setup-hook.sh
+++ b/pkgs/development/libraries/physics/cernlib/setup-hook.sh
@@ -1,3 +1,3 @@
 export CERN_LEVEL=@version@
 export CERN=@out@
-export CERN_ROOT=$CERN/$CERN_LEVEL
+export CERN_ROOT=$CERN
diff --git a/pkgs/development/libraries/physics/geant4/default.nix b/pkgs/development/libraries/physics/geant4/default.nix
index 569a0b3e6923f..128d7391fc4a3 100644
--- a/pkgs/development/libraries/physics/geant4/default.nix
+++ b/pkgs/development/libraries/physics/geant4/default.nix
@@ -3,8 +3,8 @@
 , enableQT             ? false # deprecated name
 , enableQt             ? enableQT
 , enableXM             ? false
-, mesa
-, enableOpenGLX11      ? !mesa.meta.broken
+, libGLX
+, enableOpenGLX11      ? !libGLX.meta.broken
 , enablePython         ? false
 , enableRaytracerX11   ? false
 
@@ -76,9 +76,9 @@ stdenv.mkDerivation rec {
     "-DGEANT4_USE_SYSTEM_EXPAT=ON"
     "-DGEANT4_USE_SYSTEM_ZLIB=ON"
     "-DGEANT4_BUILD_MULTITHREADED=${if enableMultiThreading then "ON" else "OFF"}"
-  ] ++ lib.optionals (enableOpenGLX11 && stdenv.isDarwin) [
-    "-DXQuartzGL_INCLUDE_DIR=${libGL.dev}/include"
-    "-DXQuartzGL_gl_LIBRARY=${libGL}/lib/libGL.dylib"
+  ] ++ lib.optionals (enableOpenGLX11 && stdenv.hostPlatform.isDarwin) [
+    "-DXQuartzGL_INCLUDE_DIR=${libGLX.dev}/include"
+    "-DXQuartzGL_gl_LIBRARY=${libGLX}/lib/libGL.dylib"
   ] ++ lib.optionals (enableMultiThreading && enablePython) [
     "-DGEANT4_BUILD_TLS_MODEL=global-dynamic"
   ] ++ lib.optionals enableInventor [
@@ -128,7 +128,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
     description = "Toolkit for the simulation of the passage of particles through matter";
     longDescription = ''
       Geant4 is a toolkit for the simulation of the passage of particles through matter.
diff --git a/pkgs/development/libraries/physics/hepmc3/default.nix b/pkgs/development/libraries/physics/hepmc3/default.nix
index 53ee798c17b6d..c622d7562001c 100644
--- a/pkgs/development/libraries/physics/hepmc3/default.nix
+++ b/pkgs/development/libraries/physics/hepmc3/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   ++ lib.optional withPython python;
 
   # error: invalid version number in 'MACOSX_DEPLOYMENT_TARGET=11.0'
-  preConfigure = lib.optionalString (stdenv.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+  preConfigure = lib.optionalString (stdenv.hostPlatform.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
     MACOSX_DEPLOYMENT_TARGET=10.16
   '';
 
diff --git a/pkgs/development/libraries/physics/herwig/default.nix b/pkgs/development/libraries/physics/herwig/default.nix
index ef7ce7ce586de..c18ff9bef84dc 100644
--- a/pkgs/development/libraries/physics/herwig/default.nix
+++ b/pkgs/development/libraries/physics/herwig/default.nix
@@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ veprbl ];
     platforms = platforms.unix;
-    broken = stdenv.isAarch64; # doesn't compile: ignoring return value of 'FILE* freopen...
+    broken = stdenv.hostPlatform.isAarch64; # doesn't compile: ignoring return value of 'FILE* freopen...
   };
 }
diff --git a/pkgs/development/libraries/physics/lhapdf/default.nix b/pkgs/development/libraries/physics/lhapdf/default.nix
index 8111f61684305..26ca234c520c7 100644
--- a/pkgs/development/libraries/physics/lhapdf/default.nix
+++ b/pkgs/development/libraries/physics/lhapdf/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   # The Apple SDK only exports locale_t from xlocale.h whereas glibc
   # had decided that xlocale.h should be a part of locale.h
-  postPatch = lib.optionalString (stdenv.isDarwin && stdenv.cc.isGNU) ''
+  postPatch = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.cc.isGNU) ''
     substituteInPlace src/GridPDF.cc --replace '#include <locale>' '#include <xlocale.h>'
   '';
 
diff --git a/pkgs/development/libraries/physics/nlojet/default.nix b/pkgs/development/libraries/physics/nlojet/default.nix
index 4e2d878db00cd..6085906758b07 100644
--- a/pkgs/development/libraries/physics/nlojet/default.nix
+++ b/pkgs/development/libraries/physics/nlojet/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   env.CXXFLAGS="-std=c++11";
 
   # error: no member named 'finite' in the global namespace; did you mean simply 'finite'?
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-Dfinite=isfinite";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-Dfinite=isfinite";
 
   meta = {
     homepage    = "http://www.desy.de/~znagy/Site/NLOJet++.html";
diff --git a/pkgs/development/libraries/physics/pythia/default.nix b/pkgs/development/libraries/physics/pythia/default.nix
index 0eb45943e0aa9..55ba50f2ae318 100644
--- a/pkgs/development/libraries/physics/pythia/default.nix
+++ b/pkgs/development/libraries/physics/pythia/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ rsync ]
-    ++ lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
   buildInputs = [ boost fastjet hepmc zlib lhapdf ];
 
   configureFlags = [
diff --git a/pkgs/development/libraries/pico-sdk/default.nix b/pkgs/development/libraries/pico-sdk/default.nix
index cd860c3629f01..259e47426b766 100644
--- a/pkgs/development/libraries/pico-sdk/default.nix
+++ b/pkgs/development/libraries/pico-sdk/default.nix
@@ -1,21 +1,37 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
 
-stdenv.mkDerivation rec {
+  # Options
+
+  # The submodules in the pico-sdk contain important additional functionality
+  # such as tinyusb, but not all these libraries might be bsd3.
+  # Off by default.
+  withSubmodules ? false,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
   pname = "pico-sdk";
-  version = "1.5.1";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "raspberrypi";
-    repo = pname;
-    rev = version;
-    sha256 = "sha256-JNcxd86XNNiPkvipVFR3X255boMmq+YcuJXUP4JwInU=";
+    repo = "pico-sdk";
+    rev = finalAttrs.version;
+    fetchSubmodules = withSubmodules;
+    hash = if (withSubmodules) then
+      "sha256-fVSpBVmjeP5pwkSPhhSCfBaEr/FEtA82mQOe/cHFh0A="
+    else
+      "sha256-d6mEjuG8S5jvJS4g8e90gFII3sEqUVlT2fgd9M9LUkA=";
   };
 
   nativeBuildInputs = [ cmake ];
 
   # SDK contains libraries and build-system to develop projects for RP2040 chip
   # We only need to compile pioasm binary
-  sourceRoot = "${src.name}/tools/pioasm";
+  sourceRoot = "${finalAttrs.src.name}/tools/pioasm";
 
   installPhase = ''
     runHook preInstall
@@ -32,4 +48,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ muscaln ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/development/libraries/pinocchio/default.nix b/pkgs/development/libraries/pinocchio/default.nix
deleted file mode 100644
index 470668bb1eb23..0000000000000
--- a/pkgs/development/libraries/pinocchio/default.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, boost
-, eigen
-, example-robot-data
-, collisionSupport ? !stdenv.isDarwin
-, console-bridge
-, jrl-cmakemodules
-, hpp-fcl
-, urdfdom
-, pythonSupport ? false
-, python3Packages
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "pinocchio";
-  version = "3.0.0";
-
-  src = fetchFromGitHub {
-    owner = "stack-of-tasks";
-    repo = finalAttrs.pname;
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-h4NzfS27+jWyHbegxF+pgN6JzJdVAoM16J6G/9uNJc4=";
-  };
-
-  prePatch = ''
-    # test failure, ref https://github.com/stack-of-tasks/pinocchio/issues/2304
-    substituteInPlace unittest/CMakeLists.txt \
-      --replace-fail "add_pinocchio_unit_test(contact-cholesky)" ""
-  '' + lib.optionalString (stdenv.isLinux && stdenv.isAarch64) ''
-    # test failure, ref https://github.com/stack-of-tasks/pinocchio/issues/2304
-    substituteInPlace unittest/CMakeLists.txt \
-      --replace-fail "add_pinocchio_unit_test(contact-models)" ""
-    # test failure, ref https://github.com/stack-of-tasks/pinocchio/issues/2277
-    substituteInPlace unittest/algorithm/utils/CMakeLists.txt \
-      --replace-fail "add_pinocchio_unit_test(force)" ""
-  '';
-
-  # example-robot-data models are used in checks.
-  # Upstream provide them as git submodule, but we can use our own version instead.
-  postPatch = ''
-    rmdir models/example-robot-data
-    ln -s ${example-robot-data.src} models/example-robot-data
-  '';
-
-  strictDeps = true;
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  propagatedBuildInputs = [
-    console-bridge
-    jrl-cmakemodules
-    urdfdom
-  ] ++ lib.optionals (!pythonSupport) [
-    boost
-    eigen
-  ] ++ lib.optionals (!pythonSupport && collisionSupport) [
-    hpp-fcl
-  ] ++ lib.optionals pythonSupport [
-    python3Packages.boost
-    python3Packages.eigenpy
-  ] ++ lib.optionals (pythonSupport && collisionSupport) [
-    python3Packages.hpp-fcl
-  ];
-
-  cmakeFlags = [
-    (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport)
-    (lib.cmakeBool "BUILD_WITH_LIBPYTHON" pythonSupport)
-    (lib.cmakeBool "BUILD_WITH_COLLISION_SUPPORT" collisionSupport)
-  ] ++ lib.optionals (pythonSupport && stdenv.isDarwin) [
-    # AssertionError: '.' != '/tmp/nix-build-pinocchio-2.7.0.drv/sou[84 chars].dae'
-    "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;test-py-bindings_geometry_model_urdf'"
-  ];
-
-  doCheck = true;
-
-  pythonImportsCheck = lib.optionals (!pythonSupport) [
-    "pinocchio"
-  ];
-
-  meta = {
-    description = "Fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives";
-    homepage = "https://github.com/stack-of-tasks/pinocchio";
-    license = lib.licenses.bsd2;
-    maintainers = with lib.maintainers; [ nim65s wegank ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/pipewire/0.2.nix b/pkgs/development/libraries/pipewire/0.2.nix
deleted file mode 100644
index cf2448bddfcbc..0000000000000
--- a/pkgs/development/libraries/pipewire/0.2.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, doxygen, graphviz
-, glib, dbus, gst_all_1, alsa-lib, ffmpeg_4, libjack2, udev, libva, xorg
-, sbc, SDL2, makeFontsConf
-}:
-
-let
-  fontsConf = makeFontsConf {
-    fontDirectories = [ ];
-  };
-in stdenv.mkDerivation rec {
-  pname = "pipewire";
-  version = "0.2.7";
-
-  src = fetchFromGitHub {
-    owner = "PipeWire";
-    repo = "pipewire";
-    rev = version;
-    sha256 = "1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc";
-  };
-
-  outputs = [ "out" "lib" "dev" "doc" ];
-
-  nativeBuildInputs = [
-    meson ninja pkg-config doxygen graphviz
-  ];
-  buildInputs = [
-    glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer
-    alsa-lib ffmpeg_4 libjack2 udev libva xorg.libX11 sbc SDL2
-  ];
-
-  # Workaround build on gcc-10+ and clang11+:
-  #  spa/plugins/bluez5/libspa-bluez5.so.p/bluez5-monitor.c.o:(.bss+0x0):
-  #    multiple definition of `spa_a2dp_sink_factory'
-  env.NIX_CFLAGS_COMPILE = toString [ "-fcommon" ];
-
-  mesonFlags = [
-    "-Ddocs=true"
-    "-Dgstreamer=enabled"
-  ];
-
-  PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user";
-
-  FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file
-
-  doCheck = true;
-
-  meta = with lib; {
-    description = "Server and user space API to deal with multimedia pipelines";
-    homepage = "https://pipewire.org/";
-    license = licenses.lgpl21;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index c3532d93683d9..2ffd9eb2bf3f6 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , systemd
-, enableSystemd ? true
+, enableSystemd ? true # enableSystemd=false maintained by maintainers.qyliss.
 , pkg-config
 , docutils
 , doxygen
@@ -27,55 +27,38 @@
 , lilv
 , makeFontsConf
 , nixosTests
-, withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind
 , valgrind
-, libcameraSupport ? true
 , libcamera
 , libdrm
-, gstreamerSupport ? true
 , gst_all_1
-, ffmpegSupport ? true
 , ffmpeg
-, bluezSupport ? true
 , bluez
 , sbc
 , libfreeaptx
 , liblc3
 , fdk_aac
 , libopus
-, ldacbtSupport ? bluezSupport && lib.meta.availableOn stdenv.hostPlatform ldacbt
 , ldacbt
-, nativeHspSupport ? true
-, nativeHfpSupport ? true
-, nativeModemManagerSupport ? true
 , modemmanager
-, ofonoSupport ? true
-, hsphfpdSupport ? true
-, pulseTunnelSupport ? true
 , libpulseaudio
 , zeroconfSupport ? true
 , avahi
 , raopSupport ? true
 , openssl
-, opusSupport ? true
 , rocSupport ? true
 , roc-toolkit
 , x11Support ? true
 , libcanberra
 , xorg
-, mysofaSupport ? true
 , libmysofa
 , ffadoSupport ? x11Support && lib.systems.equals stdenv.buildPlatform stdenv.hostPlatform
 , ffado
 , libselinux
 }:
 
-# Bluetooth codec only makes sense if general bluetooth enabled
-assert ldacbtSupport -> bluezSupport;
-
 stdenv.mkDerivation(finalAttrs: {
   pname = "pipewire";
-  version = "1.0.7";
+  version = "1.2.3";
 
   outputs = [
     "out"
@@ -91,7 +74,7 @@ stdenv.mkDerivation(finalAttrs: {
     owner = "pipewire";
     repo = "pipewire";
     rev = finalAttrs.version;
-    sha256 = "sha256-YzI+hkX1ZdeTfxuKaw5P9OYPtkWtUg9cNo32wLCgjNU=";
+    sha256 = "sha256-sdbv1PqLMGlRXe42pgNW5tNtQ3tEYWCwndZQQQEM6ig=";
   };
 
   patches = [
@@ -115,35 +98,40 @@ stdenv.mkDerivation(finalAttrs: {
 
   buildInputs = [
     alsa-lib
+    bluez
     dbus
+    fdk_aac
+    ffmpeg
     glib
+    gst_all_1.gst-plugins-base
+    gst_all_1.gstreamer
+    libcamera
     libjack2
+    libfreeaptx
+    liblc3
+    libmysofa
+    libopus
+    libpulseaudio
     libusb1
     libselinux
     libsndfile
     lilv
+    modemmanager
     ncurses
     readline
+    sbc
   ] ++ (if enableSystemd then [ systemd ] else [ udev ])
   ++ (if lib.meta.availableOn stdenv.hostPlatform webrtc-audio-processing_1 then [ webrtc-audio-processing_1 ] else [ webrtc-audio-processing ])
-  ++ lib.optionals gstreamerSupport [ gst_all_1.gst-plugins-base gst_all_1.gstreamer ]
-  ++ lib.optionals libcameraSupport [ libcamera ]
-  ++ lib.optional ffmpegSupport ffmpeg
-  ++ lib.optionals bluezSupport [ bluez libfreeaptx liblc3 sbc fdk_aac libopus ]
-  ++ lib.optional ldacbtSupport ldacbt
-  ++ lib.optional nativeModemManagerSupport modemmanager
-  ++ lib.optional opusSupport libopus
-  ++ lib.optional pulseTunnelSupport libpulseaudio
+  ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform ldacbt) ldacbt
   ++ lib.optional zeroconfSupport avahi
   ++ lib.optional raopSupport openssl
   ++ lib.optional rocSupport roc-toolkit
   ++ lib.optionals vulkanSupport [ libdrm vulkan-headers vulkan-loader ]
   ++ lib.optionals x11Support [ libcanberra xorg.libX11 xorg.libXfixes ]
-  ++ lib.optional mysofaSupport libmysofa
   ++ lib.optional ffadoSupport ffado;
 
   # Valgrind binary is required for running one optional test.
-  nativeCheckInputs = lib.optional withValgrind valgrind;
+  nativeCheckInputs =  lib.optional (lib.meta.availableOn stdenv.hostPlatform valgrind) valgrind;
 
   mesonFlags = [
     (lib.mesonEnable "docs" true)
@@ -151,28 +139,29 @@ stdenv.mkDerivation(finalAttrs: {
     (lib.mesonEnable "installed_tests" true)
     (lib.mesonOption "installed_test_prefix" (placeholder "installedTests"))
     (lib.mesonOption "libjack-path" "${placeholder "jack"}/lib")
-    (lib.mesonEnable "libcamera" libcameraSupport)
+    (lib.mesonEnable "libcamera" true)
     (lib.mesonEnable "libffado" ffadoSupport)
     (lib.mesonEnable "roc" rocSupport)
-    (lib.mesonEnable "libpulse" pulseTunnelSupport)
+    (lib.mesonEnable "libpulse" true)
     (lib.mesonEnable "avahi" zeroconfSupport)
-    (lib.mesonEnable "gstreamer" gstreamerSupport)
+    (lib.mesonEnable "gstreamer" true)
+    (lib.mesonEnable "gstreamer-device-provider" true)
     (lib.mesonEnable "systemd" enableSystemd)
     (lib.mesonEnable "systemd-system-service" enableSystemd)
     (lib.mesonEnable "udev" (!enableSystemd))
-    (lib.mesonEnable "ffmpeg" ffmpegSupport)
-    (lib.mesonEnable "pw-cat-ffmpeg" ffmpegSupport)
-    (lib.mesonEnable "bluez5" bluezSupport)
-    (lib.mesonEnable "bluez5-backend-hsp-native" nativeHspSupport)
-    (lib.mesonEnable "bluez5-backend-hfp-native" nativeHfpSupport)
-    (lib.mesonEnable "bluez5-backend-native-mm" nativeModemManagerSupport)
-    (lib.mesonEnable "bluez5-backend-ofono" ofonoSupport)
-    (lib.mesonEnable "bluez5-backend-hsphfpd" hsphfpdSupport)
+    (lib.mesonEnable "ffmpeg" true)
+    (lib.mesonEnable "pw-cat-ffmpeg" true)
+    (lib.mesonEnable "bluez5" true)
+    (lib.mesonEnable "bluez5-backend-hsp-native" true)
+    (lib.mesonEnable "bluez5-backend-hfp-native" true)
+    (lib.mesonEnable "bluez5-backend-native-mm" true)
+    (lib.mesonEnable "bluez5-backend-ofono" true)
+    (lib.mesonEnable "bluez5-backend-hsphfpd" true)
     # source code is not easily obtainable
     (lib.mesonEnable "bluez5-codec-lc3plus" false)
-    (lib.mesonEnable "bluez5-codec-lc3" bluezSupport)
-    (lib.mesonEnable "bluez5-codec-ldac" ldacbtSupport)
-    (lib.mesonEnable "opus" opusSupport)
+    (lib.mesonEnable "bluez5-codec-lc3" true)
+    (lib.mesonEnable "bluez5-codec-ldac" (lib.meta.availableOn stdenv.hostPlatform ldacbt))
+    (lib.mesonEnable "opus" true)
     (lib.mesonOption "sysconfdir" "/etc")
     (lib.mesonEnable "raop" raopSupport)
     (lib.mesonOption "session-managers" "")
@@ -180,11 +169,12 @@ stdenv.mkDerivation(finalAttrs: {
     (lib.mesonEnable "x11" x11Support)
     (lib.mesonEnable "x11-xfixes" x11Support)
     (lib.mesonEnable "libcanberra" x11Support)
-    (lib.mesonEnable "libmysofa" mysofaSupport)
+    (lib.mesonEnable "libmysofa" true)
     (lib.mesonEnable "sdl2" false) # required only to build examples, causes dependency loop
     (lib.mesonBool "rlimits-install" false) # installs to /etc, we won't use this anyway
     (lib.mesonEnable "compress-offload" true)
     (lib.mesonEnable "man" true)
+    (lib.mesonEnable "snap" false) # we don't currently have a working snapd
   ];
 
   # Fontconfig error: Cannot load default config file
diff --git a/pkgs/development/libraries/pipewire/wireplumber.nix b/pkgs/development/libraries/pipewire/wireplumber.nix
index 607565b8fe698..ae4656a2f6667 100644
--- a/pkgs/development/libraries/pipewire/wireplumber.nix
+++ b/pkgs/development/libraries/pipewire/wireplumber.nix
@@ -24,7 +24,7 @@
 
 stdenv.mkDerivation rec {
   pname = "wireplumber";
-  version = "0.5.5";
+  version = "0.5.6";
 
   outputs = [ "out" "dev" ] ++ lib.optional enableDocs "doc";
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     owner = "pipewire";
     repo = "wireplumber";
     rev = version;
-    hash = "sha256-evqQCKf4oE/PwkAOMPPPw8LPiNIWQ2gkOJzsFC8UN+k=";
+    hash = "sha256-UAx7laULICb9ClZsIFcKi687M0yEgV4sCyhKqxs4nHE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix
index b0791a2400a85..dbf742ab81f25 100644
--- a/pkgs/development/libraries/pixman/default.nix
+++ b/pkgs/development/libraries/pixman/default.nix
@@ -12,7 +12,8 @@
 , qemu
 , scribus
 , tigervnc
-, wlroots
+, wlroots_0_17
+, wlroots_0_18
 , xwayland
 
 , gitUpdater
@@ -51,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Diwmmxt=disabled"
   ]
   # Disable until https://gitlab.freedesktop.org/pixman/pixman/-/issues/46 is resolved
-  ++ lib.optional (stdenv.isAarch64 && !stdenv.cc.isGNU) "-Da64-neon=disabled";
+  ++ lib.optional (stdenv.hostPlatform.isAarch64 && !stdenv.cc.isGNU) "-Da64-neon=disabled";
 
   preConfigure = ''
     # https://gitlab.freedesktop.org/pixman/pixman/-/issues/62
@@ -60,13 +61,13 @@ stdenv.mkDerivation (finalAttrs: {
 
   enableParallelBuilding = true;
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   postInstall = glib.flattenInclude;
 
   passthru = {
     tests = {
-      inherit cairo qemu scribus tigervnc wlroots xwayland;
+      inherit cairo qemu scribus tigervnc wlroots_0_17 wlroots_0_18 xwayland;
       pkg-config = testers.hasPkgConfigModules {
         package = finalAttrs.finalPackage;
       };
diff --git a/pkgs/development/libraries/pkger/default.nix b/pkgs/development/libraries/pkger/default.nix
index f2047c82f0519..37895fbeed65b 100644
--- a/pkgs/development/libraries/pkger/default.nix
+++ b/pkgs/development/libraries/pkger/default.nix
@@ -20,7 +20,7 @@ buildGoModule rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Embed static files in Go binaries (replacement for gobuffalo/packr) ";
+    description = "Embed static files in Go binaries (replacement for gobuffalo/packr)";
     mainProgram = "pkger";
     homepage = "https://github.com/markbates/pkger";
     changelog = "https://github.com/markbates/pkger/releases/tag/v${version}";
diff --git a/pkgs/development/libraries/platform-folders/default.nix b/pkgs/development/libraries/platform-folders/default.nix
index 242bbe7770e48..27f4446891bd0 100644
--- a/pkgs/development/libraries/platform-folders/default.nix
+++ b/pkgs/development/libraries/platform-folders/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     description = "C++ library to look for standard platform directories so that you do not need to write platform-specific code";
     homepage = "https://github.com/sago007/PlatformFolders";
     license = licenses.mit;
-    maintainers = with maintainers; [ lilyinstarlight ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/plib/default.nix b/pkgs/development/libraries/plib/default.nix
index c7349c3693051..de93d6944c939 100644
--- a/pkgs/development/libraries/plib/default.nix
+++ b/pkgs/development/libraries/plib/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, fetchpatch, lib, stdenv, libGLU, libGL, freeglut, SDL
+{ fetchurl, fetchpatch, lib, stdenv, libGLU, libGL, libglut, SDL
 , libXi, libSM, libXmu, libXext, libX11 }:
 
 stdenv.mkDerivation rec {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   ];
 
   propagatedBuildInputs = [
-    libGLU libGL freeglut SDL
+    libGLU libGL libglut SDL
 
     # The following libs ought to be propagated build inputs of Mesa.
     libXi libSM libXmu libXext libX11
diff --git a/pkgs/development/libraries/plplot/default.nix b/pkgs/development/libraries/plplot/default.nix
index 6e4e47f094ed2..d49b8da211d8f 100644
--- a/pkgs/development/libraries/plplot/default.nix
+++ b/pkgs/development/libraries/plplot/default.nix
@@ -1,16 +1,21 @@
-{ lib
-, stdenv
-, fetchurl
-, cmake
-, enableWX ? false
-, wxGTK32
-, Cocoa
-, enableXWin ? false
-, xorg
+{
+  lib,
+  stdenv,
+  fetchurl,
+  cmake,
+  pkg-config,
+  enableWX ? false,
+  wxGTK32,
+  Cocoa,
+  enableXWin ? false,
+  xorg,
+  enablePNG ? false,
+  cairo,
+  pango,
 }:
 
 stdenv.mkDerivation rec {
-  pname   = "plplot";
+  pname = "plplot";
   version = "5.15.0";
 
   src = fetchurl {
@@ -18,18 +23,26 @@ stdenv.mkDerivation rec {
     sha256 = "0ywccb6bs1389zjfmc9zwdvdsvlpm7vg957whh6b5a96yvcf8bdr";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
 
-  buildInputs = lib.optional enableWX wxGTK32
-    ++ lib.optional (enableWX && stdenv.isDarwin) Cocoa
-    ++ lib.optional enableXWin xorg.libX11;
+  buildInputs =
+    lib.optional enableWX wxGTK32
+    ++ lib.optional (enableWX && stdenv.hostPlatform.isDarwin) Cocoa
+    ++ lib.optional enableXWin xorg.libX11
+    ++ lib.optionals enablePNG [
+      cairo
+      pango
+    ];
 
   passthru = {
     inherit (xorg) libX11;
     inherit
       enableWX
       enableXWin
-    ;
+      ;
   };
 
   cmakeFlags = [
@@ -41,9 +54,9 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Cross-platform scientific graphics plotting library";
     mainProgram = "pltek";
-    homepage    = "https://plplot.org";
+    homepage = "https://plplot.org";
     maintainers = with maintainers; [ bcdarwin ];
-    platforms   = platforms.unix;
-    license     = licenses.lgpl2;
+    platforms = platforms.unix;
+    license = licenses.lgpl2;
   };
 }
diff --git a/pkgs/development/libraries/pmix/default.nix b/pkgs/development/libraries/pmix/default.nix
index 78605179f710f..486164904b2bb 100644
--- a/pkgs/development/libraries/pmix/default.nix
+++ b/pkgs/development/libraries/pmix/default.nix
@@ -1,22 +1,37 @@
-{ lib, stdenv, fetchFromGitHub, perl, autoconf, automake
-, removeReferencesTo, libtool, python3, flex, libevent
-, targetPackages, makeWrapper
-, hwloc, munge, zlib, pandoc, gitMinimal
-} :
-
-stdenv.mkDerivation rec {
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  perl,
+  autoconf,
+  automake,
+  removeReferencesTo,
+  libtool,
+  python3,
+  flex,
+  libevent,
+  targetPackages,
+  makeWrapper,
+  hwloc,
+  munge,
+  zlib,
+  pandoc,
+  gitMinimal,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
   pname = "pmix";
-  version = "5.0.1";
+  version = "5.0.3";
 
   src = fetchFromGitHub {
     repo = "openpmix";
     owner = "openpmix";
-    rev = "v${version}";
-    hash = "sha256-ZuuzQ8j5zqQ/9mBFEODAaoX9/doWB9Nt9Sl75JkJyqU=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-5qBZj4L0Qu/RvNj8meL0OlLCdfGvBP0D916Mr+0XOCQ=";
     fetchSubmodules = true;
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" ] ++ lib.optionals stdenv.hostPlatform.isLinux [ "dev" ];
 
   postPatch = ''
     patchShebangs ./autogen.pl
@@ -36,7 +51,12 @@ stdenv.mkDerivation rec {
     makeWrapper
   ];
 
-  buildInputs = [ libevent hwloc munge zlib ];
+  buildInputs = [
+    libevent
+    hwloc
+    munge
+    zlib
+  ];
 
   configureFlags = [
     "--with-libevent=${lib.getDev libevent}"
@@ -50,39 +70,47 @@ stdenv.mkDerivation rec {
     ./autogen.pl
   '';
 
-  postInstall = ''
-    find $out/lib/ -name "*.la" -exec rm -f \{} \;
-
-    moveToOutput "bin/pmix_info" "''${!outputDev}"
-    moveToOutput "bin/pmixcc" "''${!outputDev}"
-    moveToOutput "share/pmix/pmixcc-wrapper-data.txt" "''${!outputDev}"
-
-    # The path to the pmixcc-wrapper-data.txt is hard coded and
-    # points to $out instead of dev. Use wrapper to fix paths.
-    wrapProgram $dev/bin/pmixcc \
-      --set PMIX_INCLUDEDIR $dev/include \
-      --set PMIX_PKGDATADIR $dev/share/pmix
-  '';
-
-  postFixup = ''
+  postInstall =
+    ''
+      find $out/lib/ -name "*.la" -exec rm -f \{} \;
+
+      moveToOutput "bin/pmix_info" "''${!outputDev}"
+      moveToOutput "bin/pmixcc" "''${!outputDev}"
+      moveToOutput "share/pmix/pmixcc-wrapper-data.txt" "''${!outputDev}"
+
+    ''
+    # From some reason the Darwin build doesn't include this file, so we
+    # currently disable this substitution for any non-Linux platform, until a
+    # Darwin user will care enough about this cross platform fix.
+    + lib.optionalString stdenv.hostPlatform.isLinux ''
+      # Pin the compiler to the current version in a cross compiler friendly way.
+      # Same pattern as for openmpi (see https://github.com/NixOS/nixpkgs/pull/58964#discussion_r275059427).
+      substituteInPlace "''${!outputDev}"/share/pmix/pmixcc-wrapper-data.txt \
+        --replace-fail compiler=gcc \
+          compiler=${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}cc
+    '';
+
+  postFixup = lib.optionalString (lib.elem "dev" finalAttrs.outputs) ''
     # The build info (parameters to ./configure) are hardcoded
     # into the library. This clears all references to $dev/include.
-    remove-references-to -t $dev $(readlink -f $out/lib/libpmix.so)
+    remove-references-to -t "''${!outputDev}" $(readlink -f $out/lib/libpmix.so)
 
-    # Pin the compiler to the current version in a cross compiler friendly way.
-    # Same pattern as for openmpi (see https://github.com/NixOS/nixpkgs/pull/58964#discussion_r275059427).
-    sed -i 's:compiler=.*:compiler=${targetPackages.stdenv.cc}/bin/${targetPackages.stdenv.cc.targetPrefix}cc:' \
-      $dev/share/pmix/pmixcc-wrapper-data.txt
+    # The path to the pmixcc-wrapper-data.txt is hard coded and
+    # points to $out instead of dev. Use wrapper to fix paths.
+    wrapProgram "''${!outputDev}"/bin/pmixcc \
+      --set PMIX_INCLUDEDIR "''${!outputDev}"/include \
+      --set PMIX_PKGDATADIR "''${!outputDev}"/share/pmix
   '';
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     description = "Process Management Interface for HPC environments";
     homepage = "https://openpmix.github.io/";
-    license = licenses.bsd3;
-    maintainers = [ maintainers.markuskowa ];
-    platforms = platforms.linux;
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [
+      markuskowa
+      doronbehar
+    ];
   };
-}
-
+})
diff --git a/pkgs/development/libraries/png++/default.nix b/pkgs/development/libraries/png++/default.nix
index dfd74e495e76d..e3aa6af942e2d 100644
--- a/pkgs/development/libraries/png++/default.nix
+++ b/pkgs/development/libraries/png++/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ libpng ];
 
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace error.hpp --replace "#if (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !_GNU_SOURCE" "#if (__clang__ || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !_GNU_SOURCE"
   '' + ''
     sed "s|\(PNGPP := .\)|PREFIX := ''${out}\n\\1|" -i Makefile
diff --git a/pkgs/development/libraries/podofo/0.10.x.nix b/pkgs/development/libraries/podofo/0.10.x.nix
index f4bf9e7741788..fdc42bc0f5653 100644
--- a/pkgs/development/libraries/podofo/0.10.x.nix
+++ b/pkgs/development/libraries/podofo/0.10.x.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "podofo";
-  version = "0.10.3";
+  version = "0.10.4";
 
   src = fetchFromGitHub {
     owner = "podofo";
     repo = "podofo";
     rev = finalAttrs.version;
-    hash = "sha256-B+YNTo2rZAL4PqDo+lFOQiWM9bl/TIn8xrJyefrIAYE=";
+    hash = "sha256-ZY+kyimLzAeEgvDaflXM7MbyzsGgivOnG1aBD9/ozbk=";
   };
 
   outputs = [ "out" "dev" "lib" ];
@@ -58,6 +58,6 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Library to work with the PDF file format";
     platforms = lib.platforms.all;
     license = with lib.licenses; [ gpl2Plus lgpl2Plus ];
-    maintainers = [];
+    maintainers = [ ];
   };
 })
diff --git a/pkgs/development/libraries/polkit-qt-1/default.nix b/pkgs/development/libraries/polkit-qt-1/default.nix
index b663c865d233f..0fb66ccc7c3d5 100644
--- a/pkgs/development/libraries/polkit-qt-1/default.nix
+++ b/pkgs/development/libraries/polkit-qt-1/default.nix
@@ -27,7 +27,7 @@ mkDerivation rec {
     glib
     pcre
     polkit
-  ] ++ lib.optionals stdenv.isLinux [ libselinux libsepol util-linux ];
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [ libselinux libsepol util-linux ];
 
   meta = with lib; {
     description = "Qt wrapper around PolKit";
diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix
index 5b41fbdf6dfd4..17b325f52d8f7 100644
--- a/pkgs/development/libraries/polkit/default.nix
+++ b/pkgs/development/libraries/polkit/default.nix
@@ -19,6 +19,7 @@
 , docbook_xml_dtd_412
 , gtk-doc
 , coreutils
+, fetchpatch
 , useSystemd ? lib.meta.availableOn stdenv.hostPlatform systemdMinimal
 , systemdMinimal
 , elogind
@@ -28,7 +29,7 @@
 # Not yet investigated; it may be due to the "Make netgroup support optional"
 # patch not updating the tests correctly yet, or doing something wrong,
 # or being unrelated to that.
-, doCheck ? (stdenv.isLinux && !stdenv.hostPlatform.isMusl)
+, doCheck ? (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isMusl)
 }:
 
 let
@@ -55,6 +56,13 @@ stdenv.mkDerivation rec {
     ./0001-build-Use-datarootdir-in-Meson-generated-pkg-config-.patch
 
     ./elogind.patch
+
+    # FIXME: remove in the next release
+    # https://github.com/NixOS/nixpkgs/issues/18012
+    (fetchpatch {
+      url = "https://github.com/polkit-org/polkit/commit/f93c7466039ea3403e0576928aeb620b806d0cce.patch";
+      sha256 = "sha256-cF0nNovYmyr+XixpBgQFF0A+oJeSPGZgTkgDQkQuof8=";
+    })
   ];
 
   depsBuildBuild = [
@@ -85,7 +93,7 @@ stdenv.mkDerivation rec {
     pam
     dbus
     duktape
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     # On Linux, fall back to elogind when systemd support is off.
     (if useSystemd then systemdMinimal else elogind)
   ];
@@ -119,7 +127,7 @@ stdenv.mkDerivation rec {
     "-Dtests=${lib.boolToString doCheck}"
     "-Dgtk_doc=${lib.boolToString withIntrospection}"
     "-Dman=true"
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     "-Dsession_tracking=${if useSystemd then "libsystemd-login" else "libelogind"}"
   ];
 
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 17ab3f100b81a..368c5a06a463f 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -2,14 +2,13 @@
 , stdenv
 , fetchurl
 , fetchFromGitLab
+, fetchpatch
 , cairo
 , cmake
 , boost
-, cups-filters
 , curl
 , fontconfig
 , freetype
-, inkscape
 , lcms
 , libiconv
 , libintl
@@ -18,7 +17,6 @@
 , openjpeg
 , pkg-config
 , python3
-, scribus
 , zlib
 , withData ? true, poppler_data
 , qt5Support ? false, qt6Support ? false, qtbase ? null
@@ -27,6 +25,15 @@
 , utils ? false, nss ? null
 , minimal ? false
 , suffix ? "glib"
+
+# for passthru.tests
+, cups-filters
+, gdal
+, gegl
+, inkscape
+, pdfslicer
+, scribus
+, vips
 }:
 
 let
@@ -55,6 +62,15 @@ stdenv.mkDerivation (finalAttrs: rec {
     hash = "sha256-GRh6P90F8z59YExHmcGD3lygEYZAyIs3DdzzE2NDIi4=";
   };
 
+  patches = [
+    (fetchpatch {
+      # https://access.redhat.com/security/cve/CVE-2024-6239
+      name = "CVE-2024-6239.patch";
+      url = "https://gitlab.freedesktop.org/poppler/poppler/-/commit/0554731052d1a97745cb179ab0d45620589dd9c4.patch";
+      hash = "sha256-I78wJ4l1DSh+x/e00ZL8uvrGdBH+ufp+EDm0A1XWyCU=";
+    })
+  ];
+
   nativeBuildInputs = [
     cmake
     ninja
@@ -110,7 +126,7 @@ stdenv.mkDerivation (finalAttrs: rec {
   dontWrapQtApps = true;
 
   # Workaround #54606
-  preConfigure = lib.optionalString stdenv.isDarwin ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i -e '1i cmake_policy(SET CMP0025 NEW)' CMakeLists.txt
   '';
 
@@ -131,7 +147,19 @@ stdenv.mkDerivation (finalAttrs: rec {
     inherit testData;
     tests = {
       # These depend on internal poppler code that frequently changes.
-      inherit inkscape cups-filters scribus;
+      inherit
+        cups-filters
+        inkscape
+        scribus
+      ;
+
+      inherit
+        gegl
+        pdfslicer
+        vips
+      ;
+      gdal = gdal.override { usePoppler = true; };
+      python-poppler-qt5 = python3.pkgs.poppler-qt5;
     };
   };
 
diff --git a/pkgs/development/libraries/popt/default.nix b/pkgs/development/libraries/popt/default.nix
index e97629b0dfd05..282203a98af7b 100644
--- a/pkgs/development/libraries/popt/default.nix
+++ b/pkgs/development/libraries/popt/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
 
-  patches = lib.optionals stdenv.isCygwin [
+  patches = lib.optionals stdenv.hostPlatform.isCygwin [
     ./1.16-cygwin.patch
     ./1.16-vpath.patch
   ] ++ lib.optionals stdenv.hostPlatform.isMinGW [
diff --git a/pkgs/development/libraries/portaudio/default.nix b/pkgs/development/libraries/portaudio/default.nix
index a109aad97b9d4..6d338b0f67e08 100644
--- a/pkgs/development/libraries/portaudio/default.nix
+++ b/pkgs/development/libraries/portaudio/default.nix
@@ -22,13 +22,13 @@ stdenv.mkDerivation rec {
 
   strictDeps = true;
   nativeBuildInputs = [ pkg-config which ];
-  buildInputs = [ libjack2 ] ++ lib.optionals (!stdenv.isDarwin) [ alsa-lib ];
+  buildInputs = [ libjack2 ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ alsa-lib ];
 
   configureFlags = [ "--disable-mac-universal" "--enable-cxx" ];
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=nullability-inferred-on-nested-type -Wno-error=nullability-completeness-on-arrays -Wno-error=implicit-const-int-float-conversion";
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AudioUnit AudioToolbox CoreAudio CoreServices Carbon ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ AudioUnit AudioToolbox CoreAudio CoreServices Carbon ];
 
   # Disable parallel build as it fails as:
   #   make: *** No rule to make target '../../../lib/libportaudio.la',
@@ -45,10 +45,10 @@ stdenv.mkDerivation rec {
   # not sure why, but all the headers seem to be installed by the make install
   installPhase = ''
     make install
-  '' + lib.optionalString (!stdenv.isDarwin) ''
+  '' + lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     # fixup .pc file to find alsa library
     sed -i "s|-lasound|-L${alsa-lib.out}/lib -lasound|" "$out/lib/pkgconfig/"*.pc
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     cp include/pa_mac_core.h $out/include/pa_mac_core.h
   '';
 
diff --git a/pkgs/development/libraries/portmidi/default.nix b/pkgs/development/libraries/portmidi/default.nix
index 8e743f6a54b3c..eac2a369fd0b0 100644
--- a/pkgs/development/libraries/portmidi/default.nix
+++ b/pkgs/development/libraries/portmidi/default.nix
@@ -27,9 +27,9 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ unzip cmake ];
-  buildInputs = lib.optionals stdenv.isLinux [
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Carbon CoreAudio CoreFoundation CoreMIDI CoreServices
   ];
 
diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix
index 863ffed429328..37e5f78c60278 100644
--- a/pkgs/development/libraries/ppl/default.nix
+++ b/pkgs/development/libraries/ppl/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   propagatedBuildInputs = [ gmpxx ];
 
   configureFlags = [ "--disable-watchdog" ] ++
-    lib.optionals stdenv.isDarwin [
+    lib.optionals stdenv.hostPlatform.isDarwin [
       "CPPFLAGS=-fexceptions"
       "--disable-ppl_lcdd" "--disable-ppl_lpsol" "--disable-ppl_pips"
     ];
diff --git a/pkgs/development/libraries/precice/default.nix b/pkgs/development/libraries/precice/default.nix
index 372a2940e0ae3..56dd58781bdf3 100644
--- a/pkgs/development/libraries/precice/default.nix
+++ b/pkgs/development/libraries/precice/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   ];
 
   env.NIX_CFLAGS_COMPILE = toString (
-    lib.optionals stdenv.isDarwin [ "-D_GNU_SOURCE" ]
+    lib.optionals stdenv.hostPlatform.isDarwin [ "-D_GNU_SOURCE" ]
     # libxml2-2.12 changed const qualifiers
     ++ [ "-fpermissive" ]
   );
diff --git a/pkgs/development/libraries/proj-datumgrid/default.nix b/pkgs/development/libraries/proj-datumgrid/default.nix
index 2fa5a4d268cc1..cfc75ce0c51aa 100644
--- a/pkgs/development/libraries/proj-datumgrid/default.nix
+++ b/pkgs/development/libraries/proj-datumgrid/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     description = "Repository for proj datum grids";
     homepage = "https://proj4.org";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     mainProgram = "nad2bin";
     platforms = platforms.linux ++ platforms.darwin;
   };
diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix
index 8fedba3ef08c5..615d2590c0236 100644
--- a/pkgs/development/libraries/proj/default.nix
+++ b/pkgs/development/libraries/proj/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   preCheck =
     let
-      libPathEnvVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
+      libPathEnvVar = if stdenv.hostPlatform.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
     in
       ''
         export HOME=$TMPDIR
diff --git a/pkgs/development/libraries/protobuf/25.nix b/pkgs/development/libraries/protobuf/25.nix
index 782906d0b5b71..a5a6a3419b5f0 100644
--- a/pkgs/development/libraries/protobuf/25.nix
+++ b/pkgs/development/libraries/protobuf/25.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix ({
-  version = "25.3";
-  hash = "sha256-N/mO9a6NyC0GwxY3/u1fbFbkfH7NTkyuIti6L3bc+7k=";
+  version = "25.4";
+  hash = "sha256-dIouv6QaX6Tlahjrdz250DJkKjZ74/EwoQjTs3vBS/U=";
 } // args)
diff --git a/pkgs/development/libraries/protobuf/27.nix b/pkgs/development/libraries/protobuf/27.nix
index 03336c2a0b143..8e93e443b18e6 100644
--- a/pkgs/development/libraries/protobuf/27.nix
+++ b/pkgs/development/libraries/protobuf/27.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix ({
-  version = "27.2";
-  hash = "sha256-9avetEoB51WblGRy/7FTmhCb06Vi1JfwWv2dxJvna2U=";
+  version = "27.5";
+  hash = "sha256-wUXvdlz19VYpFGU9o0pap/PrwE2AkopLZJVUqfEpJVI=";
 } // args)
diff --git a/pkgs/development/libraries/protobuf/28.nix b/pkgs/development/libraries/protobuf/28.nix
new file mode 100644
index 0000000000000..215182b3f45ee
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/28.nix
@@ -0,0 +1,9 @@
+{ callPackage, ... }@args:
+
+callPackage ./generic.nix (
+  {
+    version = "28.0";
+    hash = "sha256-dAyXtBPeZAhmAOWbG1Phh57fqMmkH2AbDUr+8A+irJQ=";
+  }
+  // args
+)
diff --git a/pkgs/development/libraries/protobuf/generic-v3.nix b/pkgs/development/libraries/protobuf/generic-v3.nix
index 9dc7f70c2fe20..cfcaa55515264 100644
--- a/pkgs/development/libraries/protobuf/generic-v3.nix
+++ b/pkgs/development/libraries/protobuf/generic-v3.nix
@@ -25,7 +25,7 @@ mkProtobufDerivation = buildProtobuf: stdenv: stdenv.mkDerivation {
     chmod -R a+w gmock
     chmod -R a+w googletest
     ln -s ../googletest gmock/gtest
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/google/protobuf/testing/googletest.cc \
       --replace 'tmpnam(b)' '"'$TMPDIR'/foo"'
   '';
diff --git a/pkgs/development/libraries/protobuf/generic.nix b/pkgs/development/libraries/protobuf/generic.nix
index e29cbe6d73d36..0b52ea7de22ea 100644
--- a/pkgs/development/libraries/protobuf/generic.nix
+++ b/pkgs/development/libraries/protobuf/generic.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
     inherit hash;
   };
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace src/google/protobuf/testing/googletest.cc \
       --replace 'tmpnam(b)' '"'$TMPDIR'/foo"'
   '';
@@ -85,7 +85,7 @@ stdenv.mkDerivation (finalAttrs: {
   # https://hydra.nixos.org/build/235677717/nixlog/4/tail
   # Also AnyTest.TestPackFromSerializationExceedsSizeLimit fails on 32-bit platforms
   # https://github.com/protocolbuffers/protobuf/issues/8460
-  doCheck = !(stdenv.isDarwin && lib.versionAtLeast version "23") && !stdenv.hostPlatform.is32bit;
+  doCheck = !(stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "23") && !stdenv.hostPlatform.is32bit;
 
   passthru = {
     tests = {
@@ -108,7 +108,7 @@ stdenv.mkDerivation (finalAttrs: {
     license = lib.licenses.bsd3;
     platforms = lib.platforms.all;
     homepage = "https://protobuf.dev/";
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     mainProgram = "protoc";
   };
 })
diff --git a/pkgs/development/libraries/pslib/default.nix b/pkgs/development/libraries/pslib/default.nix
index f91f55530aed7..13a2b17a3e01d 100644
--- a/pkgs/development/libraries/pslib/default.nix
+++ b/pkgs/development/libraries/pslib/default.nix
@@ -3,18 +3,18 @@
 
 stdenv.mkDerivation rec {
   pname = "pslib";
-  version = "0.4.6";
+  version = "0.4.8";
 
   src = fetchurl {
     name = "${pname}-snixource-${version}.tar.gz";
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "0m191ckqj1kj2yvxiilqw26x4vrn7pnlc2vy636yphjxr02q8bk4";
+    sha256 = "sha256-gaWNvBLuUUy0o+HWCOyG6KmzxDrYCY6PV3WbA/jjH64=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ zlib libpng libjpeg giflib libtiff ];
 
-  env = lib.optionalAttrs stdenv.isDarwin {
+  env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
     NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
   };
 
diff --git a/pkgs/development/libraries/psqlodbc/default.nix b/pkgs/development/libraries/psqlodbc/default.nix
index d8c2b3dec1a4d..18e6bc3b0f7de 100644
--- a/pkgs/development/libraries/psqlodbc/default.nix
+++ b/pkgs/development/libraries/psqlodbc/default.nix
@@ -1,26 +1,41 @@
-{ lib, stdenv, fetchurl, libiodbc, postgresql, openssl }:
+{ lib, stdenv, fetchurl, postgresql, openssl
+, withLibiodbc ? false, libiodbc
+, withUnixODBC ? true, unixODBC
+}:
+
+assert lib.xor withLibiodbc withUnixODBC;
 
 stdenv.mkDerivation rec {
   pname = "psqlodbc";
   version = "16.00.0000";
 
   src = fetchurl {
-    url = "https://ftp.postgresql.org/pub/odbc/versions/src/psqlodbc-${version}.tar.gz";
+    url = "https://ftp.postgresql.org/pub/odbc/versions.old/src/${pname}-${version}.tar.gz";
     hash = "sha256-r9iS+J0uzujT87IxTxvVvy0CIBhyxuNDHlwxCW7KTIs=";
   };
 
-  buildInputs = [ libiodbc postgresql openssl ];
+  buildInputs = [
+    postgresql
+    openssl
+  ]
+  ++ lib.optional withLibiodbc libiodbc
+  ++ lib.optional withUnixODBC unixODBC;
+
+  passthru = lib.optionalAttrs withUnixODBC {
+    fancyName = "PostgreSQL";
+    driver = "lib/psqlodbcw.so";
+  };
 
   configureFlags = [
-    "--with-iodbc=${libiodbc}"
     "--with-libpq=${lib.getDev postgresql}/bin/pg_config"
-  ];
+  ]
+  ++ lib.optional withLibiodbc "--with-iodbc=${libiodbc}";
 
   meta = with lib; {
     homepage = "https://odbc.postgresql.org/";
     description = "ODBC driver for PostgreSQL";
     license = licenses.lgpl2;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ];
+    platforms = platforms.unix;
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/pth/default.nix b/pkgs/development/libraries/pth/default.nix
index bbbc5017c410e..3d4c056b71dd5 100644
--- a/pkgs/development/libraries/pth/default.nix
+++ b/pkgs/development/libraries/pth/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj";
   };
 
-  preConfigure = lib.optionalString stdenv.isAarch32 ''
+  preConfigure = lib.optionalString stdenv.hostPlatform.isAarch32 ''
     configureFlagsArray=("CFLAGS=-DJB_SP=8 -DJB_PC=9")
   '' + lib.optionalString (stdenv.hostPlatform.libc == "glibc") ''
     configureFlagsArray+=("ac_cv_check_sjlj=ssjlj")
diff --git a/pkgs/development/libraries/pulseaudio-qt/default.nix b/pkgs/development/libraries/pulseaudio-qt/default.nix
index 9605b5875ec30..0db185b20b707 100644
--- a/pkgs/development/libraries/pulseaudio-qt/default.nix
+++ b/pkgs/development/libraries/pulseaudio-qt/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: {
   version = "1.3.0";
 
   src = fetchurl {
-    url = "mirror://kde/stable/${finalAttrs.pname}/${finalAttrs.pname}-${lib.versions.majorMinor finalAttrs.version}.tar.xz";
+    url = "mirror://kde/stable/pulseaudio-qt/pulseaudio-qt-${lib.versions.majorMinor finalAttrs.version}.tar.xz";
     sha256 = "1i4yb0v1mmhih8c2i61hybg6q60qys3pc5wbjb7a0vwl1mihgsxw";
   };
 
diff --git a/pkgs/development/libraries/py3c/default.nix b/pkgs/development/libraries/py3c/default.nix
index 11ccba4c9ee36..32e7d12491187 100644
--- a/pkgs/development/libraries/py3c/default.nix
+++ b/pkgs/development/libraries/py3c/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, python3 }:
+{ lib, stdenv, fetchFromGitHub, python311 }:
 
 stdenv.mkDerivation rec {
   pname = "py3c";
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   nativeCheckInputs = [
-    python3
+    python311
   ];
 
   checkTarget = "test-python";
diff --git a/pkgs/development/libraries/python-qt/default.nix b/pkgs/development/libraries/python-qt/default.nix
index 404aa4921c4ef..4f417c5e15e30 100644
--- a/pkgs/development/libraries/python-qt/default.nix
+++ b/pkgs/development/libraries/python-qt/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "python-qt";
-  version = "3.5.2";
+  version = "3.5.4";
 
   src = fetchFromGitHub {
     owner = "MeVisLab";
     repo = "pythonqt";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-Mpi1pAPS/UuzaBK7I1kI0HlS3dphcKiVXIPuJwdEDXM=";
+    hash = "sha256-uzOSm1Zcm5La0mDAbJko5YtxJ4WesPr9lRas+cwhNH4=";
   };
 
   nativeBuildInputs = [
@@ -44,11 +44,14 @@ stdenv.mkDerivation (finalAttrs: {
     cp -r ./extensions $out/include/PythonQt
   '';
 
-  preFixup = lib.optionalString stdenv.isDarwin ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id \
       $out/lib/libPythonQt-Qt5-Python3.${python3.sourceVersion.minor}.dylib \
       $out/lib/libPythonQt-Qt5-Python3.${python3.sourceVersion.minor}.dylib
-    install_name_tool -id \
+    install_name_tool -change \
+               libPythonQt-Qt5-Python3.${python3.sourceVersion.minor}.3.dylib \
+      $out/lib/libPythonQt-Qt5-Python3.${python3.sourceVersion.minor}.3.dylib \
+      -id \
       $out/lib/libPythonQt_QtAll-Qt5-Python3.${python3.sourceVersion.minor}.dylib \
       $out/lib/libPythonQt_QtAll-Qt5-Python3.${python3.sourceVersion.minor}.dylib
   '';
diff --git a/pkgs/development/libraries/qca/default.nix b/pkgs/development/libraries/qca/default.nix
index 66cdfe28eb311..a8651c9c2a5f3 100644
--- a/pkgs/development/libraries/qca/default.nix
+++ b/pkgs/development/libraries/qca/default.nix
@@ -4,11 +4,11 @@ let
   isQt6 = lib.versions.major qtbase.version == "6";
 in stdenv.mkDerivation rec {
   pname = "qca";
-  version = "2.3.8";
+  version = "2.3.9";
 
   src = fetchurl {
     url = "mirror://kde/stable/qca/${version}/qca-${version}.tar.xz";
-    sha256 = "sha256-SHWcqGoCAkYdkIumYTQ4DMO7fSD+08AxufwCiXlqgmQ=";
+    sha256 = "sha256-xVXVKYzde2uv4rH5YQbzDPpUOiPUWdUMipHqwzxHbk4=";
   };
 
   buildInputs = [ openssl qtbase qt5compat ];
diff --git a/pkgs/development/libraries/qgnomeplatform/default.nix b/pkgs/development/libraries/qgnomeplatform/default.nix
index 4c75b475c17cb..6e489f69b72c6 100644
--- a/pkgs/development/libraries/qgnomeplatform/default.nix
+++ b/pkgs/development/libraries/qgnomeplatform/default.nix
@@ -10,7 +10,6 @@
 , gtk3
 , qtbase
 , qtwayland
-, pantheon
 , substituteAll
 , gsettings-desktop-schemas
 , useQt6 ? false
@@ -73,7 +72,7 @@ stdenv.mkDerivation rec {
     description = "QPlatformTheme for a better Qt application inclusion in GNOME";
     homepage = "https://github.com/FedoraQt/QGnomePlatform";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/qhull/default.nix b/pkgs/development/libraries/qhull/default.nix
index a7f1bc2711554..998575bb166c1 100644
--- a/pkgs/development/libraries/qhull/default.nix
+++ b/pkgs/development/libraries/qhull/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   meta = with lib; {
     homepage = "http://www.qhull.org/";
diff --git a/pkgs/development/libraries/qmlbox2d/default.nix b/pkgs/development/libraries/qmlbox2d/default.nix
index 95827b630f1a7..7f7613d7f05fa 100644
--- a/pkgs/development/libraries/qmlbox2d/default.nix
+++ b/pkgs/development/libraries/qmlbox2d/default.nix
@@ -12,7 +12,7 @@ let
       rev = "v${version}";
       hash = "sha256-Z2J17YMzQNZqABIa5eyJDT7BWfXveymzs+DWsrklPIs=";
     };
-    sourceRoot = "source/Box2D";
+    sourceRoot = "${src.name}/Box2D";
     cmakeFlags = old.cmakeFlags or [ ] ++ [
       (cmakeBool "BOX2D_INSTALL" true)
       (cmakeBool "BOX2D_BUILD_SHARED" true)
diff --git a/pkgs/development/libraries/qmltermwidget/default.nix b/pkgs/development/libraries/qmltermwidget/default.nix
index 0984912463e1c..6ba9418a6e205 100644
--- a/pkgs/development/libraries/qmltermwidget/default.nix
+++ b/pkgs/development/libraries/qmltermwidget/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
   buildInputs = [
     qtbase
     qtmultimedia
-  ] ++ lib.optional stdenv.isDarwin utmp;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin utmp;
 
   patches = [
     # Changes required to make it compatible with lomiri-terminal-app
diff --git a/pkgs/development/libraries/qpdf/default.nix b/pkgs/development/libraries/qpdf/default.nix
index e3772dbb27870..4a9e520f2a979 100644
--- a/pkgs/development/libraries/qpdf/default.nix
+++ b/pkgs/development/libraries/qpdf/default.nix
@@ -11,23 +11,36 @@
 , pdfmixtool
 , pdfslicer
 , python3
+, testers
+, versionCheckHook
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "qpdf";
-  version = "11.9.0";
+  version = "11.9.1";
 
   src = fetchFromGitHub {
     owner = "qpdf";
     repo = "qpdf";
-    rev = "v${version}";
-    hash = "sha256-HD7+2TBDLBIt+VaPO5WgnDjNZOj8naltFmYdYzOIn+4=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-DhrOKjUPgNo61db8av0OTfM8mCNebQocQWtTWdt002s=";
   };
 
+  outputs = [
+    "bin"
+    "doc"
+    "lib"
+    "man"
+    "out"
+  ];
+
   nativeBuildInputs = [ cmake perl ];
 
   buildInputs = [ zlib libjpeg ];
 
+  nativeInstallCheckInputs = [ versionCheckHook ];
+  doInstallCheck = true;
+
   preConfigure = ''
     patchShebangs qtest/bin/qtest-driver
     patchShebangs run-qtest
@@ -38,6 +51,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   passthru.tests = {
+    pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; };
     inherit (python3.pkgs) pikepdf;
     inherit
       cups-filters
@@ -46,12 +60,14 @@ stdenv.mkDerivation rec {
     ;
   };
 
-  meta = with lib; {
+  meta = {
     homepage = "https://qpdf.sourceforge.io/";
     description = "C++ library and set of programs that inspect and manipulate the structure of PDF files";
-    license = licenses.asl20; # as of 7.0.0, people may stay at artistic2
-    maintainers = with maintainers; [ abbradar ];
-    platforms = platforms.all;
-    changelog = "https://github.com/qpdf/qpdf/blob/v${version}/ChangeLog";
+    license = lib.licenses.asl20; # as of 7.0.0, people may stay at artistic2
+    maintainers = with lib.maintainers; [ abbradar ];
+    mainProgram = "qpdf";
+    platforms = lib.platforms.all;
+    changelog = "https://github.com/qpdf/qpdf/blob/v${finalAttrs.version}/ChangeLog";
+    pkgConfigModules = [ "libqpdf" ];
   };
-}
+})
diff --git a/pkgs/development/libraries/qrcodegen/default.nix b/pkgs/development/libraries/qrcodegen/default.nix
deleted file mode 100644
index 53ed6eeb80ec1..0000000000000
--- a/pkgs/development/libraries/qrcodegen/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "qrcodegen";
-  version = "1.8.0";
-
-  src = fetchFromGitHub {
-    owner = "nayuki";
-    repo = "QR-Code-generator";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-aci5SFBRNRrSub4XVJ2luHNZ2pAUegjgQ6pD9kpkaTY=";
-  };
-
-  sourceRoot = "${finalAttrs.src.name}/c";
-
-  nativeBuildInputs = lib.optionals stdenv.cc.isClang [
-    stdenv.cc.cc.libllvm.out
-  ];
-
-  makeFlags = lib.optionals stdenv.cc.isClang [ "AR=llvm-ar" ];
-
-  doCheck = true;
-  checkPhase = ''
-    runHook preCheck
-
-    ./qrcodegen-test
-
-    runHook postCheck
-  '';
-
-  installPhase = ''
-    runHook preInstall
-
-    install -Dt $out/lib/ libqrcodegen.a
-    install -Dt $out/include/qrcodegen/ qrcodegen.h
-
-    runHook postInstall
-  '';
-
-  meta = {
-    homepage = "https://www.nayuki.io/page/qr-code-generator-library";
-    description = "High-quality QR Code generator library in many languages";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
-# TODO: build the other languages
-# TODO: multiple outputs
diff --git a/pkgs/development/libraries/qrencode/default.nix b/pkgs/development/libraries/qrencode/default.nix
index 83c20fcd51207..8a52fce9c74a2 100644
--- a/pkgs/development/libraries/qrencode/default.nix
+++ b/pkgs/development/libraries/qrencode/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation (finalAttrs: rec {
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ libiconv libpng ]
-    ++ lib.optionals stdenv.isDarwin [ libobjc ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libobjc ];
 
   nativeCheckInputs = [ SDL2 ];
 
@@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: rec {
       such as a mobile phone with CCD.
     '';
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ adolfogc yana ];
+    maintainers = [ ];
     platforms = platforms.all;
     mainProgram = "qrencode";
   };
diff --git a/pkgs/development/libraries/qrupdate/default.nix b/pkgs/development/libraries/qrupdate/default.nix
index 12531286d33d3..a3ccff5c10938 100644
--- a/pkgs/development/libraries/qrupdate/default.nix
+++ b/pkgs/development/libraries/qrupdate/default.nix
@@ -30,6 +30,11 @@ stdenv.mkDerivation (finalAttrs: {
     ])}"
   ];
 
+  # https://github.com/mpimd-csc/qrupdate-ng/issues/4
+  patches = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
+    ./disable-zch1dn-test.patch
+  ];
+
   doCheck = true;
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/qrupdate/disable-zch1dn-test.patch b/pkgs/development/libraries/qrupdate/disable-zch1dn-test.patch
new file mode 100644
index 0000000000000..9953f7b43d7a4
--- /dev/null
+++ b/pkgs/development/libraries/qrupdate/disable-zch1dn-test.patch
@@ -0,0 +1,13 @@
+diff --git i/test/tch1dn.f w/test/tch1dn.f
+index 25ec990..3f83e7e 100644
+--- i/test/tch1dn.f
++++ w/test/tch1dn.f
+@@ -34,8 +34,6 @@ c
+       call dtest(n)
+       write (*,*) 'cch1dn test:'
+       call ctest(n)
+-      write (*,*) 'zch1dn test:'
+-      call ztest(n)
+ 
+       call pstats
+       end program
diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix
index 69adf65643d02..0d8df9b316b8b 100644
--- a/pkgs/development/libraries/qscintilla/default.nix
+++ b/pkgs/development/libraries/qscintilla/default.nix
@@ -10,7 +10,7 @@
 }:
 
 let
-  stdenv' = if stdenv.isDarwin then
+  stdenv' = if stdenv.hostPlatform.isDarwin then
     darwin.apple_sdk_11_0.stdenv
   else
     stdenv
@@ -28,10 +28,10 @@ in stdenv'.mkDerivation rec {
 
   buildInputs = [ qtbase ];
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ qtmacextras ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ qtmacextras ];
 
   nativeBuildInputs = [ unzip qmake ]
-    ++ lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
 
   # Make sure that libqscintilla2.so is available in $out/lib since it is expected
   # by some packages such as sqlitebrowser
@@ -71,6 +71,6 @@ in stdenv'.mkDerivation rec {
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.unix;
     # ld: library not found for -lcups
-    broken = stdenv.isDarwin && lib.versionAtLeast qtbase.version "6";
+    broken = stdenv.hostPlatform.isDarwin && lib.versionAtLeast qtbase.version "6";
   };
 }
diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix
index dabb77ea0c85d..2f57b1c62de48 100644
--- a/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -23,12 +23,12 @@ Check for any minor version changes.
 
 let
 
-  srcs = import ./srcs.nix { inherit lib fetchgit fetchFromGitHub; } // { __attrsFailEvaluation = true; };
+  srcs = import ./srcs.nix { inherit lib fetchgit fetchFromGitHub; };
 
   qtCompatVersion = srcs.qtbase.version;
 
   patches = {
-    qtbase = lib.optionals stdenv.isDarwin [
+    qtbase = lib.optionals stdenv.hostPlatform.isDarwin [
       ./qtbase.patch.d/0001-qtbase-mkspecs-mac.patch
 
       # Patch framework detection to support X.framework/X.tbd,
@@ -36,14 +36,6 @@ let
       ./qtbase.patch.d/0012-qtbase-tbd-frameworks.patch
 
       ./qtbase.patch.d/0014-aarch64-darwin.patch
-
-      # Fix typo that breaks build on Darwin
-      # FIXME: remove this once merged upstream
-      # See: https://invent.kde.org/qt/qt/qtbase/-/merge_requests/325
-      (fetchpatch {
-        url = "https://invent.kde.org/qt/qt/qtbase/-/commit/e84c0df50f51c61aa49b47823582b0f8de406e3d.patch";
-        hash = "sha256-d1RIY03E71aMzOOVtcIaMeariki/72QRekUne6P2D3M=";
-      })
     ] ++ [
       ./qtbase.patch.d/0003-qtbase-mkspecs.patch
       ./qtbase.patch.d/0004-qtbase-replace-libdir.patch
@@ -71,7 +63,7 @@ let
         hash = "sha256-UEvIXzn387f9BAeBdhheStD/4M7en+rmqX8C6gstl6k=";
       })
     ];
-    qtmultimedia = lib.optionals stdenv.isDarwin [
+    qtmultimedia = lib.optionals stdenv.hostPlatform.isDarwin [
       # build patch for qtmultimedia with xcode 15
       (fetchpatch {
         url = "https://raw.githubusercontent.com/Homebrew/formula-patches/3f509180/qt5/qt5-qtmultimedia-xcode15.patch";
@@ -192,7 +184,7 @@ let
       # See: https://bugreports.qt.io/browse/QTBUG-124375
       # Backport of: https://code.qt.io/cgit/qt/qtwebengine-chromium.git/commit/?id=a766045f65f934df3b5f1aa63bc86fbb3e003a09
       ./qtwebengine-ninja-1.12.patch
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       ./qtwebengine-darwin-no-platform-check.patch
       ./qtwebengine-mac-dont-set-dsymutil-path.patch
       ./qtwebengine-darwin-checks.patch
@@ -226,7 +218,7 @@ let
       ./qtwebkit.patch
       ./qtwebkit-icu68.patch
       ./qtwebkit-cstdint.patch
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       ./qtwebkit-darwin-no-readline.patch
       ./qtwebkit-darwin-no-qos-classes.patch
     ];
@@ -256,7 +248,7 @@ let
         inherit (srcs.qtbase) src version;
         patches = patches.qtbase;
         inherit bison cups harfbuzz libGL;
-        withGtk3 = !stdenv.isDarwin; inherit dconf gtk3;
+        withGtk3 = !stdenv.hostPlatform.isDarwin; inherit dconf gtk3;
         inherit developerBuild decryptSslTraffic;
         inherit (darwin.apple_sdk_11_0.frameworks) AGL AppKit ApplicationServices AVFoundation Carbon Cocoa CoreAudio CoreBluetooth
           CoreLocation CoreServices DiskArbitration Foundation OpenGL MetalKit IOKit;
@@ -319,10 +311,10 @@ let
         # clang is pinned to clang 15. That also makes fixing the second set of errors unnecessary.
         stdenv =
           let stdenv' = if stdenv.cc.isClang then overrideLibcxx llvmPackages_15.stdenv else stdenv;
-          in if stdenv'.isDarwin then overrideSDK stdenv' "11.0" else stdenv';
+          in if stdenv'.hostPlatform.isDarwin then overrideSDK stdenv' "11.0" else stdenv';
         inherit (srcs.qtwebengine) version;
         python = python3;
-        inherit (darwin) cctools xnu;
+        inherit (darwin) xnu;
         inherit (darwin.apple_sdk_11_0) libpm libunwind;
         inherit (darwin.apple_sdk_11_0.libs) sandbox;
         inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices AVFoundation Foundation ForceFeedback GameController AppKit
@@ -351,8 +343,8 @@ let
         qtscript qtsensors qtserialport qtsvg qttools qttranslations
         qtvirtualkeyboard qtwebchannel qtwebengine qtwebsockets
         qtwebview qtx11extras qtxmlpatterns qtlottie qtdatavis3d
-      ] ++ lib.optional (!stdenv.isDarwin) qtwayland
-        ++ lib.optional (stdenv.isDarwin) qtmacextras);
+      ] ++ lib.optional (!stdenv.hostPlatform.isDarwin) qtwayland
+        ++ lib.optional (stdenv.hostPlatform.isDarwin) qtmacextras);
 
       qmake = callPackage ({ qtbase }: makeSetupHook {
         name = "qmake-hook";
@@ -368,7 +360,7 @@ let
       wrapQtAppsHook = callPackage ({ makeBinaryWrapper, qtbase, qtwayland }: makeSetupHook {
         name = "wrap-qt5-apps-hook";
         propagatedBuildInputs = [ qtbase.dev makeBinaryWrapper ]
-          ++ lib.optional stdenv.isLinux qtwayland.dev;
+          ++ lib.optional stdenv.hostPlatform.isLinux qtwayland.dev;
       } ../hooks/wrap-qt-apps-hook.sh) { };
     };
 
diff --git a/pkgs/development/libraries/qt-5/5.15/srcs-generated.json b/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
index f3281a17170ee..96c3621307c6a 100644
--- a/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
+++ b/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
@@ -16,8 +16,8 @@
   },
   "qtbase": {
     "url": "https://invent.kde.org/qt/qt/qtbase.git",
-    "rev": "0e1ff2f06ddac7c32c5a5e0b65e402c9332e56f8",
-    "sha256": "1pfby0ilkikq8802diaslnkxw8qzbp4r0f80v696wfynn973mhdd"
+    "rev": "2b9835f5c9bcfe3105b60a8dd33c1db7d8611378",
+    "sha256": "1yms1r42yps06bg8gjbzb5y7x03ks11vg97s2j7r1aplp7kjf7wm"
   },
   "qtcharts": {
     "url": "https://invent.kde.org/qt/qt/qtcharts.git",
diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
index 56607df6b4b95..f52de4e51df2e 100644
--- a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
+++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
@@ -1,40 +1,36 @@
 . @fix_qmake_libtool@
 
-qmakeFlags=( ${qmakeFlags-} )
-
 qmakePrePhase() {
-    qmakeFlags_orig=( "${qmakeFlags[@]}" )
-
     # These flags must be added _before_ the flags specified in the derivation.
-    qmakeFlags=( \
-        "PREFIX=$out" \
-        "NIX_OUTPUT_OUT=$out" \
-        "NIX_OUTPUT_DEV=${!outputDev}" \
-        "NIX_OUTPUT_BIN=${!outputBin}" \
-        "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \
-        "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \
-        "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}" \
-    )
+    prependToVar qmakeFlags \
+      "PREFIX=$out" \
+      "NIX_OUTPUT_OUT=$out" \
+      "NIX_OUTPUT_DEV=${!outputDev}" \
+      "NIX_OUTPUT_BIN=${!outputBin}" \
+      "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \
+      "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \
+      "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}"
 
     if [ -n "@debug@" ]; then
-        qmakeFlags+=( "CONFIG+=debug" )
+        prependToVar qmakeFlags "CONFIG+=debug"
     else
-        qmakeFlags+=( "CONFIG+=release" )
+        prependToVar qmakeFlags "CONFIG+=release"
     fi
 
     # do the stripping ourselves (needed for separateDebugInfo)
-    qmakeFlags+=( "CONFIG+=nostrip" )
-
-    qmakeFlags+=( "${qmakeFlags_orig[@]}" )
+    prependToVar qmakeFlags "CONFIG+=nostrip"
 }
 prePhases+=" qmakePrePhase"
 
 qmakeConfigurePhase() {
     runHook preConfigure
 
+    local flagsArray=()
+    concatTo flagsArray qmakeFlags
+
     echo "QMAKEPATH=$QMAKEPATH"
-    echo qmake "${qmakeFlags[@]}"
-    qmake "${qmakeFlags[@]}"
+    echo qmake "${flagsArray[@]}"
+    qmake "${flagsArray[@]}"
 
     if ! [[ -v enableParallelBuilding ]]; then
         enableParallelBuilding=1
diff --git a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh
index c320a79744711..099c0879ed397 100644
--- a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh
+++ b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh
@@ -1 +1 @@
-qmakeFlags+=( "QMAKE_LRELEASE=@dev@/bin/lrelease" )
+appendToVar qmakeFlags "QMAKE_LRELEASE=@dev@/bin/lrelease"
diff --git a/pkgs/development/libraries/qt-5/modules/qt3d.nix b/pkgs/development/libraries/qt-5/modules/qt3d.nix
index f394ff6627e0c..c54f4b7d7b48e 100644
--- a/pkgs/development/libraries/qt-5/modules/qt3d.nix
+++ b/pkgs/development/libraries/qt-5/modules/qt3d.nix
@@ -5,5 +5,5 @@ qtModule {
   propagatedBuildInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
   # error: use of undeclared identifier 'stat64'
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-Dstat64=stat";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-Dstat64=stat";
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
index d92287feb1511..7aef466b79371 100644
--- a/pkgs/development/libraries/qt-5/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -18,7 +18,7 @@
 , withQttranslation ? true, qttranslations ? null
 
   # options
-, libGLSupported ? !stdenv.isDarwin
+, libGLSupported ? !stdenv.hostPlatform.isDarwin
 , libGL
   # qmake detection for libmysqlclient does not seem to work when cross compiling
 , mysqlSupport ? stdenv.hostPlatform == stdenv.buildPlatform
@@ -55,7 +55,7 @@ stdenv.mkDerivation (finalAttrs: ({
     libjpeg libpng
     pcre2
   ] ++ (
-    if stdenv.isDarwin then [
+    if stdenv.hostPlatform.isDarwin then [
       # TODO: move to buildInputs, this should not be propagated.
       AGL AppKit ApplicationServices AVFoundation Carbon Cocoa CoreAudio CoreBluetooth
       CoreLocation CoreServices DiskArbitration Foundation OpenGL
@@ -75,7 +75,7 @@ stdenv.mkDerivation (finalAttrs: ({
   );
 
   buildInputs = [ python3 at-spi2-core ]
-    ++ lib.optionals (!stdenv.isDarwin)
+    ++ lib.optionals (!stdenv.hostPlatform.isDarwin)
     (
       [ libinput ]
       ++ lib.optional withGtk3 gtk3
@@ -86,7 +86,7 @@ stdenv.mkDerivation (finalAttrs: ({
     ++ lib.optional (postgresql != null) postgresql;
 
   nativeBuildInputs = [ bison flex gperf lndir perl pkg-config which ]
-    ++ lib.optionals stdenv.isDarwin [ xcbuild ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild ];
 
   } // lib.optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) {
     # `qtbase` expects to find `cc` (with no prefix) in the
@@ -99,7 +99,7 @@ stdenv.mkDerivation (finalAttrs: ({
 
   # libQt5Core links calls CoreFoundation APIs that call into the system ICU. Binaries linked
   # against it will crash during build unless they can access `/usr/share/icu/icudtXXl.dat`.
-  propagatedSandboxProfile = lib.optionalString stdenv.isDarwin ''
+  propagatedSandboxProfile = lib.optionalString stdenv.hostPlatform.isDarwin ''
     (allow file-read* (subpath "/usr/share/icu"))
   '';
 
@@ -140,7 +140,7 @@ stdenv.mkDerivation (finalAttrs: ({
 
     patchShebangs ./bin
   '' + (
-    if stdenv.isDarwin then ''
+    if stdenv.hostPlatform.isDarwin then ''
         sed -i \
             -e 's|/usr/bin/xcode-select|xcode-select|' \
             -e 's|/usr/bin/xcrun|xcrun|' \
@@ -152,8 +152,8 @@ stdenv.mkDerivation (finalAttrs: ({
                 --replace "/System/Library/Frameworks/AGL.framework/" "${AGL}/Library/Frameworks/AGL.framework/"
     '' else lib.optionalString libGLSupported ''
       sed -i mkspecs/common/linux.conf \
-          -e "/^QMAKE_INCDIR_OPENGL/ s|$|${libGL.dev or libGL}/include|" \
-          -e "/^QMAKE_LIBDIR_OPENGL/ s|$|${libGL.out}/lib|"
+          -e "/^QMAKE_INCDIR_OPENGL/ s|$|${lib.getDev libGL}/include|" \
+          -e "/^QMAKE_LIBDIR_OPENGL/ s|$|${lib.getLib libGL}/lib|"
     '' + lib.optionalString (stdenv.hostPlatform.isx86_32 && stdenv.cc.isGNU) ''
       sed -i mkspecs/common/gcc-base-unix.conf \
           -e "/^QMAKE_LFLAGS_SHLIB/ s/-shared/-shared -static-libgcc/"
@@ -217,7 +217,7 @@ stdenv.mkDerivation (finalAttrs: ({
       ''-DLIBRESOLV_SO="${stdenv.cc.libc.out}/lib/libresolv"''
       ''-DNIXPKGS_LIBXCURSOR="${libXcursor.out}/lib/libXcursor"''
     ] ++ lib.optional libGLSupported ''-DNIXPKGS_MESA_GL="${libGL.out}/lib/libGL"''
-    ++ lib.optional stdenv.isLinux "-DUSE_X11"
+    ++ lib.optional stdenv.hostPlatform.isLinux "-DUSE_X11"
     ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-darwin") [
       # ignore "is only available on macOS 10.12.2 or newer" in obj-c code
       "-Wno-error=unguarded-availability"
@@ -318,7 +318,7 @@ stdenv.mkDerivation (finalAttrs: ({
     ''-${lib.optionalString (!buildTests) "no"}make tests''
   ]
     ++ (
-      if stdenv.isDarwin then [
+      if stdenv.hostPlatform.isDarwin then [
       "-no-fontconfig"
       "-qt-freetype"
       "-qt-libpng"
diff --git a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
index 81efb4bee04b5..d61619613eba8 100644
--- a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
@@ -2,11 +2,11 @@
 
 qtModule {
   pname = "qtconnectivity";
-  buildInputs = lib.optional stdenv.isLinux bluez;
+  buildInputs = lib.optional stdenv.hostPlatform.isLinux bluez;
   propagatedBuildInputs = [
     qtbase
     qtdeclarative
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     IOBluetooth
   ];
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/qt-5/modules/qtdatavis3d.nix b/pkgs/development/libraries/qt-5/modules/qtdatavis3d.nix
index d79320ea139fe..e89a735d77b8f 100644
--- a/pkgs/development/libraries/qt-5/modules/qtdatavis3d.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtdatavis3d.nix
@@ -5,5 +5,5 @@ qtModule {
   propagatedBuildInputs = [ qtbase qtdeclarative ];
   outputs = [ "out" "dev" "bin" ];
   # error: use of undeclared identifier 'stat64'
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-Dstat64=stat";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-Dstat64=stat";
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix b/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
index f4249b7f9505a..39a6b84bf2383 100644
--- a/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
@@ -1,6 +1,4 @@
-{ lib
-, stdenv
-, qtModule, python3, qtbase, qtsvg }:
+{ qtModule, python3, qtbase, qtsvg }:
 
 qtModule {
   pname = "qtdeclarative";
diff --git a/pkgs/development/libraries/qt-5/modules/qtgamepad.nix b/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
index 3985726731710..8d0a0e2177fad 100644
--- a/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtgamepad.nix
@@ -3,7 +3,7 @@
 qtModule {
   pname = "qtgamepad";
   propagatedBuildInputs = [ qtbase qtdeclarative ]
-    ++ lib.optional stdenv.isDarwin GameController;
+    ++ lib.optional stdenv.hostPlatform.isDarwin GameController;
   buildInputs = [ ];
   nativeBuildInputs = [ pkg-config ];
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/qt-5/modules/qtimageformats.nix b/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
index 4775bb0b0383f..ae9b62ddc35d9 100644
--- a/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , qtModule
 , qtbase
 , libwebp
diff --git a/pkgs/development/libraries/qt-5/modules/qtlocation.nix b/pkgs/development/libraries/qt-5/modules/qtlocation.nix
index 338911a5afd5f..35627af0c6859 100644
--- a/pkgs/development/libraries/qt-5/modules/qtlocation.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtlocation.nix
@@ -4,7 +4,7 @@ qtModule {
   pname = "qtlocation";
   propagatedBuildInputs = [ qtbase qtmultimedia ];
   outputs = [ "bin" "out" "dev" ];
-  qmakeFlags = lib.optionals stdenv.isDarwin [
+  qmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
      # boost uses std::auto_ptr which has been disabled in clang with libcxx
      # This flag re-enables this feature
      # https://libcxx.llvm.org/docs/UsingLibcxx.html#c-17-specific-configuration-macros
diff --git a/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix b/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
index d5dc16c528233..0346ca23c5e2c 100644
--- a/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
@@ -17,8 +17,8 @@ qtModule {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ gstreamer gst-plugins-base ]
     # https://github.com/NixOS/nixpkgs/pull/169336 regarding libpulseaudio
-    ++ lib.optionals stdenv.isLinux [ libpulseaudio alsa-lib wayland ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libpulseaudio alsa-lib wayland ];
   outputs = [ "bin" "dev" "out" ];
   qmakeFlags = [ "GST_VERSION=1.0" ];
-  NIX_LDFLAGS = lib.optionalString (stdenv.isDarwin) "-lobjc";
+  NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.isDarwin) "-lobjc";
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtserialport.nix b/pkgs/development/libraries/qt-5/modules/qtserialport.nix
index 7907f91b986b2..3d5c00a3575e7 100644
--- a/pkgs/development/libraries/qt-5/modules/qtserialport.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtserialport.nix
@@ -3,5 +3,5 @@
 qtModule {
   pname = "qtserialport";
   propagatedBuildInputs = [ qtbase ];
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isLinux "-DNIXPKGS_LIBUDEV=\"${lib.getLib systemd}/lib/libudev\"";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isLinux "-DNIXPKGS_LIBUDEV=\"${lib.getLib systemd}/lib/libudev\"";
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtspeech.nix b/pkgs/development/libraries/qt-5/modules/qtspeech.nix
index 94e66cf400447..d60a12f3854d0 100644
--- a/pkgs/development/libraries/qt-5/modules/qtspeech.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtspeech.nix
@@ -1,9 +1,9 @@
-{ lib, qtModule, stdenv, speechd, pkg-config }:
+{ lib, qtModule, stdenv, speechd-minimal, pkg-config }:
 
 qtModule {
   pname = "qtspeech";
   propagatedBuildInputs = [ ];
-  buildInputs = lib.optionals stdenv.isLinux [ speechd ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ speechd-minimal ];
   nativeBuildInputs = [ pkg-config ];
   outputs = [ "out" "dev" ];
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qttools.nix b/pkgs/development/libraries/qt-5/modules/qttools.nix
index 37e4348ed2c23..b728620362f98 100644
--- a/pkgs/development/libraries/qt-5/modules/qttools.nix
+++ b/pkgs/development/libraries/qt-5/modules/qttools.nix
@@ -32,11 +32,11 @@ qtModule {
     "bin/qthelpconverter"
     "bin/lprodump"
     "bin/qdistancefieldgenerator"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "bin/macdeployqt"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && qtdeclarative != null) ''-DNIXPKGS_QMLIMPORTSCANNER="${qtdeclarative.dev}/bin/qmlimportscanner"'';
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && qtdeclarative != null) ''-DNIXPKGS_QMLIMPORTSCANNER="${qtdeclarative.dev}/bin/qmlimportscanner"'';
 
   setupHook = ../hooks/qttools-setup-hook.sh;
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
index b2715fbe7502c..75149cfb5a8ba 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
@@ -1,5 +1,7 @@
 { qtModule
 , qtdeclarative, qtquickcontrols, qtlocation, qtwebchannel
+, fetchpatch
+, fetchpatch2
 
 , bison, flex, git, gperf, ninja, pkg-config, python, which
 , nodejs, perl
@@ -23,12 +25,12 @@
 , ImageCaptureCore, CoreBluetooth, IOBluetooth, CoreWLAN, Quartz, Cocoa, LocalAuthentication
 , MediaPlayer, MediaAccessibility, SecurityInterface, Vision, CoreML, OpenDirectory, Accelerate
 , cups, openbsm, xcbuild, writeScriptBin
-, ffmpeg_4 ? null
+, ffmpeg_7 ? null
 , lib, stdenv
 , version ? null
 , qtCompatVersion
-, pipewireSupport ? stdenv.isLinux
-, pipewire_0_2
+, pipewireSupport ? stdenv.hostPlatform.isLinux
+, pipewire
 , postPatch ? ""
 , nspr
 , lndir
@@ -63,7 +65,7 @@ qtModule ({
     pkgsBuildBuild.pkg-config
     (lib.getDev pkgsBuildTarget.targetPackages.qt5.qtquickcontrols)
     pkg-config-wrapped-without-prefix
-  ] ++ lib.optional stdenv.isDarwin xcbuild;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin xcbuild;
   doCheck = true;
   outputs = [ "bin" "dev" "out" ];
 
@@ -76,11 +78,52 @@ qtModule ({
   # which cannot be set at the same time as -Wformat-security
   hardeningDisable = [ "format" ];
 
+  patches = [
+    # Support FFmpeg 5
+    (fetchpatch2 {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt5-webengine/-/raw/14074e4d789167bd776939037fe6df8d4d7dc0b3/qt5-webengine-ffmpeg5.patch";
+      hash = "sha256-jTbJFXBPwRMzr8IeTxrv9dtS+/xDS/zR4dysV/bRg3I=";
+      stripLen = 1;
+      extraPrefix = "src/3rdparty/";
+    })
+
+    # Support FFmpeg 7
+    (fetchpatch2 {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt5-webengine/-/raw/e8fb4f86104243b90966b69cdfaa967273d834b6/qt5-webengine-ffmpeg7.patch";
+      hash = "sha256-YNeHmOVp0M5HB+b91AOxxJxl+ktBtLYVdHlq13F7xtY=";
+      stripLen = 1;
+      extraPrefix = "src/3rdparty/chromium/";
+    })
+
+    # Support PipeWire ≥ 0.3
+    (fetchpatch2 {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt5-webengine/-/raw/c9db2cd9e144bd7a5e9246f5f7a01fe52fd089ba/qt5-webengine-pipewire-0.3.patch";
+      hash = "sha256-mGexRfVDF3yjNzSi9BjavhzPtsXI0BooSr/rZ1z/BDo=";
+      stripLen = 1;
+      extraPrefix = "src/3rdparty/";
+    })
+  ];
+
   postPatch = ''
     # Patch Chromium build tools
     (
       cd src/3rdparty/chromium;
 
+      patch -p2 < ${
+        (fetchpatch { # support for building with python 3.12
+          name = "python312-imp.patch";
+          url = "https://codereview.qt-project.org/gitweb?p=qt/qtwebengine-chromium.git;a=patch;h=3664134f749f4851a14ab1953a9ee460a1fe0b68";
+          hash = "sha256-XY0dEdeuOTRMR7onmuNg1Axld8+pquKAzOfDAGSIzI4=";
+        })
+      }
+      patch -p1 < ${
+        (fetchpatch { # support for building with python 3.12
+          name = "python312-six.patch";
+          url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt5-webengine/-/raw/6b0c0e76e0934db2f84be40cb5978cee47266e78/python3.12-six.patch";
+          hash = "sha256-YgP9Sq5+zTC+U7+0hQjZokwb+fytk0UEIJztUXFhTkI=";
+        })
+      }
+
       # Manually fix unsupported shebangs
       substituteInPlace third_party/harfbuzz-ng/src/src/update-unicode-tables.make \
         --replace "/usr/bin/env -S make -f" "/usr/bin/make -f" || true
@@ -92,7 +135,7 @@ qtModule ({
   # Prevent Chromium build script from making the path to `clang` relative to
   # the build directory.  `clang_base_path` is the value of `QMAKE_CLANG_DIR`
   # from `src/core/config/mac_osx.pri`.
-  + lib.optionalString stdenv.isDarwin ''
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace ./src/3rdparty/chromium/build/toolchain/mac/BUILD.gn \
       --replace 'prefix = rebase_path("$clang_base_path/bin/", root_build_dir)' 'prefix = "$clang_base_path/bin/"'
   ''
@@ -105,13 +148,13 @@ qtModule ({
       src/core/web_engine_library_info.cpp
   ''
   # Patch library paths in Chromium sources
-  + lib.optionalString (!stdenv.isDarwin) ''
+  + lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${lib.getLib systemd}/lib/\1!' \
       src/3rdparty/chromium/device/udev_linux/udev?_loader.cc
 
     sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \
       src/3rdparty/chromium/gpu/config/gpu_info_collector_linux.cc
-  '' + lib.optionalString stdenv.isDarwin (''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin (''
     substituteInPlace src/buildtools/config/mac_osx.pri \
       --replace 'QMAKE_CLANG_DIR = "/usr"' 'QMAKE_CLANG_DIR = "${stdenv.cc}"'
 
@@ -130,6 +173,10 @@ qtModule ({
     # ld: fatal warning(s) induced error (-fatal_warnings)
     substituteInPlace src/3rdparty/chromium/build/config/compiler/BUILD.gn \
       --replace "-Wl,-fatal_warnings" ""
+
+    # Use system ffmpeg
+    echo "gn_args += use_system_ffmpeg=true" >> src/core/config/mac_osx.pri
+    echo "LIBS += -lavformat -lavcodec -lavutil" >> src/core/core_common.pri
   '') + postPatch;
 
   env = {
@@ -185,8 +232,8 @@ qtModule ({
     harfbuzz icu
 
     libevent
-    ffmpeg_4
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+    ffmpeg_7
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     dbus zlib minizip snappy nss protobuf jsoncpp
 
     # Audio formats
@@ -205,12 +252,12 @@ qtModule ({
 
   ] ++ lib.optionals pipewireSupport [
     # Pipewire
-    pipewire_0_2
+    pipewire
   ]
 
   # FIXME These dependencies shouldn't be needed but can't find a way
   # around it. Chromium pulls this in while bootstrapping GN.
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libobjc
     cctools
 
@@ -240,7 +287,7 @@ qtModule ({
     libunwind
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     cups
     libpm
     sandbox
@@ -266,7 +313,7 @@ qtModule ({
 
   postInstall = lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
     mkdir -p $out/libexec
-  '' + lib.optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.hostPlatform.isLinux ''
     cat > $out/libexec/qt.conf <<EOF
     [Paths]
     Prefix = ..
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
index bd05954ddb35d..3382bca0f9822 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
@@ -23,13 +23,13 @@ in
 qtModule {
   pname = "qtwebkit";
   propagatedBuildInputs = [ qtbase qtdeclarative qtlocation qtsensors qtwebchannel ]
-    ++ lib.optional stdenv.isDarwin qtmultimedia;
+    ++ lib.optional stdenv.hostPlatform.isDarwin qtmultimedia;
   buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base hyphen ]
-    ++ lib.optionals stdenv.isDarwin [ ICU OpenGL ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ ICU OpenGL ];
   nativeBuildInputs = [ bison flex gdb gperf perl pkg-config python3 ruby cmake ];
 
   cmakeFlags = [ "-DPORT=Qt" ]
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
       "-DQt5Multimedia_DIR=${lib.getDev qtmultimedia}/lib/cmake/Qt5Multimedia"
       "-DQt5MultimediaWidgets_DIR=${lib.getDev qtmultimedia}/lib/cmake/Qt5MultimediaWidgets"
       "-DMACOS_FORCE_SYSTEM_XML_LIBRARIES=OFF"
@@ -42,13 +42,13 @@ qtModule {
   # with gcc8, -Wclass-memaccess became part of -Wall and this too exceeds the logging limit
   ++ lib.optional stdenv.cc.isGNU "-Wno-class-memaccess"
   # with clang this warning blows the log over Hydra's limit
-  ++ lib.optional stdenv.isDarwin "-Wno-inconsistent-missing-override"
-  ++ lib.optional (!stdenv.isDarwin) ''-DNIXPKGS_LIBUDEV="${lib.getLib systemd}/lib/libudev"'');
+  ++ lib.optional stdenv.hostPlatform.isDarwin "-Wno-inconsistent-missing-override"
+  ++ lib.optional (!stdenv.hostPlatform.isDarwin) ''-DNIXPKGS_LIBUDEV="${lib.getLib systemd}/lib/libudev"'');
 
   doCheck = false; # fails 13 out of 13 tests (ctest)
 
   # remove forbidden references to $TMPDIR
-  preFixup = lib.optionalString stdenv.isLinux ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
     patchelf --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" "$out"/libexec/*
   '';
 
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebview.nix b/pkgs/development/libraries/qt-5/modules/qtwebview.nix
index fd8755390973d..9b1a290ece017 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebview.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebview.nix
@@ -3,10 +3,10 @@
 qtModule {
   pname = "qtwebview";
   propagatedBuildInputs = [ qtdeclarative qtwebengine ];
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     CoreFoundation
     WebKit
   ];
   outputs = [ "out" "dev" "bin" ];
-  NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-framework CoreFoundation -framework WebKit";
+  NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-framework CoreFoundation -framework WebKit";
 }
diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix
index c724bd21d11ff..8625dadf5233c 100644
--- a/pkgs/development/libraries/qt-6/default.nix
+++ b/pkgs/development/libraries/qt-6/default.nix
@@ -28,7 +28,7 @@ let
         inherit (self) qtModule;
         inherit srcs python3;
         stdenv =
-          if stdenv.isDarwin
+          if stdenv.hostPlatform.isDarwin
           then overrideSDK stdenv { darwinMinVersion = "11.0"; darwinSdkVersion = "11.0"; }
           else stdenv;
       });
@@ -106,7 +106,7 @@ let
             qtwebengine
             qtwebsockets
             qtwebview
-          ] ++ lib.optionals (!stdenv.isDarwin) [ qtwayland libglvnd ]))
+          ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ qtwayland libglvnd ]))
         { };
 
       qt3d = callPackage ./modules/qt3d.nix { };
@@ -152,7 +152,7 @@ let
       qtwayland = callPackage ./modules/qtwayland.nix { };
       qtwebchannel = callPackage ./modules/qtwebchannel.nix { };
       qtwebengine = callPackage ./modules/qtwebengine.nix {
-        inherit (darwin) autoSignDarwinBinariesHook bootstrap_cmds cctools xnu;
+        inherit (darwin) autoSignDarwinBinariesHook bootstrap_cmds xnu;
         inherit (darwin.apple_sdk_11_0) libpm libunwind;
         inherit (darwin.apple_sdk_11_0.libs) sandbox;
         inherit (darwin.apple_sdk_11_0.frameworks)
@@ -163,7 +163,7 @@ let
         qtModule = callPackage
           ({ qtModule }: qtModule.override {
             stdenv =
-              if stdenv.isDarwin
+              if stdenv.hostPlatform.isDarwin
               then overrideSDK stdenv { darwinMinVersion = "11.0"; darwinSdkVersion = "11.0"; }
               else stdenv;
           })
diff --git a/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh
index 130e8290a3feb..84b2fb153d9f8 100644
--- a/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh
+++ b/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh
@@ -1,33 +1,29 @@
 . @fix_qmake_libtool@
 
-qmakeFlags=(${qmakeFlags-})
-
 qmakePrePhase() {
-    qmakeFlags_orig=("${qmakeFlags[@]}")
-
     # These flags must be added _before_ the flags specified in the derivation.
     # TODO: these flags also need a patch which isn't applied
     # can we either remove these flags or update the qt5 patch?
     # "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \
-    qmakeFlags=(
-        "PREFIX=$out"
-        "NIX_OUTPUT_OUT=$out"
-        "NIX_OUTPUT_DEV=${!outputDev}"
-        "NIX_OUTPUT_BIN=${!outputBin}"
-        "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}"
-        "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}"
-    )
-
-    qmakeFlags+=("${qmakeFlags_orig[@]}")
+    prependToVar qmakeFlags \
+      "PREFIX=$out" \
+      "NIX_OUTPUT_OUT=$out" \
+      "NIX_OUTPUT_DEV=${!outputDev}" \
+      "NIX_OUTPUT_BIN=${!outputBin}" \
+      "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \
+      "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}"
 }
 prePhases+=" qmakePrePhase"
 
 qmakeConfigurePhase() {
     runHook preConfigure
 
+    local flagsArray=()
+    concatTo flagsArray qmakeFlags
+
     echo "QMAKEPATH=$QMAKEPATH"
-    echo qmake "${qmakeFlags[@]}"
-    qmake "${qmakeFlags[@]}"
+    echo qmake "${flagsArray[@]}"
+    qmake "${flagsArray[@]}"
 
     if ! [[ -v enableParallelBuilding ]]; then
         enableParallelBuilding=1
diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix
index 43c2c88ecd799..68ef06921ac91 100644
--- a/pkgs/development/libraries/qt-6/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix
@@ -3,11 +3,8 @@
 , src
 , patches ? [ ]
 , version
-, coreutils
-, buildPackages
 , bison
 , flex
-, gdb
 , gperf
 , lndir
 , perl
@@ -36,7 +33,6 @@
 , libdatrie
 , lttng-ust
 , libepoxy
-, libiconv
 , dbus
 , fontconfig
 , freetype
@@ -254,7 +250,7 @@ stdenv.mkDerivation rec {
     moveToOutput      "mkspecs/modules" "$dev"
     fixQtModulePaths  "$dev/mkspecs/modules"
     fixQtBuiltinPaths "$out" '*.pr?'
-  '' + lib.optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.hostPlatform.isLinux ''
 
     # FIXME: not sure why this isn't added automatically?
     patchelf --add-rpath "${libmysqlclient}/lib/mariadb" $out/${qtPluginPrefix}/sqldrivers/libqsqlmysql.so
diff --git a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
index e1ed990dc0b38..2a377d481c3ca 100644
--- a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
@@ -4,24 +4,27 @@
 , qtshadertools
 , openssl
 , stdenv
-, python3
 , lib
 , pkgsBuildBuild
 }:
 
 qtModule {
   pname = "qtdeclarative";
-  strictDeps = !stdenv.isDarwin; # fails to detect python3 otherwise
+
   propagatedBuildInputs = [ qtbase qtlanguageserver qtshadertools openssl ];
-  nativeBuildInputs = [ python3 ];
+  strictDeps = true;
+
   patches = [
     # prevent headaches from stale qmlcache data
     ../patches/0001-qtdeclarative-disable-qml-disk-cache.patch
     # add version specific QML import path
     ../patches/0002-qtdeclarative-also-use-versioned-qml-paths.patch
   ];
+
   cmakeFlags = [
     "-DQt6ShaderToolsTools_DIR=${pkgsBuildBuild.qt6.qtshadertools}/lib/cmake/Qt6ShaderTools"
+    # for some reason doesn't get found automatically on Darwin
+    "-DPython_EXECUTABLE=${lib.getExe pkgsBuildBuild.python3}"
   ]
   # Conditional is required to prevent infinite recursion during a cross build
   ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
diff --git a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
index 39ac1245118a8..83bcb4c2a0d4a 100644
--- a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
@@ -13,7 +13,7 @@
 , gst-plugins-good
 , gst-libav
 , gst-vaapi
-, ffmpeg_6
+, ffmpeg_7
 , libva
 , libpulseaudio
 , wayland
@@ -28,7 +28,7 @@
 qtModule {
   pname = "qtmultimedia";
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ ffmpeg_6 ]
+  buildInputs = [ ffmpeg_7 ]
     ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ libunwind orc ]
     ++ lib.optionals stdenv.hostPlatform.isLinux [ libpulseaudio alsa-lib wayland libXrandr libva ]
     ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [ elfutils ];
diff --git a/pkgs/development/libraries/qt-6/modules/qtspeech.nix b/pkgs/development/libraries/qt-6/modules/qtspeech.nix
index 15672de8b9806..3fbfa6e5d90d7 100644
--- a/pkgs/development/libraries/qt-6/modules/qtspeech.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtspeech.nix
@@ -6,14 +6,14 @@
 , pkg-config
 , flite
 , alsa-lib
-, speechd
+, speechd-minimal
 , Cocoa
 }:
 
 qtModule {
   pname = "qtspeech";
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ flite alsa-lib speechd ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ flite alsa-lib speechd-minimal ];
   propagatedBuildInputs = [ qtbase qtmultimedia ]
     ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ];
 }
diff --git a/pkgs/development/libraries/qt-6/modules/qtwayland.nix b/pkgs/development/libraries/qt-6/modules/qtwayland.nix
index b5f1c71fdd757..17679c83a23fb 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwayland.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwayland.nix
@@ -2,13 +2,48 @@
 , qtbase
 , qtdeclarative
 , wayland
+, wayland-scanner
 , pkg-config
 , libdrm
+, fetchpatch
 }:
 
 qtModule {
   pname = "qtwayland";
-  propagatedBuildInputs = [ qtbase qtdeclarative ];
+  # wayland-scanner needs to be propagated as both build
+  # (for the wayland-scanner binary) and host (for the
+  # actual wayland.xml protocol definition)
+  propagatedBuildInputs = [ qtbase qtdeclarative wayland-scanner ];
+  propagatedNativeBuildInputs = [ wayland wayland-scanner ];
   buildInputs = [ wayland libdrm ];
   nativeBuildInputs = [ pkg-config ];
+
+  patches = [
+    # Included in qtwayland 6.7.3
+    # Fixes https://bugs.kde.org/show_bug.cgi?id=489259
+    (fetchpatch {
+      url = "https://invent.kde.org/qt/qt/qtwayland/-/commit/92bcb8f6b7a852c7a5d662fc34de561692a7a454.diff";
+      sha256 = "sha256-XgGO8VnmQHLhUxTGf9CniwkCr5FsFiuUbnVP0NLNekI=";
+    })
+
+    # Included in qtwayland 6.7.3
+    # Fixes https://bugs.kde.org/show_bug.cgi?id=489072
+    (fetchpatch {
+      url = "https://invent.kde.org/qt/qt/qtwayland/-/commit/c4f91b479303dda2e49499de249018d7c66c5f99.diff";
+      sha256 = "sha256-4rUdl6WuJHONW0Uy2wjTvyvDY3bJWeRvhk3tCkaOOro=";
+    })
+
+    # Included in qtwayland 6.7.3
+    # Fixes https://bugs.kde.org/show_bug.cgi?id=489180
+    (fetchpatch {
+      url = "https://invent.kde.org/qt/qt/qtwayland/-/commit/632127d7f1d86cba4dd17361f24f9fd70a0ae44c.diff";
+      sha256 = "sha256-1EIcMj6+yIpqXAGZB3ZbrwRkl4n1o7TVP2SC1Nu1t78=";
+    })
+
+    # Update wayland.xml to version 1.23.0
+    (fetchpatch {
+      url = "https://invent.kde.org/qt/qt/qtwayland/-/commit/c2f61bc47baacf2e6a44c6c3c4e4cbf0abfa4095.diff";
+      sha256 = "sha256-ZcK/LT65oFvTzCukZB8aDYWH5L6RK5MOPs8VtpYQpq0=";
+    })
+  ];
 }
diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index 997fe0394fa25..08c061e10d7a7 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -3,6 +3,7 @@
 , qtwebchannel
 , qtpositioning
 , qtwebsockets
+, fetchpatch2
 , buildPackages
 , bison
 , coreutils
@@ -49,7 +50,7 @@
 , systemd
 , pipewire
 , gn
-, ffmpeg_4
+, ffmpeg_7
 , lib
 , stdenv
 , glib
@@ -131,6 +132,14 @@ qtModule {
 
     # Override locales install path so they go to QtWebEngine's $out
     ../patches/qtwebengine-locales-path.patch
+
+    # Support FFmpeg 7
+    (fetchpatch2 {
+      url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt6-webengine/-/raw/6bee5464ac6340e925e08c7ed023026e727ae9d5/qtwebengine-ffmpeg-7.patch";
+      hash = "sha256-OdCIu1KMW3YcpCnfUP1uD7OJRl6Iwap9X4aJhGpoaNs=";
+      stripLen = 1;
+      extraPrefix = "src/3rdparty/chromium/";
+    })
   ];
 
   postPatch = ''
@@ -228,7 +237,7 @@ qtModule {
     lcms2
 
     libevent
-    ffmpeg_4
+    ffmpeg_7
   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     dbus
     zlib
@@ -317,6 +326,6 @@ qtModule {
     # 1 hour on 32x3.6GHz -> maybe 12 hours on 4x2.4GHz
     timeout = 24 * 3600;
     # Not compatible with macOS 11 without massive patching
-    broken = stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "12";
+    broken = stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "12";
   };
 }
diff --git a/pkgs/development/libraries/qtfeedback/default.nix b/pkgs/development/libraries/qtfeedback/default.nix
index a329ece074baa..285a81ae1ac46 100644
--- a/pkgs/development/libraries/qtfeedback/default.nix
+++ b/pkgs/development/libraries/qtfeedback/default.nix
@@ -3,7 +3,6 @@
 , fetchFromGitHub
 , perl
 , qmake
-, qtbase
 , qtdeclarative
 }:
 
diff --git a/pkgs/development/libraries/qtkeychain/default.nix b/pkgs/development/libraries/qtkeychain/default.nix
index 9007129cecf51..b6744692bbe88 100644
--- a/pkgs/development/libraries/qtkeychain/default.nix
+++ b/pkgs/development/libraries/qtkeychain/default.nix
@@ -29,12 +29,12 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ cmake ]
-    ++ lib.optionals (!stdenv.isDarwin) [ pkg-config ] # for finding libsecret
+    ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ pkg-config ] # for finding libsecret
   ;
 
-  buildInputs = lib.optionals (!stdenv.isDarwin) [ libsecret ]
+  buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [ libsecret ]
     ++ [ qtbase qttools ]
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
     CoreFoundation
     Security
   ];
diff --git a/pkgs/development/libraries/qtpbfimageplugin/default.nix b/pkgs/development/libraries/qtpbfimageplugin/default.nix
index 94dc1646513c6..5005ab8243d4c 100644
--- a/pkgs/development/libraries/qtpbfimageplugin/default.nix
+++ b/pkgs/development/libraries/qtpbfimageplugin/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     # Fix plugin dir
     substituteInPlace pbfplugin.pro \
       --replace "\$\$[QT_INSTALL_PLUGINS]" "$out/$qtPluginPrefix"
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     # Fix darwin build
     substituteInPlace pbfplugin.pro \
       --replace '$$PROTOBUF/include' '${protobuf}/include' \
diff --git a/pkgs/development/libraries/qtutilities/default.nix b/pkgs/development/libraries/qtutilities/default.nix
index e9deed9d8ac18..c04d0d72e7cd3 100644
--- a/pkgs/development/libraries/qtutilities/default.nix
+++ b/pkgs/development/libraries/qtutilities/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "qtutilities";
-  version = "6.14.1";
+  version = "6.14.3";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "qtutilities";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-WUrxBlSS1Z3+tQGmAi+d3wpqutqNjPrVOxmpUy01aqU=";
+    hash = "sha256-WgZZEs3Fse+0+FLVO1GTkxqxzZPfJuxS7Ij/G0ACZSY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/quantlib/default.nix b/pkgs/development/libraries/quantlib/default.nix
index a84221b1b176a..f38d560a8e68c 100644
--- a/pkgs/development/libraries/quantlib/default.nix
+++ b/pkgs/development/libraries/quantlib/default.nix
@@ -5,17 +5,17 @@
 , boost
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "quantlib";
-  version = "1.34";
+  version = "1.35";
 
   outputs = [ "out" "dev" ];
 
   src = fetchFromGitHub {
     owner = "lballabio";
     repo = "QuantLib";
-    rev = "v${version}";
-    sha256 = "sha256-qrMaIBiDg7bFtWTDAQgAMtekb/7VrI7Ix+G59mU4WHI=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-L0cdfrVZTwyRcDnYhbmRbH53+mBt6AnrKm+in++du2M=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -36,4 +36,4 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     maintainers = [ maintainers.kupac ];
   };
-}
+})
diff --git a/pkgs/development/libraries/quarto/default.nix b/pkgs/development/libraries/quarto/default.nix
index 4cf38eda39ca6..a3a633af6c94f 100644
--- a/pkgs/development/libraries/quarto/default.nix
+++ b/pkgs/development/libraries/quarto/default.nix
@@ -19,10 +19,10 @@
 
 stdenv.mkDerivation (final: {
   pname = "quarto";
-  version = "1.4.557";
+  version = "1.5.57";
   src = fetchurl {
     url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${final.version}/quarto-${final.version}-linux-amd64.tar.gz";
-    sha256 = "sha256-RcEkmPMcfNGDmu2bQwUHvlHgM/ySQQwDgf/NpTQMxcI=";
+    sha256 = "sha256-ZBjv/Z98il8EMZe88fMKSi1YjeOZ8jEh7OxYDKUTMpY=";
   };
 
   nativeBuildInputs = [
@@ -63,7 +63,7 @@ stdenv.mkDerivation (final: {
 
   passthru.tests = {
     quarto-check = runCommand "quarto-check" {
-      nativeBuildInputs = lib.optionals stdenv.isDarwin [ sysctl ];
+      nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ sysctl ];
     } ''
       export HOME="$(mktemp -d)"
       ${quarto}/bin/quarto check
diff --git a/pkgs/development/libraries/quazip/default.nix b/pkgs/development/libraries/quazip/default.nix
index c3f1f7a7834af..b2fcad6cab877 100644
--- a/pkgs/development/libraries/quazip/default.nix
+++ b/pkgs/development/libraries/quazip/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ zlib qtbase ];
   propagatedBuildInputs = [ qt5compat ];
   nativeBuildInputs = [ cmake ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   dontWrapQtApps = true;
 
diff --git a/pkgs/development/libraries/quickder/default.nix b/pkgs/development/libraries/quickder/default.nix
index 68da796aa0a5e..c3de383980841 100644
--- a/pkgs/development/libraries/quickder/default.nix
+++ b/pkgs/development/libraries/quickder/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     owner = "arpa2";
     repo = "quick-der";
     rev = "v${version}";
-    sha256 = "sha256-f+ph5PL+uWRkswpOLDwZFWjh938wxoJ6xocJZ2WZLEk=";
+    hash = "sha256-f+ph5PL+uWRkswpOLDwZFWjh938wxoJ6xocJZ2WZLEk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/quickfix/default.nix b/pkgs/development/libraries/quickfix/default.nix
index 6644b9885c25e..bd4612c8eec16 100644
--- a/pkgs/development/libraries/quickfix/default.nix
+++ b/pkgs/development/libraries/quickfix/default.nix
@@ -1,13 +1,21 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, autoconf, automake, libtool }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  autoconf,
+  automake,
+  libtool,
+}:
 
 stdenv.mkDerivation rec {
   pname = "quickfix";
   version = "1.15.1";
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev =  "v${version}";
+    owner = "quickfix";
+    repo = "quickfix";
+    rev = "v${version}";
     sha256 = "1fgpwgvyw992mbiawgza34427aakn5zrik3sjld0i924a9d17qwg";
   };
 
@@ -21,10 +29,18 @@ stdenv.mkDerivation rec {
   ];
 
   # autoreconfHook does not work
-  nativeBuildInputs = [ autoconf automake libtool ];
+  nativeBuildInputs = [
+    autoconf
+    automake
+    libtool
+  ];
 
   enableParallelBuilding = true;
 
+  postPatch = ''
+    substituteInPlace bootstrap --replace-fail glibtoolize libtoolize
+  '';
+
   preConfigure = ''
     ./bootstrap
   '';
@@ -39,5 +55,6 @@ stdenv.mkDerivation rec {
     homepage = "http://www.quickfixengine.org";
     license = licenses.free; # similar to BSD 4-clause
     maintainers = with maintainers; [ bhipple ];
+    broken = stdenv.hostPlatform.isAarch64;
   };
 }
diff --git a/pkgs/development/libraries/quickmem/default.nix b/pkgs/development/libraries/quickmem/default.nix
index 60ea330dc014d..91b170030aaf9 100644
--- a/pkgs/development/libraries/quickmem/default.nix
+++ b/pkgs/development/libraries/quickmem/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     owner = "arpa2";
     repo = "Quick-MEM";
     rev = "v${version}";
-    sha256 = "sha256-cqg8QN4/I+zql7lVDDAgFA05Dmg4ylBTvPSPP7WATdc=";
+    hash = "sha256-cqg8QN4/I+zql7lVDDAgFA05Dmg4ylBTvPSPP7WATdc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/quictls/default.nix b/pkgs/development/libraries/quictls/default.nix
index 49dfc94993e42..1e3cb69d1f82f 100644
--- a/pkgs/development/libraries/quictls/default.nix
+++ b/pkgs/development/libraries/quictls/default.nix
@@ -119,7 +119,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ lib.optional enableSSL3 "enable-ssl3"
   # We select KTLS here instead of the configure-time detection (which we patch out).
   # KTLS should work on FreeBSD 13+ as well, so we could enable it if someone tests it.
-  ++ lib.optional (stdenv.isLinux && lib.versionAtLeast finalAttrs.version "3.0.0") "enable-ktls"
+  ++ lib.optional (stdenv.hostPlatform.isLinux && lib.versionAtLeast finalAttrs.version "3.0.0") "enable-ktls"
   ++ lib.optional stdenv.hostPlatform.isAarch64 "no-afalgeng"
   # OpenSSL needs a specific `no-shared` configure flag.
   # See https://wiki.openssl.org/index.php/Compilation_and_Installation#Configure_Options
diff --git a/pkgs/development/libraries/qwt/default.nix b/pkgs/development/libraries/qwt/default.nix
index 9a2a53587e48d..814e8f0252c1b 100644
--- a/pkgs/development/libraries/qwt/default.nix
+++ b/pkgs/development/libraries/qwt/default.nix
@@ -2,17 +2,17 @@
 
 stdenv.mkDerivation rec {
   pname = "qwt";
-  version = "6.2.0";
+  version = "6.3.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://sourceforge/qwt/qwt-${version}.tar.bz2";
-    sha256 = "sha256-kZT2UTlV0P1zAPZxWBdQZEYBl6urGpL6EnpnpLC3FTA=";
+    sha256 = "sha256-3LCFiWwoquxVGMvAjA7itOYK2nrJKdgmOfYYmFGmEpo=";
   };
 
   propagatedBuildInputs = [ qtbase qtsvg qttools ];
-  nativeBuildInputs = [ qmake ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+  nativeBuildInputs = [ qmake ] ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   postPatch = ''
     sed -e "s|QWT_INSTALL_PREFIX.*=.*|QWT_INSTALL_PREFIX = $out|g" -i qwtconfig.pri
diff --git a/pkgs/development/libraries/qxmpp/default.nix b/pkgs/development/libraries/qxmpp/default.nix
index 7ea5d6a4e72d7..98b4c0a2b7c7d 100644
--- a/pkgs/development/libraries/qxmpp/default.nix
+++ b/pkgs/development/libraries/qxmpp/default.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "qxmpp";
-  version = "1.7.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "qxmpp-project";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-8AF+deDRxipN+YMHE9vUyTaUbSJIckMkB7t3YVtupQs=";
+    sha256 = "sha256-Tp3SDOoUAnAvwkID6U63TkeLy6Is+sWn7Oy0nT1f/LQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/raft-canonical/default.nix b/pkgs/development/libraries/raft-canonical/default.nix
index 65f4b899d747e..4d60456d8ab21 100644
--- a/pkgs/development/libraries/raft-canonical/default.nix
+++ b/pkgs/development/libraries/raft-canonical/default.nix
@@ -50,6 +50,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/canonical/raft";
     license = licenses.asl20;
     platforms = platforms.linux;
-    maintainers = teams.lxc.members;
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/range-v3/default.nix b/pkgs/development/libraries/range-v3/default.nix
index 9b9c2bd39d648..a7e5fe6eb2633 100644
--- a/pkgs/development/libraries/range-v3/default.nix
+++ b/pkgs/development/libraries/range-v3/default.nix
@@ -16,9 +16,9 @@ stdenv.mkDerivation rec {
   # Building the tests currently fails on AArch64 due to internal compiler
   # errors (with GCC 9.2):
   cmakeFlags = [ "-DRANGES_ENABLE_WERROR=OFF" ]
-    ++ lib.optional stdenv.isAarch64 "-DRANGE_V3_TESTS=OFF";
+    ++ lib.optional stdenv.hostPlatform.isAarch64 "-DRANGE_V3_TESTS=OFF";
 
-  doCheck = !stdenv.isAarch64;
+  doCheck = !stdenv.hostPlatform.isAarch64;
   checkTarget = "test";
 
   meta = with lib; {
@@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/ericniebler/range-v3/releases/tag/${version}";
     license = licenses.boost;
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/rapidcheck/default.nix b/pkgs/development/libraries/rapidcheck/default.nix
index ad8252f48e8cb..ce369eb6ff3fd 100644
--- a/pkgs/development/libraries/rapidcheck/default.nix
+++ b/pkgs/development/libraries/rapidcheck/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     description = "C++ framework for property based testing inspired by QuickCheck";
     inherit (finalAttrs.src.meta) homepage;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     license = licenses.bsd2;
     pkgConfigModules = [
       "rapidcheck"
diff --git a/pkgs/development/libraries/rapidfuzz-cpp/default.nix b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
index 0a2967d0fcb1f..ad5a525456c9b 100644
--- a/pkgs/development/libraries/rapidfuzz-cpp/default.nix
+++ b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "rapidfuzz-cpp";
-  version = "3.0.4";
+  version = "3.0.5";
 
   src = fetchFromGitHub {
     owner = "rapidfuzz";
     repo = "rapidfuzz-cpp";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-urMdK+6ORHRgisppb700jaQpxLXAvXVjd8WDN7Zky3A=";
+    hash = "sha256-8s2Jd1fI8iNmFyMbCEaGZdpqvYFB1tVNZ41ICLN4AeI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/rapidjson/default.nix b/pkgs/development/libraries/rapidjson/default.nix
index edd427da725de..8e72b7748d650 100644
--- a/pkgs/development/libraries/rapidjson/default.nix
+++ b/pkgs/development/libraries/rapidjson/default.nix
@@ -1,65 +1,79 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
-, pkg-config
 , cmake
+, doxygen
+, graphviz
 , gtest
 , valgrind
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "rapidjson";
-  version = "1.1.0";
+  version = "unstable-2024-04-09";
+
+  outputs = [
+    "out"
+    "doc"
+  ];
 
   src = fetchFromGitHub {
     owner = "Tencent";
     repo = "rapidjson";
-    rev = "v${version}";
-    sha256 = "1jixgb8w97l9gdh3inihz7avz7i770gy2j2irvvlyrq3wi41f5ab";
+    rev = "ab1842a2dae061284c0a62dca1cc6d5e7e37e346";
+    hash = "sha256-kAGVJfDHEUV2qNR1LpnWq3XKBJy4hD3Swh6LX5shJpM=";
   };
 
   patches = [
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/rapidjson/raw/48402da9f19d060ffcd40bf2b2e6987212c58b0c/f/rapidjson-1.1.0-c++20.patch";
-      sha256 = "1qm62iad1xfsixv1li7qy475xc7gc04hmi2q21qdk6l69gk7mf82";
-    })
-    (fetchpatch {
-      name = "do-not-include-gtest-src-dir.patch";
-      url = "https://git.alpinelinux.org/aports/plain/community/rapidjson/do-not-include-gtest-src-dir.patch?id=9e5eefc7a5fcf5938a8dc8a3be8c75e9e6809909";
-      hash = "sha256-BjSZEwfCXA/9V+kxQ/2JPWbc26jQn35CfN8+8NW24s4=";
-    })
-    # One of these three tests reports memcpy overlap after update to glibc-2.38
-    ./test-skip-valgrind.diff
+    ./use-nixpkgs-gtest.patch
+    # https://github.com/Tencent/rapidjson/issues/2214
+    ./suppress-valgrind-failures.patch
   ];
 
   postPatch = ''
-    find -name CMakeLists.txt | xargs \
-      sed -i -e "s/-Werror//g" -e "s/-march=native//g"
+    for f in doc/Doxyfile.*; do
+      substituteInPlace $f \
+        --replace-fail "WARN_IF_UNDOCUMENTED   = YES" "WARN_IF_UNDOCUMENTED   = NO"
+    done
   '';
 
-  nativeBuildInputs = [ pkg-config cmake ];
+  nativeBuildInputs = [
+    cmake
+    doxygen
+    graphviz
+  ];
 
-  # for tests, adding gtest to checkInputs does not work
-  # https://github.com/NixOS/nixpkgs/pull/212200
-  buildInputs = [ gtest ];
-  cmakeFlags = [
-    "-DGTEST_SOURCE_DIR=${gtest.dev}/include"
+  buildInputs = [
+    gtest
+  ];
 
-    # Build rapidjson with std=c++17 so gtest 1.13.0+ works
-    # https://github.com/NixOS/nixpkgs/pull/282245#issuecomment-1951796902
-    "-DRAPIDJSON_BUILD_CXX11=OFF"
-    "-DRAPIDJSON_BUILD_CXX17=ON"
+  strictDeps = true;
+
+  cmakeFlags = [
+    (lib.cmakeBool "RAPIDJSON_BUILD_DOC" true)
+    (lib.cmakeBool "RAPIDJSON_BUILD_TESTS" true)
+    (lib.cmakeBool "RAPIDJSON_BUILD_EXAMPLES" true)
+    # gtest 1.13+ requires C++14 or later.
+    (lib.cmakeBool "RAPIDJSON_BUILD_CXX11" false)
+    (lib.cmakeBool "RAPIDJSON_BUILD_CXX17" true)
+    # Prevent -march=native
+    (lib.cmakeBool "RAPIDJSON_ENABLE_INSTRUMENTATION_OPT" false)
+    # Disable -Werror by using build type specific flags, which are
+    # added after general CMAKE_CXX_FLAGS.
+    (lib.cmakeFeature "CMAKE_CXX_FLAGS_RELEASE" "-Wno-error")
   ];
 
-  nativeCheckInputs = [ valgrind ];
-  doCheck = !stdenv.hostPlatform.isStatic && !stdenv.isDarwin;
+  doCheck = !(stdenv.hostPlatform.isStatic || stdenv.hostPlatform.isDarwin);
+
+  nativeCheckInputs = [
+    valgrind
+  ];
 
   meta = with lib; {
     description = "Fast JSON parser/generator for C++ with both SAX/DOM style API";
     homepage = "http://rapidjson.org/";
     license = licenses.mit;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ dotlambda ];
+    maintainers = with maintainers; [ dotlambda Madouura tobim ];
   };
-}
+})
diff --git a/pkgs/development/libraries/rapidjson/0001-unstable-valgrind-suppress-failures.patch b/pkgs/development/libraries/rapidjson/suppress-valgrind-failures.patch
index dd06ba6a69711..dd06ba6a69711 100644
--- a/pkgs/development/libraries/rapidjson/0001-unstable-valgrind-suppress-failures.patch
+++ b/pkgs/development/libraries/rapidjson/suppress-valgrind-failures.patch
diff --git a/pkgs/development/libraries/rapidjson/test-skip-valgrind.diff b/pkgs/development/libraries/rapidjson/test-skip-valgrind.diff
deleted file mode 100644
index a791d88699ff3..0000000000000
--- a/pkgs/development/libraries/rapidjson/test-skip-valgrind.diff
+++ /dev/null
@@ -1,7 +0,0 @@
---- a/test/unittest/CMakeLists.txt
-+++ b/test/unittest/CMakeLists.txt
-@@ -82,3 +81,0 @@
--    add_test(NAME valgrind_unittest
--        COMMAND valgrind --leak-check=full --error-exitcode=1 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest --gtest_filter=-SIMD.*
--        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
-
diff --git a/pkgs/development/libraries/rapidjson/unstable.nix b/pkgs/development/libraries/rapidjson/unstable.nix
deleted file mode 100644
index fd7ffe61ba394..0000000000000
--- a/pkgs/development/libraries/rapidjson/unstable.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, doxygen
-, graphviz
-, gtest
-, valgrind
-, buildDocs ? true
-, buildTests ? !stdenv.hostPlatform.isStatic && !stdenv.isDarwin
-, buildExamples ? true
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "rapidjson";
-  version = "unstable-2023-09-28";
-
-  outputs = [
-    "out"
-  ] ++ lib.optionals buildDocs [
-    "doc"
-  ] ++ lib.optionals buildExamples [
-    "example"
-  ];
-
-  src = fetchFromGitHub {
-    owner = "Tencent";
-    repo = "rapidjson";
-    rev = "f9d53419e912910fd8fa57d5705fa41425428c35";
-    hash = "sha256-rl7iy14jn1K2I5U2DrcZnoTQVEGEDKlxmdaOCF/3hfY=";
-  };
-
-  patches = lib.optionals buildTests [
-    ./0000-unstable-use-nixpkgs-gtest.patch
-    # https://github.com/Tencent/rapidjson/issues/2214
-    ./0001-unstable-valgrind-suppress-failures.patch
-  ];
-
-  nativeBuildInputs = [
-    cmake
-  ] ++ lib.optionals buildDocs [
-    doxygen
-    graphviz
-  ];
-
-  cmakeFlags = [
-    (lib.cmakeBool "RAPIDJSON_BUILD_DOC" buildDocs)
-    (lib.cmakeBool "RAPIDJSON_BUILD_TESTS" buildTests)
-    (lib.cmakeBool "RAPIDJSON_BUILD_EXAMPLES" buildExamples)
-    # gtest 1.13+ requires C++14 or later.
-    (lib.cmakeBool "RAPIDJSON_BUILD_CXX11" false)
-    (lib.cmakeBool "RAPIDJSON_BUILD_CXX17" true)
-  ] ++ lib.optionals buildTests [
-    (lib.cmakeFeature "GTEST_INCLUDE_DIR" "${lib.getDev gtest}")
-  ];
-
-  doCheck = buildTests;
-
-  nativeCheckInputs = [
-    gtest
-    valgrind
-  ];
-
-  postInstall = lib.optionalString buildExamples ''
-    mkdir -p $example/bin
-
-    find bin -type f -executable \
-      -not -name "perftest" \
-      -not -name "unittest" \
-      -exec cp -a {} $example/bin \;
-  '';
-
-  meta = with lib; {
-    description = "Fast JSON parser/generator for C++ with both SAX/DOM style API";
-    homepage = "http://rapidjson.org/";
-    license = licenses.mit;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ Madouura ];
-  };
-})
diff --git a/pkgs/development/libraries/rapidjson/0000-unstable-use-nixpkgs-gtest.patch b/pkgs/development/libraries/rapidjson/use-nixpkgs-gtest.patch
index df334cc912642..878182ea5a5fc 100644
--- a/pkgs/development/libraries/rapidjson/0000-unstable-use-nixpkgs-gtest.patch
+++ b/pkgs/development/libraries/rapidjson/use-nixpkgs-gtest.patch
@@ -1,28 +1,33 @@
+From b9206d360c19412d185263795d67c884feab281a Mon Sep 17 00:00:00 2001
+From: Tobias Mayer <tobim@fastmail.fm>
+Date: Mon, 29 Jul 2024 07:26:50 +0200
+Subject: [PATCH] Use nixpkgs gtest
+
+---
+ test/CMakeLists.txt | 24 ++++++------------------
+ 1 file changed, 6 insertions(+), 18 deletions(-)
+
 diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 11c1b04c..762eaa75 100644
+index 11c1b04c..3d02d475 100644
 --- a/test/CMakeLists.txt
 +++ b/test/CMakeLists.txt
-@@ -1,20 +1,14 @@
+@@ -1,20 +1,8 @@
 -find_package(GTestSrc)
++find_package(GTest REQUIRED)
 +enable_testing()
  
 -IF(GTESTSRC_FOUND)
 -    enable_testing()
-+if (WIN32 AND (NOT CYGWIN) AND (NOT MINGW))
-+    set(gtest_disable_pthreads ON)
-+    set(gtest_force_shared_crt ON)
-+endif()
++set(TEST_LIBRARIES GTest::gtest GTest::gtest_main)
  
 -    if (WIN32 AND (NOT CYGWIN) AND (NOT MINGW))
 -        set(gtest_disable_pthreads ON)
 -        set(gtest_force_shared_crt ON)
 -    endif()
-+include_directories(SYSTEM ${GTEST_INCLUDE_DIR})
- 
+-
 -    add_subdirectory(${GTEST_SOURCE_DIR} ${CMAKE_BINARY_DIR}/googletest)
 -    include_directories(SYSTEM ${GTEST_INCLUDE_DIR})
-+set(TEST_LIBRARIES gtest gtest_main)
- 
+-
 -    set(TEST_LIBRARIES gtest gtest_main)
 -
 -    add_custom_target(tests ALL)
@@ -33,3 +38,6 @@ index 11c1b04c..762eaa75 100644
 +add_custom_target(tests ALL)
 +add_subdirectory(perftest)
 +add_subdirectory(unittest)
+-- 
+2.45.2
+
diff --git a/pkgs/development/libraries/rapidxml/default.nix b/pkgs/development/libraries/rapidxml/default.nix
index 3a353b7a2bda8..c433f32728e1c 100644
--- a/pkgs/development/libraries/rapidxml/default.nix
+++ b/pkgs/development/libraries/rapidxml/default.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
     homepage = "https://rapidxml.sourceforge.net/";
     license = licenses.boost;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ cpages ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/rapidyaml/default.nix b/pkgs/development/libraries/rapidyaml/default.nix
index a51b675bd9185..bab70f5a6f566 100644
--- a/pkgs/development/libraries/rapidyaml/default.nix
+++ b/pkgs/development/libraries/rapidyaml/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "rapidyaml";
-  version = "0.7.0";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "biojppm";
     repo = pname;
     fetchSubmodules = true;
     rev = "v${version}";
-    sha256 = "sha256-VpREG75d+Rmfu8B2VTWueJtfEZwKxGUFb8E3OwVy1L4=";
+    hash = "sha256-vAYafhWo9xavM2j+mT3OGcX7ZSS25mieR/3b79BO+jA=";
   };
 
   nativeBuildInputs = [ cmake git ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     description = "Library to parse and emit YAML, and do it fast";
     homepage = "https://github.com/biojppm/rapidyaml";
     license = licenses.mit;
-    maintainers = with maintainers; [ martfont ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/raylib/default.nix b/pkgs/development/libraries/raylib/default.nix
index 64e327ec34afd..5c1b7d1dab0a4 100644
--- a/pkgs/development/libraries/raylib/default.nix
+++ b/pkgs/development/libraries/raylib/default.nix
@@ -19,6 +19,7 @@
 , includeEverything ? true
 , raylib-games
 , darwin
+, autoPatchelfHook
 }:
 let
   inherit (darwin.apple_sdk.frameworks) Carbon Cocoa OpenGL;
@@ -34,16 +35,18 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-gEstNs3huQ1uikVXOW4uoYnIDr5l8O9jgZRTX1mkRww=";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+  ] ++ lib.optional stdenv.hostPlatform.isLinux autoPatchelfHook;
 
   buildInputs = [ glfw ]
-    ++ lib.optionals stdenv.isLinux [ mesa libXi libXcursor libXrandr libXinerama ]
-    ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ mesa libXi libXcursor libXrandr libXinerama ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon Cocoa ]
     ++ lib.optional alsaSupport alsa-lib
     ++ lib.optional pulseSupport libpulseaudio;
 
-  propagatedBuildInputs = lib.optionals stdenv.isLinux [ libGLU libX11 ]
-    ++ lib.optionals stdenv.isDarwin [ OpenGL ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libGLU libX11 ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ OpenGL ];
 
   # https://github.com/raysan5/raylib/wiki/CMake-Build-Options
   cmakeFlags = [
@@ -58,20 +61,24 @@ stdenv.mkDerivation (finalAttrs: {
   patches = [
     # Patch version in CMakeLists.txt to 5.0.0
     # The library author doesn't use cmake, so when updating this package please
-    # check that the resulting library extension matches the version
-    # and remove/update this patch (resulting library name should match
-    # libraylib.so.${finalAttrs.version}
+    # check that the resulting library extension matches the package version
+    # and remove/update this patch
     (fetchpatch {
       url = "https://github.com/raysan5/raylib/commit/032cc497ca5aaca862dc926a93c2a45ed8017737.patch";
       hash = "sha256-qsX5AwyQaGoRsbdszOO7tUF9dR+AkEFi4ebNkBVHNEY=";
     })
   ];
 
+  # fix libasound.so/libpulse.so not being found
+  appendRunpaths = lib.optionals stdenv.hostPlatform.isLinux [
+    (lib.makeLibraryPath (lib.optional alsaSupport alsa-lib ++ lib.optional pulseSupport libpulseaudio))
+  ];
+
   meta = with lib; {
     description = "Simple and easy-to-use library to enjoy videogames programming";
     homepage = "https://www.raylib.com/";
     license = licenses.zlib;
-    maintainers = with maintainers; [ adamlwgriffiths ];
+    maintainers = [ ];
     platforms = platforms.all;
     changelog = "https://github.com/raysan5/raylib/blob/${finalAttrs.version}/CHANGELOG";
   };
diff --git a/pkgs/development/libraries/rdkafka/default.nix b/pkgs/development/libraries/rdkafka/default.nix
index 3b9580840f4d8..a748f3a86c575 100644
--- a/pkgs/development/libraries/rdkafka/default.nix
+++ b/pkgs/development/libraries/rdkafka/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rdkafka";
-  version = "2.4.0";
+  version = "2.5.3";
 
   src = fetchFromGitHub {
     owner = "confluentinc";
     repo = "librdkafka";
     rev = "v${version}";
-    sha256 = "sha256-RLjshOnMmCdlv73M8siIvBZ5kVG3v2XttkLVPU+BHY4=";
+    sha256 = "sha256-2AURPvhpgdIm034KEMm7Tmf8Zx/XER76aT6SiINs6wg=";
   };
 
   nativeBuildInputs = [ pkg-config python3 which ];
diff --git a/pkgs/development/libraries/re2/default.nix b/pkgs/development/libraries/re2/default.nix
index 2310ce33ea4f3..278d63702ed2f 100644
--- a/pkgs/development/libraries/re2/default.nix
+++ b/pkgs/development/libraries/re2/default.nix
@@ -1,61 +1,60 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, ninja
-, chromium
-, grpc
-, haskellPackages
-, mercurial
-, python3Packages
-, abseil-cpp
+{
+  abseil-cpp,
+  chromium,
+  cmake,
+  fetchFromGitHub,
+  gbenchmark,
+  grpc,
+  gtest,
+  haskellPackages,
+  icu,
+  lib,
+  mercurial,
+  ninja,
+  python3Packages,
+  stdenv,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "re2";
-  version = "2024-05-01";
+  version = "2024-07-02";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "re2";
-    rev = version;
-    hash = "sha256-p4MdHjTk0SQsBPVkEy+EceAN/QTyzBDe7Pd1hJwOs3A=";
+    rev = finalAttrs.version;
+    hash = "sha256-IeANwJlJl45yf8iu/AZNDoiyIvTCZIeK1b74sdCfAIc=";
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
-  nativeBuildInputs = [ cmake ninja ];
+  nativeBuildInputs = [
+    cmake
+    ninja
+  ];
 
-  propagatedBuildInputs = [ abseil-cpp ];
+  buildInputs = [
+    gbenchmark
+    gtest
+  ];
 
-  postPatch = ''
-    substituteInPlace re2Config.cmake.in \
-      --replace "\''${PACKAGE_PREFIX_DIR}/" ""
-  '';
+  propagatedBuildInputs = [ abseil-cpp ] ++ lib.optionals (!stdenv.hostPlatform.isStatic) [ icu ];
 
-  # Needed for case-insensitive filesystems (i.e. MacOS) because a file named
-  # BUILD already exists.
-  cmakeBuildDir = "build_dir";
-
-  cmakeFlags = lib.optional (!stdenv.hostPlatform.isStatic) "-DBUILD_SHARED_LIBS:BOOL=ON";
-
-  # This installs a pkg-config definition.
-  postInstall = ''
-    pushd "$src"
-    make common-install prefix="$dev" SED_INPLACE="sed -i"
-    popd
-  '';
+  cmakeFlags =
+    [ (lib.cmakeBool "RE2_BUILD_TESTING" true) ]
+    ++ lib.optionals (!stdenv.hostPlatform.isStatic) [
+      (lib.cmakeBool "RE2_USE_ICU" true)
+      (lib.cmakeBool "BUILD_SHARED_LIBS" true)
+    ];
 
   doCheck = true;
 
   passthru.tests = {
-    inherit
-      chromium
-      grpc
-      mercurial;
-    inherit (python3Packages)
-      fb-re2
-      google-re2;
+    inherit chromium grpc mercurial;
+    inherit (python3Packages) fb-re2 google-re2;
     haskell-re2 = haskellPackages.re2;
   };
 
@@ -68,7 +67,10 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.bsd3;
     homepage = "https://github.com/google/re2";
-    maintainers = with maintainers; [ azahi networkexception ];
+    maintainers = with maintainers; [
+      azahi
+      networkexception
+    ];
     platforms = platforms.all;
   };
-}
+})
diff --git a/pkgs/development/libraries/relibc/Cargo.lock b/pkgs/development/libraries/relibc/Cargo.lock
deleted file mode 100644
index b020fc4764b81..0000000000000
--- a/pkgs/development/libraries/relibc/Cargo.lock
+++ /dev/null
@@ -1,600 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-[[package]]
-name = "ansi_term"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "hermit-abi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "bitflags"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "cbindgen"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "clap 2.33.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
- "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "toml 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "cbitset"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.58"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "clap"
-version = "2.33.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "core_io"
-version = "0.1.20181107"
-dependencies = [
- "rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "crt0"
-version = "0.1.0"
-
-[[package]]
-name = "crti"
-version = "0.1.0"
-
-[[package]]
-name = "crtn"
-version = "0.1.0"
-
-[[package]]
-name = "getrandom"
-version = "0.1.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)",
- "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "goblin"
-version = "0.0.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "plain 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "scroll 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "itoa"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "lazy_static"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "spin 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "ld_so"
-version = "0.1.0"
-
-[[package]]
-name = "libc"
-version = "0.2.72"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "log"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "memchr"
-version = "2.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "memoffset"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "plain"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "posix-regex"
-version = "0.1.0"
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "proc-macro2"
-version = "0.4.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "quote"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "ralloc"
-version = "1.0.0"
-dependencies = [
- "ralloc_shim 0.1.1",
- "unborrow 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "ralloc_shim"
-version = "0.1.1"
-dependencies = [
- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
- "sc 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "ppv-lite86 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.1.56"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.0"
-source = "git+https://gitlab.redox-os.org/redox-os/syscall?rev=4115e0f43547449ce56f7d7749732813e9505955#4115e0f43547449ce56f7d7749732813e9505955"
-dependencies = [
- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "relibc"
-version = "0.1.0"
-dependencies = [
- "cbindgen 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "cbitset 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "cc 1.0.58 (registry+https://github.com/rust-lang/crates.io-index)",
- "core_io 0.1.20181107",
- "goblin 0.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "memoffset 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "posix-regex 0.1.0",
- "ralloc 1.0.0",
- "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.2.0 (git+https://gitlab.redox-os.org/redox-os/syscall?rev=4115e0f43547449ce56f7d7749732813e9505955)",
- "sc 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "spin 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "remove_dir_all"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rustc_version"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "rustc_version"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "sc"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "scroll"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "scroll_derive 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "scroll_derive"
-version = "0.9.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "semver"
-version = "0.1.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "semver"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "semver-parser"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "serde"
-version = "1.0.114"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.114"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.56"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "spin"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "syn"
-version = "0.15.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "syn"
-version = "1.0.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "tempfile"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
- "remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "unborrow"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "unicode-xid"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[metadata]
-"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-"checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
-"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-"checksum cbindgen 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2db2df1ebc842c41fd2c4ae5b5a577faf63bd5151b953db752fc686812bee318"
-"checksum cbitset 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3a9afa72f63942dd7e7f01c67b863ce9df35c523ae10e3dddd3eec8f1e07eac"
-"checksum cc 1.0.58 (registry+https://github.com/rust-lang/crates.io-index)" = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518"
-"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-"checksum clap 2.33.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
-"checksum getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
-"checksum goblin 0.0.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6a4013e9182f2345c6b7829b9ef6e670bce0dfca12c6f974457ed2160c2c7fe9"
-"checksum hermit-abi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
-"checksum itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
-"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
-"checksum libc 0.2.72 (registry+https://github.com/rust-lang/crates.io-index)" = "a9f8082297d534141b30c8d39e9b1773713ab50fdbe4ff30f750d063b3bfd701"
-"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-"checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
-"checksum memoffset 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f"
-"checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
-"checksum plain 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
-"checksum ppv-lite86 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
-"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-"checksum proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)" = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
-"checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
-"checksum quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
-"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
-"checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-"checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
-"checksum redox_syscall 0.2.0 (git+https://gitlab.redox-os.org/redox-os/syscall?rev=4115e0f43547449ce56f7d7749732813e9505955)" = "<none>"
-"checksum remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-"checksum rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084"
-"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-"checksum ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-"checksum sc 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "176365c8253e381ad147774b6d9730a1b3fe2d7db498af521ed7d968674a55b3"
-"checksum scroll 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2f84d114ef17fd144153d608fba7c446b0145d038985e7a8cc5d08bb0ce20383"
-"checksum scroll_derive 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8f1aa96c45e7f5a91cb7fabe7b279f02fea7126239fc40b732316e8b6a2d0fcb"
-"checksum semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "d4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac"
-"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-"checksum serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)" = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3"
-"checksum serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)" = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e"
-"checksum serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)" = "3433e879a558dde8b5e8feb2a04899cf34fdde1fafb894687e52105fc1162ac3"
-"checksum spin 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ceac490aa12c567115b40b7b7fceca03a6c9d53d5defea066123debc83c5dc1f"
-"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-"checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
-"checksum syn 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "e8d5d96e8cbb005d6959f119f773bfaebb5684296108fb32600c00cde305b2cd"
-"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
-"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-"checksum toml 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
-"checksum unborrow 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e92e959f029e4f8ee25d70d15ab58d2b46f98a17bc238b9265ff0c26f6f3d67f"
-"checksum unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
-"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-"checksum unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
-"checksum vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-"checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-"checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/pkgs/development/libraries/relibc/default.nix b/pkgs/development/libraries/relibc/default.nix
deleted file mode 100644
index 437da86e8c21e..0000000000000
--- a/pkgs/development/libraries/relibc/default.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ lib, stdenvNoCC, buildPackages }:
-
-let
-  rpath = lib.makeLibraryPath [
-    buildPackages.stdenv.cc.libc
-    "$out"
-  ];
-  bootstrapCrossRust = stdenvNoCC.mkDerivation {
-    name = "binary-redox-rust";
-
-    src = buildPackages.fetchzip {
-      name = "redox-rust-toolchain.tar.gz";
-      url = "https://www.dropbox.com/s/qt7as0j7cwnin8z/redox-rust-toolchain.tar.gz?dl=1";
-      sha256 = "1g17qp2q6b88p04yclkw6amm374pqlakrmw9kd86vw8z4g70jkxm";
-    };
-
-    dontBuild = true;
-    dontPatchELF = true;
-    dontStrip = true;
-    installPhase = ''
-      mkdir $out/
-      cp -r * $out/
-
-      find $out/ -executable -type f -exec patchelf \
-          --set-interpreter "${buildPackages.stdenv.cc.libc}/lib/ld-linux-x86-64.so.2" \
-          --set-rpath "${rpath}" \
-          "{}" \;
-      find $out/ -name "*.so" -type f -exec patchelf \
-          --set-rpath "${rpath}" \
-          "{}" \;
-    '';
-
-    meta.platforms = with lib; platforms.redox ++ platforms.linux;
-  };
-
-  redoxRustPlatform = buildPackages.makeRustPlatform {
-    rustc = bootstrapCrossRust;
-    cargo = bootstrapCrossRust;
-  };
-
-in
-redoxRustPlatform.buildRustPackage rec {
-  pname = "relibc";
-  version = "latest";
-
-  LD_LIBRARY_PATH = "${buildPackages.zlib}/lib";
-
-  src = buildPackages.fetchgit {
-    url = "https://gitlab.redox-os.org/redox-os/relibc/";
-    rev = "5af8e3ca35ad401014a867ac1a0cc3b08dee682b";
-    sha256 = "1j4wsga9psl453031izkl3clkvm31d1wg4y8f3yqqvhml2aliws5";
-    fetchSubmodules = true;
-  };
-
-  RUSTC_BOOTSTRAP = 1;
-
-  dontInstall = true;
-  dontFixup = true;
-  doCheck = false;
-
-  postBuild = ''
-    mkdir -p $out
-    DESTDIR=$out make install
-  '';
-
-  TARGET = stdenvNoCC.hostPlatform.rust.rustcTargetSpec;
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "redox_syscall-0.2.0" = "sha256-nwbJBrhuc01fPbBgd5ShboNu0Nauqp2UjkA+sm9oCeE=";
-    };
-  };
-
-  # error: Usage of `RUSTC_WORKSPACE_WRAPPER` requires `-Z unstable-options`
-  auditable = false;
-
-  meta = with lib; {
-    homepage = "https://gitlab.redox-os.org/redox-os/relibc";
-    description = "C Library in Rust for Redox and Linux";
-    license = licenses.mit;
-    maintainers = [ maintainers.aaronjanse ];
-    platforms = platforms.redox ++ [ "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/development/libraries/rep-gtk/default.nix b/pkgs/development/libraries/rep-gtk/default.nix
deleted file mode 100644
index 4d8cfc0a76995..0000000000000
--- a/pkgs/development/libraries/rep-gtk/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-, autoreconfHook
-, gtk2-x11
-, librep
-, pkg-config
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "rep-gtk";
-  version = "0.90.8.3";
-
-  src = fetchurl {
-    url = "https://download.tuxfamily.org/librep/rep-gtk/rep-gtk_${finalAttrs.version}.tar.xz";
-    hash = "sha256-qWV120V5Tu/QVkFylno47y1/7DriZExHjp99VLmf80E=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-    librep
-  ];
-
-  buildInputs = [
-    gtk2-x11
-    librep
-  ];
-
-  strictDeps = true;
-
-  patchPhase = ''
-    sed -e 's|installdir=$(repexecdir)|installdir=$(libdir)/rep|g' -i Makefile.in
-  '';
-
-  meta = {
-    homepage = "http://sawfish.tuxfamily.org";
-    description = "GTK bindings for librep";
-    license = lib.licenses.gpl2Plus;
-    maintainers = [ lib.maintainers.AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
-# TODO: investigate fetchFromGithub
diff --git a/pkgs/development/libraries/rep-gtk/setup-hook.sh b/pkgs/development/libraries/rep-gtk/setup-hook.sh
deleted file mode 100644
index 4d875b6933040..0000000000000
--- a/pkgs/development/libraries/rep-gtk/setup-hook.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-addRepDLLoadPath () {
-    addToSearchPath REP_DL_LOAD_PATH $1/lib/rep
-}
-
-addEnvHooks "$hostOffset" addRepDLLoadPath
diff --git a/pkgs/development/libraries/retro-gtk/default.nix b/pkgs/development/libraries/retro-gtk/default.nix
index 7387e69130730..0749853082440 100644
--- a/pkgs/development/libraries/retro-gtk/default.nix
+++ b/pkgs/development/libraries/retro-gtk/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , fetchurl
 , fetchpatch
-, cmake
 , meson
 , ninja
 , pkg-config
@@ -73,6 +72,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.DamienCassou ];
     platforms = platforms.all;
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/retro-gtk.x86_64-darwin
+    broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/retro-gtk.x86_64-darwin
   };
 }
diff --git a/pkgs/development/libraries/rinutils/default.nix b/pkgs/development/libraries/rinutils/default.nix
index ccc4df86ecd12..45b9f299aa2d5 100644
--- a/pkgs/development/libraries/rinutils/default.nix
+++ b/pkgs/development/libraries/rinutils/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rinutils";
-  version = "0.10.2";
+  version = "0.10.3";
 
   src = fetchurl {
     url = "https://github.com/shlomif/${pname}/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-2H/hGZcit/qb1QjhNTg/8HiPvX1lXL75dXwjIS+MIXs=";
+    sha256 = "sha256-+eUn03psyMe4hwraY8qiTzKrDSn9ERbfPrtoZYMDCVU=";
   };
 
   nativeBuildInputs = [ cmake perl ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/shlomif/rinutils";
     changelog = "https://github.com/shlomif/rinutils/raw/${version}/NEWS.asciidoc";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/rlottie/default.nix b/pkgs/development/libraries/rlottie/default.nix
index 541c805bba5bb..2243e482a5694 100644
--- a/pkgs/development/libraries/rlottie/default.nix
+++ b/pkgs/development/libraries/rlottie/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     (lib.cmakeFeature "LIB_INSTALL_DIR" "${placeholder "out"}/lib")
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-U__ARM_NEON__";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) "-U__ARM_NEON__";
 
   meta = with lib; {
     homepage = "https://github.com/Samsung/rlottie";
diff --git a/pkgs/development/libraries/rnnoise-plugin/default.nix b/pkgs/development/libraries/rnnoise-plugin/default.nix
index ad7ba8a5a5497..13107bfcb13be 100644
--- a/pkgs/development/libraries/rnnoise-plugin/default.nix
+++ b/pkgs/development/libraries/rnnoise-plugin/default.nix
@@ -4,12 +4,10 @@
 , fetchFromGitHub
 , freetype
 , gtk3-x11
-, mount
 , pcre
 , pkg-config
 , webkitgtk
 , xorg
-, llvmPackages
 , WebKit
 , MetalKit
 , CoreAudioKit
@@ -28,7 +26,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  patches = lib.optionals stdenv.isDarwin [
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
     # Ubsan seems to be broken on aarch64-darwin, it produces linker errors similar to https://github.com/NixOS/nixpkgs/issues/140751
     ./disable-ubsan.patch
   ];
@@ -40,9 +38,9 @@ stdenv.mkDerivation rec {
       pcre
       xorg.libX11
       xorg.libXrandr
-    ] ++ lib.optionals stdenv.isLinux [
+    ] ++ lib.optionals stdenv.hostPlatform.isLinux [
       webkitgtk
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       WebKit
       MetalKit
       CoreAudioKit
diff --git a/pkgs/development/libraries/robin-map/default.nix b/pkgs/development/libraries/robin-map/default.nix
index 6a593ec070dc3..d15bada3e813c 100644
--- a/pkgs/development/libraries/robin-map/default.nix
+++ b/pkgs/development/libraries/robin-map/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/Tessil/robin-map";
     changelog = "https://github.com/Tessil/robin-map/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index af52b6a9fa7c7..fb4cc16cd7eb4 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -11,26 +11,31 @@
 , windows
 , enableJemalloc ? false
 , jemalloc
+, enableLiburing ? stdenv.hostPlatform.isLinux
+, liburing
 , enableShared ? !stdenv.hostPlatform.isStatic
 , sse42Support ? stdenv.hostPlatform.sse4_2Support
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "rocksdb";
-  version = "9.2.1";
+  version = "9.6.1";
 
   src = fetchFromGitHub {
     owner = "facebook";
-    repo = finalAttrs.pname;
+    repo = "rocksdb";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-Zifn5Gu/4h6TaEqSaWQ2mFdryeAarqbHWW3fKUGGFac=";
+    hash = "sha256-Df5X3sL4dRP9TwwfoB3645nlru6eQhFD1LKPCXHrofU=";
   };
 
+  patches = lib.optional (lib.versionAtLeast finalAttrs.version "6.29.3" && enableLiburing) ./fix-findliburing.patch;
+
   nativeBuildInputs = [ cmake ninja ];
 
   propagatedBuildInputs = [ bzip2 lz4 snappy zlib zstd ];
 
   buildInputs = lib.optional enableJemalloc jemalloc
+    ++ lib.optional enableLiburing liburing
     ++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64_pthreads;
 
   outputs = [
@@ -45,6 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
   cmakeFlags = [
     "-DPORTABLE=1"
     "-DWITH_JEMALLOC=${if enableJemalloc then "1" else "0"}"
+    "-DWITH_LIBURING=${if enableLiburing then "1" else "0"}"
     "-DWITH_JNI=0"
     "-DWITH_BENCHMARK_TOOLS=0"
     "-DWITH_TESTS=1"
@@ -81,9 +87,9 @@ stdenv.mkDerivation (finalAttrs: {
   preInstall = ''
     mkdir -p $tools/bin
     cp tools/{ldb,sst_dump}${stdenv.hostPlatform.extensions.executable} $tools/bin/
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     ls -1 $tools/bin/* | xargs -I{} install_name_tool -change "@rpath/librocksdb.${lib.versions.major finalAttrs.version}.dylib" $out/lib/librocksdb.dylib {}
-  '' + lib.optionalString (stdenv.isLinux && enableShared) ''
+  '' + lib.optionalString (stdenv.hostPlatform.isLinux && enableShared) ''
     ls -1 $tools/bin/* | xargs -I{} patchelf --set-rpath $out/lib:${stdenv.cc.cc.lib}/lib {}
   '';
 
diff --git a/pkgs/development/libraries/rocksdb/fix-findliburing.patch b/pkgs/development/libraries/rocksdb/fix-findliburing.patch
new file mode 100644
index 0000000000000..c546577813ceb
--- /dev/null
+++ b/pkgs/development/libraries/rocksdb/fix-findliburing.patch
@@ -0,0 +1,29 @@
+From 23432b7958ecea64b49ba680767ea5dc696768c9 Mon Sep 17 00:00:00 2001
+From: Benjamin Lee <benjamin@computer.surgery>
+Date: Sun, 26 May 2024 17:17:01 -0700
+Subject: [PATCH] fix findliburing
+
+`find_package(... NAMES lib*)` is basically always wrong. The previous
+code was just hardcoding the static library path to work around the fact
+that this doesn't work. This breaks the build when only dynamic liburing
+builds are available.
+---
+ cmake/modules/Finduring.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/Finduring.cmake b/cmake/modules/Finduring.cmake
+index 8cb14cb27..87f2df474 100644
+--- a/cmake/modules/Finduring.cmake
++++ b/cmake/modules/Finduring.cmake
+@@ -7,7 +7,7 @@
+ find_path(uring_INCLUDE_DIR
+   NAMES liburing.h)
+ find_library(uring_LIBRARIES
+-  NAMES liburing.a liburing)
++  NAMES uring)
+ 
+ include(FindPackageHandleStandardArgs)
+ find_package_handle_standard_args(uring
+-- 
+2.44.0
+
diff --git a/pkgs/development/libraries/rtlcss/default.nix b/pkgs/development/libraries/rtlcss/default.nix
index 327e7b2626dae..4143e649ea5c7 100644
--- a/pkgs/development/libraries/rtlcss/default.nix
+++ b/pkgs/development/libraries/rtlcss/default.nix
@@ -20,6 +20,6 @@ buildNpmPackage rec {
     mainProgram = "rtlcss";
     homepage = "https://rtlcss.com";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/rttr/default.nix b/pkgs/development/libraries/rttr/default.nix
index 10a16dd3f6b45..de4d81918cd08 100644
--- a/pkgs/development/libraries/rttr/default.nix
+++ b/pkgs/development/libraries/rttr/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "C++ Reflection Library";
     homepage = "https://www.rttr.org";
     license = licenses.mit;
diff --git a/pkgs/development/libraries/rubberband/default.nix b/pkgs/development/libraries/rubberband/default.nix
index 66b3dbbea3fb1..d5acb98c22a4f 100644
--- a/pkgs/development/libraries/rubberband/default.nix
+++ b/pkgs/development/libraries/rubberband/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config meson ninja jdk_headless ];
-  buildInputs = [ libsamplerate libsndfile fftw vamp-plugin-sdk ladspaH lv2 ] ++ lib.optionals stdenv.isDarwin
+  buildInputs = [ libsamplerate libsndfile fftw vamp-plugin-sdk ladspaH lv2 ] ++ lib.optionals stdenv.hostPlatform.isDarwin
     (with darwin.apple_sdk.frameworks; [Accelerate CoreGraphics CoreVideo]);
   makeFlags = [ "AR:=$(AR)" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "https://breakfastquay.com/rubberband/";
     # commercial license available as well, see homepage. You'll get some more optimized routines
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.goibhniu maintainers.marcweber ];
+    maintainers = [ maintainers.marcweber ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/rure/Cargo.lock b/pkgs/development/libraries/rure/Cargo.lock
index a5ba9527382e5..9984478e480f5 100644
--- a/pkgs/development/libraries/rure/Cargo.lock
+++ b/pkgs/development/libraries/rure/Cargo.lock
@@ -4,30 +4,30 @@ version = 3
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.155"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
 
 [[package]]
 name = "memchr"
-version = "2.7.1"
+version = "2.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
 
 [[package]]
 name = "regex"
-version = "1.10.3"
+version = "1.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -37,9 +37,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.5"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
+checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -48,9 +48,9 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
 
 [[package]]
 name = "rure"
diff --git a/pkgs/development/libraries/rure/pin.json b/pkgs/development/libraries/rure/pin.json
index 7e6b1101702e8..9825f6e29ab99 100644
--- a/pkgs/development/libraries/rure/pin.json
+++ b/pkgs/development/libraries/rure/pin.json
@@ -1,5 +1,5 @@
 {
   "pname": "rure",
   "version": "0.2.2",
-  "sha256": "0n2c9b8arfgcq1l7gr8dfcmdvdbggvfd0msy6sbx3bln74wwbr06"
+  "hash": "sha256-BuTFOTmWrtGXNl5X0Nx+b7XdKnMN5XdowOy5rNBKTFg="
 }
diff --git a/pkgs/development/libraries/rure/update.sh b/pkgs/development/libraries/rure/update.sh
index 6e85d7cf03a73..d9a31cf68a80c 100755
--- a/pkgs/development/libraries/rure/update.sh
+++ b/pkgs/development/libraries/rure/update.sh
@@ -27,7 +27,7 @@ cat > pin.json <<EOF
 {
   "pname": "$crate",
   "version": "$version",
-  "sha256": "$(printf '%s' "$prefetch" | head -n1)"
+  "hash": "$(nix hash to-sri --type sha256 "$(printf '%s' "$prefetch" | head -n1)")"
 }
 EOF
 
diff --git a/pkgs/development/libraries/rustls-ffi/Cargo.lock b/pkgs/development/libraries/rustls-ffi/Cargo.lock
deleted file mode 100644
index 6cf2c532f33b4..0000000000000
--- a/pkgs/development/libraries/rustls-ffi/Cargo.lock
+++ /dev/null
@@ -1,369 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "base64"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-
-[[package]]
-name = "bumpalo"
-version = "3.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
-
-[[package]]
-name = "cc"
-version = "1.0.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "equivalent"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
-
-[[package]]
-name = "hashbrown"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
-
-[[package]]
-name = "indexmap"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
-dependencies = [
- "equivalent",
- "hashbrown",
-]
-
-[[package]]
-name = "js-sys"
-version = "0.3.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.147"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
-
-[[package]]
-name = "log"
-version = "0.4.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "num_enum"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
-dependencies = [
- "num_enum_derive",
-]
-
-[[package]]
-name = "num_enum_derive"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.18.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
-
-[[package]]
-name = "proc-macro-crate"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
-dependencies = [
- "once_cell",
- "toml_edit",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "ring"
-version = "0.16.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
-dependencies = [
- "cc",
- "libc",
- "once_cell",
- "spin",
- "untrusted",
- "web-sys",
- "winapi",
-]
-
-[[package]]
-name = "rustls"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07180898a28ed6a7f7ba2311594308f595e3dd2e3c3812fa0a80a47b45f17e5d"
-dependencies = [
- "log",
- "ring",
- "rustls-webpki",
- "rustversion",
- "sct",
-]
-
-[[package]]
-name = "rustls-ffi"
-version = "0.10.0"
-dependencies = [
- "libc",
- "log",
- "num_enum",
- "rustls",
- "rustls-pemfile",
- "sct",
- "webpki",
-]
-
-[[package]]
-name = "rustls-pemfile"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9"
-dependencies = [
- "base64",
-]
-
-[[package]]
-name = "rustls-webpki"
-version = "0.100.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6207cd5ed3d8dca7816f8f3725513a34609c0c765bf652b8c3cb4cfd87db46b"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "rustversion"
-version = "1.0.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc31bd9b61a32c31f9650d18add92aa83a49ba979c143eefd27fe7177b05bd5f"
-
-[[package]]
-name = "sct"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15e3fc8c0c74267e2df136e5e5fb656a464158aa57624053375eb9c8c6e25ae2"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "toml_datetime"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
-
-[[package]]
-name = "toml_edit"
-version = "0.19.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c500344a19072298cd05a7224b3c0c629348b78692bf48466c5238656e315a78"
-dependencies = [
- "indexmap",
- "toml_datetime",
- "winnow",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73"
-
-[[package]]
-name = "untrusted"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn 2.0.25",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.25",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
-
-[[package]]
-name = "web-sys"
-version = "0.3.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "webpki"
-version = "0.22.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "winnow"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81a2094c43cc94775293eaa0e499fbc30048a6d824ac82c0351a8c0bf9112529"
-dependencies = [
- "memchr",
-]
diff --git a/pkgs/development/libraries/rustls-ffi/default.nix b/pkgs/development/libraries/rustls-ffi/default.nix
index 380405217e3da..92dffbc2682fc 100644
--- a/pkgs/development/libraries/rustls-ffi/default.nix
+++ b/pkgs/development/libraries/rustls-ffi/default.nix
@@ -1,4 +1,11 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, Security, apacheHttpd, curl }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  rustPlatform,
+  Security,
+  apacheHttpd,
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "rustls-ffi";
@@ -11,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-IDIWN5g1aaE6SDdXSm4WYK6n+BpuypPYQITuDj1WJEc=";
   };
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ Security ];
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
 
   cargoLock.lockFile = ./Cargo.lock;
   postPatch = ''
@@ -35,7 +42,11 @@ rustPlatform.buildRustPackage rec {
   meta = with lib; {
     description = "C-to-rustls bindings";
     homepage = "https://github.com/rustls/rustls-ffi/";
-    license = with lib.licenses; [ mit asl20 isc ];
+    license = with lib.licenses; [
+      mit
+      asl20
+      isc
+    ];
     maintainers = [ maintainers.lesuisse ];
   };
 }
diff --git a/pkgs/development/libraries/s2n-tls/default.nix b/pkgs/development/libraries/s2n-tls/default.nix
index d4a440e587c12..5af6eff378d94 100644
--- a/pkgs/development/libraries/s2n-tls/default.nix
+++ b/pkgs/development/libraries/s2n-tls/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "s2n-tls";
-  version = "1.4.16";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "aws";
-    repo = pname;
+    repo = "s2n-tls";
     rev = "v${version}";
-    hash = "sha256-HkpOd05/5YIDsBm4L3hLuI0obm7uAwsV1dC2/e2f5aw=";
+    hash = "sha256-BHDMYOHidwF6ssqSnpokXc/OwGrQNoUVb0/ubwhyiDM=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/safefile/default.nix b/pkgs/development/libraries/safefile/default.nix
index 1f49afbacff29..279ce4356b691 100644
--- a/pkgs/development/libraries/safefile/default.nix
+++ b/pkgs/development/libraries/safefile/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, path, runtimeShell }:
+{ lib, stdenv, fetchurl }:
 stdenv.mkDerivation rec {
   pname = "safefile";
   version = "1.0.5";
diff --git a/pkgs/development/libraries/schroedinger/default.nix b/pkgs/development/libraries/schroedinger/default.nix
index b4e8831b31775..698ac7986204f 100644
--- a/pkgs/development/libraries/schroedinger/default.nix
+++ b/pkgs/development/libraries/schroedinger/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config autoreconfHook ];
   buildInputs = [ orc ];
 
-  doCheck = (!stdenv.isDarwin);
+  doCheck = (!stdenv.hostPlatform.isDarwin);
 
   patchFlags = [ "-p0" ];
   patches = [
diff --git a/pkgs/development/libraries/science/astronomy/indilib/default.nix b/pkgs/development/libraries/science/astronomy/indilib/default.nix
index 0fd659b0e1b74..5d7137abac2c3 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/default.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "indilib";
-  version = "2.0.8";
+  version = "2.0.9";
 
   src = fetchFromGitHub {
     owner = "indilib";
     repo = "indi";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-qdPQMC8HCMdcbHyO8B0OFiefO+jM1ytA2dYNymE0Xuc=";
+    hash = "sha256-CV8nSz53wFeS/h7hGj9adN8qmyhsqOkTYj/0nuvhlSM=";
   };
 
   nativeBuildInputs = [
@@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
   # Socket address collisions between tests
   enableParallelChecking = false;
 
-  postFixup = lib.optionalString stdenv.isLinux ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
     for f in $out/lib/udev/rules.d/*.rules
     do
       substituteInPlace $f --replace "/bin/sh" "${bash}/bin/sh" \
@@ -81,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Implementation of the INDI protocol for POSIX operating systems";
     changelog = "https://github.com/indilib/indi/releases/tag/v${finalAttrs.version}";
     license = licenses.lgpl2Plus;
-    maintainers = with maintainers; [ hjones2199 sheepforce ];
+    maintainers = with maintainers; [ hjones2199 sheepforce returntoreality ];
     platforms = platforms.unix;
   };
 })
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
index 9dafb64e9292d..50ec95ee2f8f5 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
@@ -1,100 +1,1081 @@
-{ stdenv
-, lib
-, bash
-, cmake
-, coreutils
-, cfitsio
-, libusb1
-, zlib
-, boost
-, libnova
-, curl
-, libjpeg
-, gsl
-, fftw
-, indilib
-, libgphoto2
-, libraw
-, libftdi1
-, libdc1394
-, gpsd
-, ffmpeg
-, limesuite
-, pkg-config
-, zeromq
-, version
-, src
-, withFirmware ? false
-, firmware ? null
+{
+  stdenv,
+  lib,
+  autoPatchelfHook,
+  aravis,
+  bash,
+  boost,
+  cmake,
+  coreutils,
+  cfitsio,
+  fetchFromGitHub,
+  gtest,
+  libusb1,
+  libusb-compat-0_1,
+  zlib,
+  libnova,
+  curl,
+  libjpeg,
+  gsl,
+  indilib,
+  libcamera,
+  libdc1394,
+  libdrm,
+  libexif,
+  libftdi1,
+  libgphoto2,
+  libgpiod_1,
+  libpng,
+  libraw,
+  ninja,
+  nut,
+  glib,
+  systemd,
+  urjtag,
+  gpsd,
+  ffmpeg-headless,
+  limesuite,
+  pkg-config,
+  zeromq,
 }:
 
 let
-  libusb-with-fxload = libusb1.override { withExamples = true;};
-in
+  fxload = libusb1.override { withExamples = true; };
+  src-3rdparty = fetchFromGitHub {
+    owner = "indilib";
+    repo = "indi-3rdparty";
+    rev = "v${indilib.version}";
+    hash = "sha256-RhtdhMvseQUUFcKDuR1N5qc/86IxmQ/7owpjT+qweqc=";
+  };
+
+  buildIndi3rdParty =
+    args@{
+      pname,
+      nativeBuildInputs ? [ ],
+      propagatedBuildInputs ? [ ],
+      cmakeFlags ? [ ],
+      postInstall ? "",
+      doCheck ? true,
+      version ? indilib.version,
+      src ? src-3rdparty,
+      meta ? { },
+      ...
+    }:
+    stdenv.mkDerivation (
+      args
+      // {
+        pname = "indi-3rdparty-${pname}";
+        inherit src version;
+
+        sourceRoot = "source/${pname}";
+
+        cmakeFlags =
+          [
+            "-DCMAKE_INSTALL_LIBDIR=lib"
+            "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d"
+            "-DRULES_INSTALL_DIR=lib/udev/rules.d"
+            "-DINDI_DATA_DIR=share/indi/"
+          ]
+          ++ lib.optional doCheck [
+            "-DINDI_BUILD_UNITTESTS=ON"
+            "-DINDI_BUILD_INTEGTESTS=ON"
+          ]
+          ++ cmakeFlags;
+
+        nativeBuildInputs = [
+          cmake
+          ninja
+          pkg-config
+        ] ++ nativeBuildInputs;
+
+        checkInputs = [ gtest ];
+
+        postInstall = ''
+          mkdir -p $out/lib/udev/rules.d/
+          shopt -s nullglob
+          for i in $propagatedBuildInputs; do
+            echo "Adding rules for package $i"
+            for j in $i/{etc,lib}/udev/rules.d/*; do
+              echo "Linking $j to $out/lib/udev/rules.d/$(basename $j)"
+              ln -s $j $out/lib/udev/rules.d/$(basename $j)
+            done
+          done
+          ${postInstall}
+        '';
+
+        meta =
+          with lib;
+          {
+            homepage = "https://www.indilib.org/";
+            description = "Third party drivers for the INDI astronomical software suite";
+            changelog = "https://github.com/indilib/indi-3rdparty/releases/tag/v${version}";
+            license = licenses.lgpl2Plus;
+            maintainers = with maintainers; [
+              hjones2199
+              sheepforce
+              returntoreality
+            ];
+            platforms = platforms.linux;
+          }
+          // meta;
+      }
+    );
+
+  libahp-gt = buildIndi3rdParty {
+    pname = "libahp-gt";
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ i686 ++ arm;
+    };
+  };
+
+  # broken: needs libdfu
+  libahp-xc = buildIndi3rdParty {
+    pname = "libahp-xc";
+    buildInputs = [
+      libusb-compat-0_1
+      urjtag
+      libftdi1
+    ];
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      broken = true;
+      platforms = [ ];
+    };
+  };
+
+  libaltaircam = buildIndi3rdParty {
+    pname = "libaltaircam";
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libapogee = buildIndi3rdParty {
+    pname = "libapogee";
+    buildInputs = [
+      curl
+      indilib
+      libusb1
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    cmakeFlags = [ "-DCONF_DIR=etc/" ];
+    meta = with lib; {
+      license = licenses.mpl20;
+      platforms = platforms.linux;
+    };
+  };
+
+  libasi = buildIndi3rdParty {
+    pname = "libasi";
+    buildInputs = [
+      libusb1
+      stdenv.cc.cc.lib
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ i686 ++ arm;
+    };
+  };
+
+  libastroasis = buildIndi3rdParty {
+    pname = "libastroasis";
+    buildInputs = [ stdenv.cc.cc.lib ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libatik = buildIndi3rdParty {
+    pname = "libatik";
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+      systemd
+      libdc1394
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ i686 ++ arm;
+    };
+  };
+
+  libbressercam = buildIndi3rdParty {
+    pname = "libbressercam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libfishcamp = buildIndi3rdParty {
+    pname = "libfishcamp";
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/firmware" "lib/firmware"
+    '';
+
+    buildInputs = [
+      indilib
+      libusb1
+    ];
+
+    meta = with lib; {
+      license = licenses.bsd2;
+      platforms = platforms.linux;
+    };
+  };
+
+  libfli = buildIndi3rdParty {
+    pname = "libfli";
+    buildInputs = [
+      indilib
+      libusb1
+    ];
+    meta = with lib; {
+      license = licenses.bsd2;
+      platforms = platforms.linux;
+    };
+  };
+
+  libinovasdk = buildIndi3rdParty {
+    pname = "libinovasdk";
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm ++ i686;
+    };
+  };
+
+  libmallincam = buildIndi3rdParty {
+    pname = "libmallincam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libmeadecam = buildIndi3rdParty {
+    pname = "libmeadecam";
+    buildInputs = [ libusb1 ];
+    meta = with lib; {
+      license = lib.licenses.lgpl21Only;
+      platforms = platforms.linux;
+    };
+  };
+
+  libmicam = buildIndi3rdParty {
+    pname = "libmicam";
+    buildInputs = [ libusb1 ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm ++ i686;
+    };
+  };
+
+  libnncam = buildIndi3rdParty {
+    pname = "libnncam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libogmacam = buildIndi3rdParty {
+    pname = "libogmacam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libomegonprocam = buildIndi3rdParty {
+    pname = "libomegonprocam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  # broken: needs pigpio library
+  libpigpiod = buildIndi3rdParty {
+    pname = "libpigpiod";
+    buildInputs = [ indilib ];
+    meta = with lib; {
+      license = licenses.unlicense;
+      broken = true;
+      platforms = [ ];
+    };
+  };
+
+  libpktriggercord = buildIndi3rdParty {
+    pname = "libpktriggercord";
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt \
+        --replace-fail "set (PK_DATADIR /usr/share/pktriggercord)" "set (PK_DATADIR $out/share/pkgtriggercord)"
+    '';
 
-stdenv.mkDerivation rec {
-  pname = "indi-3rdparty";
+    buildInputs = [ indilib ];
 
-  inherit version src;
+    meta = with lib; {
+      license = licenses.lgpl3Plus;
+      platforms = platforms.linux;
+    };
+  };
+
+  libplayerone = buildIndi3rdParty {
+    pname = "libplayerone";
+    postPatch = ''
+      substituteInPlace 99-player_one_astronomy.rules \
+        --replace-fail "/bin/echo" "${coreutils}/bin/echo" \
+        --replace "/bin/sh" "${bash}/bin/sh"
+    '';
 
-  nativeBuildInputs = [ cmake pkg-config ];
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+      systemd
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
 
-  buildInputs = [
-    indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd
-    libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw
-    limesuite zeromq
-  ] ++ lib.optionals withFirmware [
-    firmware
-  ];
+  libqhy = buildIndi3rdParty {
+    pname = "libqhy";
 
-  postPatch = ''
-    for f in $(find . -name "CMakeLists.txt"); do
-      substituteInPlace $f \
-        --replace "/lib/udev/rules.d" "lib/udev/rules.d" \
-        --replace "/etc/udev/rules.d" "lib/udev/rules.d" \
+    postPatch = ''
+      substituteInPlace --replace-fail CMakeLists.txt \
         --replace "/lib/firmware" "lib/firmware"
-    done
-
-    substituteInPlace libpktriggercord/CMakeLists.txt \
-      --replace "set (PK_DATADIR /usr/share/pktriggercord)" "set (PK_DATADIR $out/share/pkgtriggercord)"
-
-    sed '1i#include <ctime>' -i indi-duino/libfirmata/src/firmata.cpp # gcc12
-  '';
-
-  cmakeFlags = [
-    "-DINDI_DATA_DIR=share/indi"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d"
-    "-DRULES_INSTALL_DIR=lib/udev/rules.d"
-  ] ++ lib.optionals (!withFirmware) [
-    "-DWITH_ATIK=off"
-    "-DWITH_APOGEE=off"
-    "-DWITH_DSI=off"
-    "-DWITH_QHY=off"
-    "-DWITH_ARMADILLO=off"
-    "-DWITH_FISHCAMP=off"
-    "-DWITH_SBIG=off"
-  ];
-
-  postFixup = lib.optionalString stdenv.isLinux ''
-    for f in $out/lib/udev/rules.d/*.rules
-    do
-      substituteInPlace $f --replace "/sbin/fxload" "${libusb-with-fxload}/sbin/fxload" \
-                           --replace "/lib/firmware/" "$out/lib/firmware/" \
-                           --replace "/bin/sleep" "${coreutils}/bin/sleep" \
-                           --replace "/bin/cat" "${coreutils}/bin/cat" \
-                           --replace "/bin/echo" "${coreutils}/bin/echo" \
-                           --replace "/bin/sh" "${bash}/bin/sh"
-    done
-  '';
-
-
-  meta = with lib; {
-    homepage = "https://www.indilib.org/";
-    description = "Third party drivers for the INDI astronomical software suite";
-    changelog = "https://github.com/indilib/indi-3rdparty/releases/tag/v${version}";
-    license = licenses.lgpl2Plus;
-    maintainers = with maintainers; [ hjones2199 sheepforce ];
-    platforms = platforms.linux;
+
+      substituteInPlace 85-qhyccd.rules \
+        --replace-fail "/sbin/fxload" "${fxload}/sbin/fxload" \
+        --replace-fail "/lib/firmware" "$out/lib/firmware" \
+        --replace-fail "/bin/sleep" "${coreutils}/bin/sleep"
+
+      sed -e 's|-D $env{DEVNAME}|-p $env{BUSNUM},$env{DEVNUM}|' -i 85-qhyccd.rules
+    '';
+
+    cmakeFlags = [ "-DQHY_FIRMWARE_INSTALL_DIR=\${CMAKE_INSTALL_PREFIX}/lib/firmware/qhy" ];
+
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libqsi = buildIndi3rdParty {
+    pname = "libqsi";
+    buildInputs = [
+      libftdi1
+      indilib
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = platforms.linux;
+    };
+  };
+
+  libricohcamerasdk = buildIndi3rdParty {
+    pname = "libricohcamerasdk";
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ i686 ++ arm;
+    };
+  };
+
+  libsbig = buildIndi3rdParty {
+    pname = "libsbig";
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/firmware" "lib/firmware"
+      substituteInPlace 51-sbig-debian.rules \
+        --replace-fail "/sbin/fxload" "${fxload}/sbin/fxload" \
+        --replace-fail "/lib/firmware" "$out/lib/firmware"
+
+      sed -e 's|-D $env{DEVNAME}|-p $env{BUSNUM},$env{DEVNUM}|' -i 51-sbig-debian.rules
+    '';
+
+    buildInputs = [ libusb1 ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libstarshootg = buildIndi3rdParty {
+    pname = "libstarshootg";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libsvbony = buildIndi3rdParty {
+    pname = "libsvbony";
+    buildInputs = [
+      stdenv.cc.cc.lib
+      libusb1
+    ];
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm ++ i686;
+    };
+  };
+
+  libtoupcam = buildIndi3rdParty {
+    pname = "libtoupcam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+  libtscam = buildIndi3rdParty {
+    pname = "libtscam";
+    nativeBuildInputs = [ autoPatchelfHook ];
+    meta = with lib; {
+      license = lib.licenses.unfreeRedistributable;
+      platforms = with platforms; x86_64 ++ aarch64 ++ arm;
+    };
+  };
+
+in
+{
+
+  indi-aagcloudwatcher-ng = buildIndi3rdParty {
+    pname = "indi-aagcloudwatcher-ng";
+    buildInputs = [ indilib ];
+  };
+
+  # libahc-xc needs libdfu, which is not packaged
+  # indi-ahp-xc = buildIndi3rdParty {
+  #   pname = "indi-ahp-xc";
+  #   buildInputs = [ cfitsio indilib libahp-xc libnova zlib ];
+  #   meta.platforms = libahp-xc.meta.platforms;
+  # };
+
+  indi-aok = buildIndi3rdParty {
+    pname = "indi-aok";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-apogee = buildIndi3rdParty {
+    pname = "indi-apogee";
+    buildInputs = [
+      cfitsio
+      indilib
+      libapogee
+      zlib
+    ];
+    meta.platforms = libapogee.meta.platforms;
+  };
+
+  indi-armadillo-platypus = buildIndi3rdParty {
+    pname = "indi-armadillo-platypus";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/udev/rules.d" "lib/udev/rules.d"
+    '';
+  };
+
+  indi-asi = buildIndi3rdParty {
+    pname = "indi-asi";
+    buildInputs = [
+      cfitsio
+      indilib
+      libasi
+      libusb1
+      zlib
+    ];
+    meta.platforms = libasi.meta.platforms;
+  };
+
+  # broken needs pigpio
+  indi-asi-power = buildIndi3rdParty {
+    pname = "indi-asi-power";
+    buildInputs = [ indilib ];
+    meta.platforms = [ ];
+    meta.broken = true;
+  };
+
+  indi-astroasis = buildIndi3rdParty {
+    pname = "indi-astroasis";
+    buildInputs = [
+      cfitsio
+      indilib
+      libastroasis
+      libusb1
+      zlib
+    ];
+    meta.platforms = libastroasis.meta.platforms;
+  };
+
+  indi-astrolink4 = buildIndi3rdParty {
+    pname = "indi-astrolink4";
+    buildInputs = [ indilib ];
+  };
+
+  indi-astromechfoc = buildIndi3rdParty {
+    pname = "indi-astromechfoc";
+    buildInputs = [
+      indilib
+      zlib
+    ];
+  };
+
+  indi-atik = buildIndi3rdParty {
+    pname = "indi-atik";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libatik ];
+    meta.platforms = libatik.meta.platforms;
+  };
+
+  indi-avalon = buildIndi3rdParty {
+    pname = "indi-avalon";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-avalonud = buildIndi3rdParty {
+    pname = "indi-avalonud";
+    buildInputs = [
+      indilib
+      libnova
+      zeromq
+    ];
+  };
+
+  indi-beefocus = buildIndi3rdParty {
+    pname = "indi-beefocus";
+    buildInputs = [
+      gtest
+      indilib
+    ];
+  };
+
+  indi-bresserexos2 = buildIndi3rdParty {
+    pname = "indi-bresserexos2";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-celestronaux = buildIndi3rdParty {
+    pname = "indi-celestronaux";
+    buildInputs = [
+      indilib
+      gsl
+      libnova
+      zlib
+    ];
+  };
+
+  indi-dreamfocuser = buildIndi3rdParty {
+    pname = "indi-dreamfocuser";
+    buildInputs = [ indilib ];
+  };
+
+  indi-dsi = buildIndi3rdParty {
+    pname = "indi-dsi";
+    buildInputs = [
+      gtest
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt \
+        --replace-fail "/lib/udev/rules.d" "lib/udev/rules.d" \
+        --replace-fail "/lib/firmware" "lib/firmware"
+      substituteInPlace 99-meadedsi.rules \
+        --replace-fail "/sbin/fxload" "${fxload}/sbin/fxload" \
+        --replace-fail "/lib/firmware" "$out/lib/firmware"
+
+      sed -e 's|-D $env{DEVNAME}|-p $env{BUSNUM},$env{DEVNUM}|' -i 99-meadedsi.rules
+    '';
+  };
+
+  indi-duino = buildIndi3rdParty {
+    pname = "indi-duino";
+    buildInputs = [
+      curl
+      indilib
+    ];
+  };
+
+  indi-eqmod = buildIndi3rdParty {
+    pname = "indi-eqmod";
+    buildInputs = [
+      indilib
+      gsl
+      gtest
+      libahp-gt
+      libnova
+      zlib
+    ];
+    meta.platforms = libahp-gt.meta.platforms;
+  };
+
+  indi-ffmv = buildIndi3rdParty {
+    pname = "indi-ffmv";
+    buildInputs = [
+      cfitsio
+      indilib
+      libdc1394
+      zlib
+    ];
+  };
+
+  indi-fishcamp = buildIndi3rdParty {
+    pname = "indi-fishcamp";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libfishcamp ];
+    meta.platforms = libfishcamp.meta.platforms;
+  };
+
+  indi-fli = buildIndi3rdParty {
+    pname = "indi-fli";
+    buildInputs = [
+      cfitsio
+      indilib
+      zlib
+    ];
+    propagatedBuildInputs = [ libfli ];
+    meta.platforms = libfli.meta.platforms;
+  };
+
+  indi-gige = buildIndi3rdParty {
+    pname = "indi-gige";
+    buildInputs = [
+      aravis
+      cfitsio
+      indilib
+      glib
+      zlib
+    ];
+  };
+
+  indi-gphoto = buildIndi3rdParty {
+    pname = "indi-gphoto";
+    buildInputs = [
+      cfitsio
+      libjpeg
+      libraw
+      libusb1
+      indilib
+      zlib
+    ];
+    propagatedBuildInputs = [ libgphoto2 ];
+  };
+
+  indi-gpio = buildIndi3rdParty {
+    pname = "indi-gpio";
+    buildInputs = [
+      indilib
+      libgpiod_1
+      libnova
+      zlib
+    ];
+  };
+
+  indi-gpsd = buildIndi3rdParty {
+    pname = "indi-gpsd";
+    buildInputs = [
+      indilib
+      gpsd
+      libnova
+      zlib
+    ];
+  };
+
+  indi-gpsnmea = buildIndi3rdParty {
+    pname = "indi-gpsnmea";
+    buildInputs = [
+      indilib
+      libnova
+      zlib
+    ];
+  };
+
+  indi-inovaplx = buildIndi3rdParty {
+    pname = "indi-inovaplx";
+    buildInputs = [
+      cfitsio
+      indilib
+      zlib
+    ];
+    propagatedBuildInputs = [ libinovasdk ];
+    meta.platforms = libinovasdk.meta.platforms;
+  };
+
+  # broken, wants rpicam-apps
+  indi-libcamera = buildIndi3rdParty {
+    pname = "indi-libcamera";
+    buildInputs = [
+      boost
+      cfitsio
+      indilib
+      libcamera
+      libexif
+      libdrm
+      libpng
+      libusb1
+      libraw
+      zlib
+    ];
+    meta.platforms = [ ];
+    meta.broken = true;
+  };
+
+  indi-limesdr = buildIndi3rdParty {
+    pname = "indi-limesdr";
+    buildInputs = [
+      cfitsio
+      indilib
+      limesuite
+      zlib
+    ];
+  };
+
+  indi-maxdomeii = buildIndi3rdParty {
+    pname = "indi-maxdomeii";
+    buildInputs = [
+      gtest
+      indilib
+      libnova
+      zlib
+    ];
+  };
+
+  indi-mgen = buildIndi3rdParty {
+    pname = "indi-mgen";
+    buildInputs = [
+      cfitsio
+      indilib
+      libftdi1
+      zlib
+    ];
+  };
+
+  indi-mi = buildIndi3rdParty {
+    pname = "indi-mi";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libmicam ];
+  };
+
+  indi-nexdome = buildIndi3rdParty {
+    pname = "indi-nexdome";
+    buildInputs = [
+      indilib
+      libnova
+      zlib
+    ];
+  };
+
+  indi-nightscape = buildIndi3rdParty {
+    pname = "indi-nightscape";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      libftdi1
+      zlib
+    ];
+  };
+
+  indi-nut = buildIndi3rdParty {
+    pname = "indi-nut";
+    buildInputs = [
+      indilib
+      nut
+      zlib
+    ];
+  };
+
+  indi-ocs = buildIndi3rdParty {
+    pname = "indi-ocs";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-orion-ssg3 = buildIndi3rdParty {
+    pname = "indi-orion-ssg3";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/udev/rules.d" "lib/udev/rules.d"
+    '';
+  };
+
+  indi-pentax = buildIndi3rdParty {
+    pname = "indi-pentax";
+    buildInputs = [
+      cfitsio
+      indilib
+      libraw
+      zlib
+    ];
+    propagatedBuildInputs = [
+      libpktriggercord
+      libricohcamerasdk
+    ];
+
+    meta.platforms = libricohcamerasdk.meta.platforms;
+  };
+
+  indi-playerone = buildIndi3rdParty {
+    pname = "indi-playerone";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libplayerone ];
+    meta.platforms = libplayerone.meta.platforms;
+  };
+
+  indi-qhy = buildIndi3rdParty {
+    pname = "indi-qhy";
+    buildInputs = [
+      libqhy
+      cfitsio
+      indilib
+      libnova
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libqhy ];
+    meta.platforms = libqhy.meta.platforms;
+  };
+
+  indi-qsi = buildIndi3rdParty {
+    pname = "indi-qsi";
+    buildInputs = [
+      cfitsio
+      indilib
+      libqsi
+      zlib
+    ];
+
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/udev/rules.d" "lib/udev/rules.d"
+    '';
+
+    meta.platforms = libqsi.meta.platforms;
+  };
+
+  indi-rolloffino = buildIndi3rdParty {
+    pname = "indi-rolloffino";
+    buildInputs = [
+      indilib
+      libnova
+      zlib
+    ];
+  };
+
+  indi-rpi-gpio = buildIndi3rdParty {
+    pname = "indi-rpi-gpio";
+    buildInputs = [
+      indilib
+      libpigpiod
+    ];
+    meta.platforms = libpigpiod.meta.platforms;
+  };
+
+  indi-rtklib = buildIndi3rdParty {
+    pname = "indi-rtklib";
+    buildInputs = [
+      indilib
+      libnova
+      libpng
+      zlib
+    ];
   };
+
+  indi-sbig = buildIndi3rdParty {
+    pname = "indi-sbig";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+      zlib
+    ];
+    propagatedBuildInputs = [ libsbig ];
+  };
+
+  indi-shelyak = buildIndi3rdParty {
+    pname = "indi-shelyak";
+    buildInputs = [ indilib ];
+  };
+
+  indi-spectracyber = buildIndi3rdParty {
+    pname = "indi-spectracyber";
+    buildInputs = [
+      indilib
+      libnova
+      zlib
+    ];
+  };
+
+  indi-starbook = buildIndi3rdParty {
+    pname = "indi-starbook";
+    buildInputs = [
+      curl
+      indilib
+      gtest
+      libnova
+    ];
+  };
+
+  indi-starbook-ten = buildIndi3rdParty {
+    pname = "indi-starbook-ten";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-svbony = buildIndi3rdParty {
+    pname = "indi-svbony";
+    buildInputs = [
+      cfitsio
+      indilib
+      zlib
+    ];
+    propagatedBuildInputs = [ libsvbony ];
+
+    meta.platforms = libsvbony.meta.platforms;
+  };
+
+  indi-sx = buildIndi3rdParty {
+    pname = "indi-sx";
+    buildInputs = [
+      cfitsio
+      indilib
+      libusb1
+    ];
+    postPatch = ''
+      substituteInPlace CMakeLists.txt --replace-fail "/lib/udev/rules.d" "lib/udev/rules.d"
+    '';
+  };
+
+  indi-talon6 = buildIndi3rdParty {
+    pname = "indi-talon6";
+    buildInputs = [
+      indilib
+      libnova
+    ];
+  };
+
+  indi-toupbase = buildIndi3rdParty {
+    pname = "indi-toupbase";
+    buildInputs = [
+      cfitsio
+      indilib
+      zlib
+    ];
+    propagatedBuildInputs = [
+      libaltaircam
+      libbressercam
+      libmallincam
+      libmeadecam
+      libnncam
+      libogmacam
+      libomegonprocam
+      libstarshootg
+      libtoupcam
+      libtscam
+    ];
+
+    meta.platforms = with lib.platforms; aarch64 ++ x86_64;
+  };
+
+  indi-webcam = buildIndi3rdParty {
+    pname = "indi-webcam";
+    buildInputs = [
+      cfitsio
+      indilib
+      ffmpeg-headless
+      zlib
+    ];
+  };
+
+  indi-weewx-json = buildIndi3rdParty {
+    pname = "indi-weewx-json";
+    buildInputs = [
+      curl
+      indilib
+    ];
+  };
+
 }
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
deleted file mode 100644
index 1eedfd3fea0bd..0000000000000
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{ stdenv
-, lib
-, bash
-, cmake
-, cfitsio
-, coreutils
-, libusb1
-, zlib
-, boost
-, libnova
-, curl
-, libjpeg
-, gsl
-, fftw
-, indilib
-, libgphoto2
-, libraw
-, libftdi1
-, libdc1394
-, gpsd
-, ffmpeg
-, version
-, src
-, autoPatchelfHook
-}:
-let
-  libusb-with-fxload = libusb1.override { withExamples = true;};
-in
-stdenv.mkDerivation rec {
-  pname = "indi-firmware";
-
-  inherit version src;
-
-  nativeBuildInputs = [ cmake autoPatchelfHook ];
-
-  buildInputs = [
-    indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd
-    libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw
-  ];
-
-  cmakeFlags = [
-    "-DINDI_DATA_DIR=\${CMAKE_INSTALL_PREFIX}/share/indi"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d"
-    "-DRULES_INSTALL_DIR=lib/udev/rules.d"
-    "-DFIRMWARE_INSTALL_DIR=lib/firmware"
-    "-DQHY_FIRMWARE_INSTALL_DIR=\${CMAKE_INSTALL_PREFIX}/lib/firmware/qhy"
-    "-DCONF_DIR=etc"
-    "-DBUILD_LIBS=1"
-    "-DWITH_PENTAX=off"
-    "-DWITH_AHP_XC=off"
-  ];
-
-  postPatch = ''
-    for f in {libfishcamp,libsbig,libqhy}/CMakeLists.txt
-    do
-      substituteInPlace $f --replace "/lib/firmware" "lib/firmware"
-    done
-  '';
-
-  postFixup = lib.optionalString stdenv.isLinux ''
-    for f in $out/lib/udev/rules.d/*.rules
-    do
-      substituteInPlace "$f" --replace "/sbin/fxload" "${libusb-with-fxload}/sbin/fxload" \
-                             --replace "/bin/sleep" "${coreutils}/bin/sleep" \
-                             --replace "/bin/cat" "${coreutils}/bin/cat" \
-                             --replace "/bin/echo" "${coreutils}/bin/echo" \
-                             --replace "/bin/sh" "${bash}/bin/sh" \
-                             --replace "/lib/firmware/" "$out/lib/firmware/"
-      sed -e 's|-D $env{DEVNAME}|-p $env{BUSNUM},$env{DEVNUM}|' -i "$f"
-    done
-  '';
-
-  meta = with lib; {
-    homepage = "https://www.indilib.org/";
-    description = "Third party firmware for the INDI astronomical software suite";
-    changelog = "https://github.com/indilib/indi-3rdparty/releases/tag/v${version}";
-    license = licenses.lgpl2Plus;
-    maintainers = with maintainers; [ hjones2199 sheepforce ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
deleted file mode 100644
index c24388582d36b..0000000000000
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, lib, callPackage, fetchFromGitHub, indilib }:
-
-let
-  inherit (indilib) version;
-  indi-3rdparty-src = fetchFromGitHub {
-    owner = "indilib";
-    repo = "indi-3rdparty";
-    rev = "v${version}";
-    hash = "sha256-0M+k3A2Lw9EU9V5bX9dGztmdcJzc71XQZv8srmY5NmY=";
-  };
-  indi-firmware = callPackage ./indi-firmware.nix {
-    inherit version;
-    src = indi-3rdparty-src;
-  };
-  indi-3rdparty = callPackage ./indi-3rdparty.nix {
-    inherit version;
-    src = indi-3rdparty-src;
-    withFirmware = stdenv.isx86_64 || stdenv.isAarch64;
-    firmware = indi-firmware;
-  };
-in
-callPackage ./indi-with-drivers.nix {
-  pname = "indi-full";
-  inherit version;
-  extraDrivers = [
-    indi-3rdparty
-  ] ++ lib.optional (stdenv.isx86_64 || stdenv.isAarch64) indi-firmware
-  ;
-}
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix
deleted file mode 100644
index f1201df1d8a05..0000000000000
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-with-drivers.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ buildEnv, makeBinaryWrapper, indilib ? indilib, pname ? "indi-with-drivers", version ? null, extraDrivers ? null }:
-
-buildEnv {
-  name = "${pname}-${version}";
-  paths = [
-    indilib
-  ]
-  ++ extraDrivers;
-
-  nativeBuildInputs = [ makeBinaryWrapper ];
-
-  postBuild = ''
-    makeBinaryWrapper ${indilib}/bin/indiserver $out/bin/indiserver --set-default INDIPREFIX $out
-  '';
-
-
-  inherit (indilib) meta;
-}
diff --git a/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix b/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
index 8c6eb60d1d2b0..3591a86dbb701 100644
--- a/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
+++ b/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "stellarsolver";
-  version = "2.5";
+  version = "2.6";
 
   src = fetchFromGitHub {
     owner = "rlancaste";
     repo = pname;
     rev = version;
-    sha256 = "sha256-0bFGHlkZnAZlnxlj8tY3s9yTWgkNtSsPFfudB3uvyOA=";
+    sha256 = "sha256-6WDiHaBhi9POtXynGU/eTeuqZSK81JJeuZv4SxOeVoE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/science/biology/bicgl/default.nix b/pkgs/development/libraries/science/biology/bicgl/default.nix
index 07d64fbd97ed2..89f4220f92f41 100644
--- a/pkgs/development/libraries/science/biology/bicgl/default.nix
+++ b/pkgs/development/libraries/science/biology/bicgl/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libminc, bicpl, freeglut, mesa_glu, GLUT }:
+{ lib, stdenv, fetchFromGitHub, cmake, libminc, bicpl, libGLU, libglut }:
 
 stdenv.mkDerivation rec {
   pname = "bicgl";
@@ -14,9 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ libminc bicpl mesa_glu ]
-    ++ lib.optionals stdenv.isDarwin [ GLUT ]
-    ++ lib.optionals stdenv.isLinux [ freeglut ];
+  buildInputs = [ libminc bicpl libGLU libglut ];
 
   cmakeFlags = [
     "-DLIBMINC_DIR=${libminc}/lib/cmake"
diff --git a/pkgs/development/libraries/science/biology/bpp-core/default.nix b/pkgs/development/libraries/science/biology/bpp-core/default.nix
index 0d0e3c1149203..673cebe59e8ed 100644
--- a/pkgs/development/libraries/science/biology/bpp-core/default.nix
+++ b/pkgs/development/libraries/science/biology/bpp-core/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   # of form /nix/store/.../nix/store/.../include,
   # probably due to relative vs absolute path issue
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = with lib; {
     homepage = "https://github.com/BioPP/bpp-core";
diff --git a/pkgs/development/libraries/science/biology/bpp-phyl/default.nix b/pkgs/development/libraries/science/biology/bpp-phyl/default.nix
index 0b18dbfcf19ad..6242516174796 100644
--- a/pkgs/development/libraries/science/biology/bpp-phyl/default.nix
+++ b/pkgs/development/libraries/science/biology/bpp-phyl/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
       --replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
   '';
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = bpp-core.meta // {
     homepage = "https://github.com/BioPP/bpp-phyl";
diff --git a/pkgs/development/libraries/science/biology/bpp-popgen/default.nix b/pkgs/development/libraries/science/biology/bpp-popgen/default.nix
index 2cb89b4bbd383..f7662766fb2c4 100644
--- a/pkgs/development/libraries/science/biology/bpp-popgen/default.nix
+++ b/pkgs/development/libraries/science/biology/bpp-popgen/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   # of form /nix/store/.../nix/store/.../include,
   # probably due to relative vs absolute path issue
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = bpp-core.meta // {
     homepage = "https://github.com/BioPP/bpp-popgen";
diff --git a/pkgs/development/libraries/science/biology/bpp-seq/default.nix b/pkgs/development/libraries/science/biology/bpp-seq/default.nix
index 2f6fbf9e362c7..0699c5316835a 100644
--- a/pkgs/development/libraries/science/biology/bpp-seq/default.nix
+++ b/pkgs/development/libraries/science/biology/bpp-seq/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   # of form /nix/store/.../nix/store/.../include,
   # probably due to relative vs absolute path issue
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   meta = bpp-core.meta // {
     homepage = "https://github.com/BioPP/bpp-seq";
diff --git a/pkgs/development/libraries/science/biology/elastix/default.nix b/pkgs/development/libraries/science/biology/elastix/default.nix
index 0344559f8a8f4..46b297722feb1 100644
--- a/pkgs/development/libraries/science/biology/elastix/default.nix
+++ b/pkgs/development/libraries/science/biology/elastix/default.nix
@@ -1,26 +1,35 @@
-{ lib, stdenv, fetchFromGitHub, cmake, itk, Cocoa }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  itk,
+  Cocoa,
+}:
 
-stdenv.mkDerivation rec {
-  pname    = "elastix";
-  version = "5.1.0";
+stdenv.mkDerivation (finalAttrs: {
+  pname = "elastix";
+  version = "5.2.0";
 
   src = fetchFromGitHub {
     owner = "SuperElastix";
-    repo = pname;
-    rev = version;
-    hash = "sha256-wFeLU8IwiF43a9TAvecQG+QMw88PQZdJ8sI1Zz3ZeXc=";
+    repo = "elastix";
+    rev = "refs/tags/${finalAttrs.version}";
+    hash = "sha256-edUMj8sjku8EVYaktteIDS+ouaN3kg+CXQCeSWKlLDI=";
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ itk ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
+  buildInputs = [ itk ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ];
 
-  doCheck = !stdenv.isDarwin;  # usual dynamic linker issues
+  doCheck = !stdenv.hostPlatform.isDarwin; # usual dynamic linker issues
 
   meta = with lib; {
     homepage = "https://elastix.lumc.nl";
     description = "Image registration toolkit based on ITK";
+    changelog = "https://github.com/SuperElastix/elastix/releases/tag/${finalAttrs.version}";
     maintainers = with maintainers; [ bcdarwin ];
-    platforms = platforms.x86_64;  # libitkpng linker issues with ITK 5.1
+    mainProgram = "elastix";
+    platforms = platforms.x86_64; # libitkpng linker issues with ITK 5.1
     license = licenses.asl20;
   };
-}
+})
diff --git a/pkgs/development/libraries/science/biology/gifticlib/default.nix b/pkgs/development/libraries/science/biology/gifticlib/default.nix
index 306324129cbdf..b305df08860b6 100644
--- a/pkgs/development/libraries/science/biology/gifticlib/default.nix
+++ b/pkgs/development/libraries/science/biology/gifticlib/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ expat nifticlib zlib ];
 
   # without the test data, this is only a few basic tests
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
   checkPhase = ''
     runHook preCheck
     ctest -LE 'NEEDS_DATA'
diff --git a/pkgs/development/libraries/science/biology/mirtk/default.nix b/pkgs/development/libraries/science/biology/mirtk/default.nix
index ce02474eeb1e2..979f3589b3302 100644
--- a/pkgs/development/libraries/science/biology/mirtk/default.nix
+++ b/pkgs/development/libraries/science/biology/mirtk/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     eigen
     fltk
     itk
-    libGLU.dev
+    libGLU
     python3
     tbb
     vtk
diff --git a/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix b/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
index e50bde243e85e..f0d23b7e2e257 100644
--- a/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
+++ b/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, eigen, libGL, doxygen, spglib
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, eigen, libGL, spglib
 , mmtf-cpp, glew, python3, libarchive, libmsym, msgpack, qttools, wrapQtAppsHook
 }:
 
diff --git a/pkgs/development/libraries/science/chemistry/dftd4/default.nix b/pkgs/development/libraries/science/chemistry/dftd4/default.nix
index ea7aafd156ae6..818155cd37268 100644
--- a/pkgs/development/libraries/science/chemistry/dftd4/default.nix
+++ b/pkgs/development/libraries/science/chemistry/dftd4/default.nix
@@ -26,6 +26,11 @@ stdenv.mkDerivation rec {
     hash = "sha256-VIV9953hx0MZupOARdH+P1h7JtZeJmTlqtO8si+lwdU=";
   };
 
+  patches = [
+    # Make sure fortran headers are installed directly in /include
+    ./fortran-module-dir.patch
+  ];
+
   nativeBuildInputs = [ gfortran meson ninja pkg-config python3 ];
 
   buildInputs = [ blas lapack mctc-lib mstore multicharge ];
diff --git a/pkgs/development/libraries/science/chemistry/dftd4/fortran-module-dir.patch b/pkgs/development/libraries/science/chemistry/dftd4/fortran-module-dir.patch
new file mode 100644
index 0000000000000..88d33a8d0499a
--- /dev/null
+++ b/pkgs/development/libraries/science/chemistry/dftd4/fortran-module-dir.patch
@@ -0,0 +1,56 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f222aab..262b505 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -89,7 +89,6 @@ target_include_directories(
+   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
+   $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>
+   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
+-  $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${module-dir}>
+ )
+ target_include_directories(
+   "${PROJECT_NAME}-lib"
+@@ -132,7 +131,7 @@ install(
+ install(
+   DIRECTORY
+   "${CMAKE_CURRENT_BINARY_DIR}/include/"
+-  DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${module-dir}"
++  DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/"
+ )
+ if(WITH_API)
+   enable_language("C")
+diff --git a/config/template.cmake b/config/template.cmake
+index 8b5141d..8f94d66 100644
+--- a/config/template.cmake
++++ b/config/template.cmake
+@@ -6,7 +6,6 @@ set("@PROJECT_NAME@_WITH_OpenMP" @WITH_OpenMP@)
+ set(
+   "@PROJECT_NAME@_INCLUDE_DIRS"
+   "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@"
+-  "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/@module-dir@"
+ )
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+ 
+diff --git a/config/template.pc b/config/template.pc
+index 3d6efbb..fea69e4 100644
+--- a/config/template.pc
++++ b/config/template.pc
+@@ -6,4 +6,4 @@ Name: @PROJECT_NAME@
+ Description: @PROJECT_DESCRIPTION@
+ Version: @PROJECT_VERSION@
+ Libs: -L${libdir} -l@PROJECT_NAME@
+-Cflags: -I${includedir} -I${includedir}/@module-dir@
++Cflags: -I${includedir} -I${includedir}/
+diff --git a/meson.build b/meson.build
+index c9e9c58..ac8f0bd 100644
+--- a/meson.build
++++ b/meson.build
+@@ -83,7 +83,7 @@ if install
+     )
+   endif
+ 
+-  module_id = meson.project_name() / fc_id + '-' + fc.version()
++  module_id = meson.project_name()
+   meson.add_install_script(
+     find_program(files('config'/'install-mod.py')),
+     get_option('includedir') / module_id,
diff --git a/pkgs/development/libraries/science/chemistry/mctc-lib/default.nix b/pkgs/development/libraries/science/chemistry/mctc-lib/default.nix
index 58c1fdaf04e24..3021cf8f437df 100644
--- a/pkgs/development/libraries/science/chemistry/mctc-lib/default.nix
+++ b/pkgs/development/libraries/science/chemistry/mctc-lib/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mctc-lib";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "grimme-lab";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-AXjg/ZsitdDf9fNoGVmVal1iZ4/sxjJb7A9W4yye/rg=";
+    hash = "sha256-dJYKnGlcc4N40h1RnP6MJyBj70/8kb1q4OyKTmlvS70=";
   };
 
   nativeBuildInputs = [ gfortran meson ninja pkg-config python3 ];
diff --git a/pkgs/development/libraries/science/chemistry/openmm/default.nix b/pkgs/development/libraries/science/chemistry/openmm/default.nix
index 723ced8b2a590..35aa46d270c24 100644
--- a/pkgs/development/libraries/science/chemistry/openmm/default.nix
+++ b/pkgs/development/libraries/science/chemistry/openmm/default.nix
@@ -14,18 +14,18 @@
 , config
 , enableCuda ? config.cudaSupport
 , cudaPackages
-, addOpenGLRunpath
+, addDriverRunpath
 }:
 
 stdenv.mkDerivation rec {
   pname = "openmm";
-  version = "8.1.1";
+  version = "8.1.2";
 
   src = fetchFromGitHub {
     owner = "openmm";
     repo = pname;
     rev = version;
-    hash = "sha256-pYWBniV1J+UZBOPPjuUxVevONHaclo+GvGBEpr7Zmxg=";
+    hash = "sha256-2UFccB+xXAw3uRw0G1TKlqTVl9tUl1sRPFG4H05vq04=";
   };
 
   # "This test is stochastic and may occassionally fail". It does.
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     python3Packages.build
     python3Packages.installer
     python3Packages.wheel
-  ] ++ lib.optional enableCuda addOpenGLRunpath;
+  ] ++ lib.optional enableCuda addDriverRunpath;
 
   buildInputs = [ fftwSinglePrec ]
     ++ lib.optionals enableOpencl [ ocl-icd opencl-headers ]
@@ -94,7 +94,7 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     for lib in $out/lib/plugins/*CUDA.so $out/lib/plugins/*Cuda*.so; do
-      addOpenGLRunpath "$lib"
+      addDriverRunpath "$lib"
     done
   '';
 
diff --git a/pkgs/development/libraries/science/chemistry/plumed/default.nix b/pkgs/development/libraries/science/chemistry/plumed/default.nix
index b70d2146b2da1..643ee2bc228c0 100644
--- a/pkgs/development/libraries/science/chemistry/plumed/default.nix
+++ b/pkgs/development/libraries/science/chemistry/plumed/default.nix
@@ -8,13 +8,13 @@ assert !blas.isILP64;
 
 stdenv.mkDerivation rec {
   pname = "plumed";
-  version = "2.9.1";
+  version = "2.9.2";
 
   src = fetchFromGitHub {
     owner = "plumed";
     repo = "plumed2";
     rev = "v${version}";
-    hash = "sha256-68/ajM87ApEXUs4xPIq7Vfmzl7Ms4ck6jnjlIv7woMs=";
+    hash = "sha256-jNvdbfh1krNMrOFqkEHMy60mjsG/Wp6MQg0gHEjDA5U=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix b/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix
index eb8fa56455e41..ebc853c369b54 100644
--- a/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix
+++ b/pkgs/development/libraries/science/chemistry/simple-dftd3/default.nix
@@ -15,13 +15,13 @@ assert !blas.isILP64;
 
 stdenv.mkDerivation rec {
   pname = "simple-dftd3";
-  version = "1.0.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "dftd3";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dfXiKKCGJ69aExSKpVC3Bp//COy256R9PDyxCNmDsfo=";
+    hash = "sha256-gN8uBc/Fk5U7wlBX1tkAWdxN9UW1Dv11GvaIBkEyBJw=";
   };
 
   nativeBuildInputs = [ gfortran meson ninja pkg-config ];
diff --git a/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix
index 74f24e10f55f2..267ac53d75d1b 100644
--- a/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix
+++ b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix
@@ -1,6 +1,4 @@
 { buildPythonPackage
-, pkg-config
-, meson
 , simple-dftd3
 , cffi
 , numpy
diff --git a/pkgs/development/libraries/science/math/arpack/default.nix b/pkgs/development/libraries/science/math/arpack/default.nix
index 744d565eddcd7..06503bbc7ddd6 100644
--- a/pkgs/development/libraries/science/math/arpack/default.nix
+++ b/pkgs/development/libraries/science/math/arpack/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     export OMP_NUM_THREADS=2
   '';
 
-  postFixup = lib.optionalString stdenv.isDarwin ''
+  postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libarpack.dylib
   '';
 
diff --git a/pkgs/development/libraries/science/math/blas/default.nix b/pkgs/development/libraries/science/math/blas/default.nix
index 4431ab63c7b7f..fcb78767678ea 100644
--- a/pkgs/development/libraries/science/math/blas/default.nix
+++ b/pkgs/development/libraries/science/math/blas/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     ln -s $out/lib/libblas64${canonicalExtension} $out/lib/libblas${canonicalExtension}
   '';
 
-  preFixup = lib.optionalString stdenv.isDarwin ''
+  preFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
     for fn in $(find $out/lib -name "*.so*"); do
       if [ -L "$fn" ]; then continue; fi
       install_name_tool -id "$fn" "$fn"
diff --git a/pkgs/development/libraries/science/math/bonmin/default.nix b/pkgs/development/libraries/science/math/bonmin/default.nix
index 272d13b1711ec..1cf64101face3 100644
--- a/pkgs/development/libraries/science/math/bonmin/default.nix
+++ b/pkgs/development/libraries/science/math/bonmin/default.nix
@@ -1,15 +1,20 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fontconfig
 , gfortran
 , pkg-config
 , blas
 , bzip2
 , cbc
 , clp
+, doxygen
+, graphviz
 , ipopt
 , lapack
 , libamplsolver
+, osi
+, texliveSmall
 , zlib
 }:
 
@@ -26,9 +31,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-nqjAQ1NdNJ/T4p8YljEWRt/uy2aDwyBeAsag0TmRc5Q=";
   };
 
+  __structuredAttrs = true;
+
   nativeBuildInputs = [
+    doxygen
     gfortran
+    graphviz
     pkg-config
+    texliveSmall
   ];
   buildInputs = [
     blas
@@ -38,17 +48,43 @@ stdenv.mkDerivation rec {
     ipopt
     lapack
     libamplsolver
+    osi
     zlib
   ];
 
-  meta = with lib; {
+  configureFlags = lib.optionals stdenv.hostPlatform.isDarwin [
+    "--with-asl-lib=-lipoptamplinterface -lamplsolver"
+  ];
+
+  # Fix doc install. Should not be necessary after next release
+  # ref https://github.com/coin-or/Bonmin/commit/4f665bc9e489a73cb867472be9aea518976ecd28
+  sourceRoot = "${src.name}/Bonmin";
+
+  # Fontconfig error: Cannot load default config file: No such file: (null)
+  env.FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
+
+  # Fontconfig error: No writable cache directories
+  preBuild = "export XDG_CACHE_HOME=$(mktemp -d)";
+
+  doCheck = true;
+  checkTarget = "test";
+
+  # ignore one failing test
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    substituteInPlace test/Makefile.in --replace-fail \
+      "./unitTest\''$(EXEEXT)" \
+      ""
+  '';
+
+  # install documentation
+  postInstall = "make install-doxygen-docs";
+
+  meta = {
     description = "Open-source code for solving general MINLP (Mixed Integer NonLinear Programming) problems";
     mainProgram = "bonmin";
     homepage = "https://github.com/coin-or/Bonmin";
-    license = licenses.epl10;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ aanderse ];
-    # never built on aarch64-darwin, x86_64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin;
+    license = lib.licenses.epl10;
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ aanderse ];
   };
 }
diff --git a/pkgs/development/libraries/science/math/clblas/default.nix b/pkgs/development/libraries/science/math/clblas/default.nix
index e5ad0e3e63d9c..17dddf9018199 100644
--- a/pkgs/development/libraries/science/math/clblas/default.nix
+++ b/pkgs/development/libraries/science/math/clblas/default.nix
@@ -42,20 +42,19 @@ stdenv.mkDerivation rec {
      "-DBUILD_TEST=OFF"
   ];
 
-  nativeBuildInputs = [ cmake gfortran ];
+  nativeBuildInputs = [ cmake gfortran python3 ];
   buildInputs = [
     blas
-    python3
     boost
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     ocl-icd
     opencl-headers
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Accelerate
     CoreGraphics
     CoreVideo
   ];
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     OpenCL
   ];
 
diff --git a/pkgs/development/libraries/science/math/clblast/default.nix b/pkgs/development/libraries/science/math/clblast/default.nix
index a7c8d8faee4c0..3bf38086ca2fa 100644
--- a/pkgs/development/libraries/science/math/clblast/default.nix
+++ b/pkgs/development/libraries/science/math/clblast/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clblast";
-  version = "1.6.2";
+  version = "1.6.3";
 
   src = fetchFromGitHub {
     owner = "CNugteren";
     repo = "CLBlast";
     rev = version;
-    hash = "sha256-S25g25Il6rzkpU9IqOFDDeEr3uYyt/uewZZAl09YSts=";
+    hash = "sha256-fzenYFCAQ0B2NQgh5OaErv/yNEzjznB6ogRapqfL6P4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/science/math/dbcsr/default.nix b/pkgs/development/libraries/science/math/dbcsr/default.nix
index 2c576a1900267..34f9c4db39cc9 100644
--- a/pkgs/development/libraries/science/math/dbcsr/default.nix
+++ b/pkgs/development/libraries/science/math/dbcsr/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dbcsr";
-  version = "2.6.0";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "cp2k";
     repo = "dbcsr";
     rev = "v${version}";
-    hash = "sha256-+xSxfrzsxBdb424F/3mIETleEPoETxU0LB0OBJrR7gw=";
+    hash = "sha256-QEO7f27DLsCvKXgFJnneHs1kO+5V9xiURpbQuGg1P0M=";
   };
 
   postPatch = ''
@@ -50,10 +50,6 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ mpi ];
 
-  preConfigure = ''
-    export PKG_CONFIG_PATH=${libxsmm}/lib
-  '';
-
   cmakeFlags = [
     "-DUSE_OPENMP=ON"
     "-DUSE_SMM=libxsmm"
diff --git a/pkgs/development/libraries/science/math/faiss/default.nix b/pkgs/development/libraries/science/math/faiss/default.nix
index 5af73735fdf60..a8e697132e903 100644
--- a/pkgs/development/libraries/science/math/faiss/default.nix
+++ b/pkgs/development/libraries/science/math/faiss/default.nix
@@ -1,107 +1,111 @@
-{ lib
-, config
-, fetchFromGitHub
-, symlinkJoin
-, stdenv
-, cmake
-, cudaPackages ? { }
-, cudaSupport ? config.cudaSupport
-, pythonSupport ? true
-, pythonPackages
-, llvmPackages
-, boost
-, blas
-, swig
-, addOpenGLRunpath
-, optLevel ? let
-    optLevels =
-      lib.optionals stdenv.hostPlatform.avx2Support [ "avx2" ]
-      ++ lib.optionals stdenv.hostPlatform.sse4_1Support [ "sse4" ]
-      ++ [ "generic" ];
-  in
-  # Choose the maximum available optimization level
-  builtins.head optLevels
-, faiss # To run demos in the tests
-, runCommand
+{
+  lib,
+  config,
+  fetchFromGitHub,
+  stdenv,
+  cmake,
+  cudaPackages ? { },
+  cudaSupport ? config.cudaSupport,
+  pythonSupport ? true,
+  pythonPackages,
+  llvmPackages,
+  blas,
+  swig,
+  autoAddDriverRunpath,
+  optLevel ?
+    let
+      optLevels =
+        lib.optionals stdenv.hostPlatform.avx2Support [ "avx2" ]
+        ++ lib.optionals stdenv.hostPlatform.sse4_1Support [ "sse4" ]
+        ++ [ "generic" ];
+    in
+    # Choose the maximum available optimization level
+    builtins.head optLevels,
+  faiss, # To run demos in the tests
+  runCommand,
 }@inputs:
 
 let
   pname = "faiss";
-  version = "1.7.4";
+  version = "1.8.0";
 
   inherit (cudaPackages) flags backendStdenv;
 
   stdenv = if cudaSupport then backendStdenv else inputs.stdenv;
 
-  cudaJoined = symlinkJoin {
-    name = "cuda-packages-unsplit";
-    paths = with cudaPackages; [
-      cuda_cudart # cuda_runtime.h
-      libcublas
-      libcurand
-      cuda_cccl
-    ] ++ lib.optionals (cudaPackages ? cuda_profiler_api) [
-      cuda_profiler_api # cuda_profiler_api.h
-    ] ++ lib.optionals (!(cudaPackages ? cuda_profiler_api)) [
-      cuda_nvprof # cuda_profiler_api.h
-    ];
-  };
+  cudaComponents = with cudaPackages; [
+    cuda_cudart # cuda_runtime.h
+    libcublas
+    libcurand
+    cuda_cccl
+
+    # cuda_profiler_api.h
+    (cudaPackages.cuda_profiler_api or cudaPackages.cuda_nvprof)
+  ];
 in
 stdenv.mkDerivation {
   inherit pname version;
 
-  outputs = [ "out" "demos" ];
+  outputs = [
+    "out"
+    "demos"
+  ] ++ lib.optionals pythonSupport [ "dist" ];
 
   src = fetchFromGitHub {
     owner = "facebookresearch";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-WSce9X6sLZmGM5F0ZkK54VqpIy8u1VB0e9/l78co29M=";
+    hash = "sha256-nS8nhkNGGb2oAJKfr/MIAZjAwMxBGbNd16/CkEtv67I=";
   };
 
-  buildInputs = [
-    blas
-    swig
-  ] ++ lib.optionals pythonSupport [
-    pythonPackages.setuptools
-    pythonPackages.pip
-    pythonPackages.wheel
-  ] ++ lib.optionals stdenv.cc.isClang [
-    llvmPackages.openmp
-  ] ++ lib.optionals cudaSupport [
-    cudaJoined
-  ];
-
-  propagatedBuildInputs = lib.optionals pythonSupport [
-    pythonPackages.numpy
-  ];
-
-  nativeBuildInputs = [ cmake ] ++ lib.optionals cudaSupport [
-    cudaPackages.cuda_nvcc
-    addOpenGLRunpath
-  ] ++ lib.optionals pythonSupport [
-    pythonPackages.python
-  ];
+  # Remove the following substituteInPlace when updating
+  # to a release that contains change from PR
+  # https://github.com/facebookresearch/faiss/issues/3239
+  # that fixes building faiss with swig 4.2.x
+  postPatch = ''
+    substituteInPlace faiss/python/swigfaiss.swig \
+      --replace-fail '#ifdef SWIGWORDSIZE64' '#if (__SIZEOF_LONG__ == 8)'
+  '';
 
-  passthru.extra-requires.all = [
-    pythonPackages.numpy
-  ];
+  nativeBuildInputs =
+    [ cmake ]
+    ++ lib.optionals cudaSupport [
+      cudaPackages.cuda_nvcc
+      autoAddDriverRunpath
+    ]
+    ++ lib.optionals pythonSupport [
+      pythonPackages.python
+      pythonPackages.setuptools
+      pythonPackages.pip
+      pythonPackages.wheel
+    ];
 
-  cmakeFlags = [
-    "-DFAISS_ENABLE_GPU=${if cudaSupport then "ON" else "OFF"}"
-    "-DFAISS_ENABLE_PYTHON=${if pythonSupport then "ON" else "OFF"}"
-    "-DFAISS_OPT_LEVEL=${optLevel}"
-  ] ++ lib.optionals cudaSupport [
-    "-DCMAKE_CUDA_ARCHITECTURES=${flags.cmakeCudaArchitecturesString}"
-    "-DCUDAToolkit_INCLUDE_DIR=${cudaJoined}/include"
-  ];
+  buildInputs =
+    [
+      blas
+      swig
+    ]
+    ++ lib.optionals pythonSupport [ pythonPackages.numpy ]
+    ++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ]
+    ++ lib.optionals cudaSupport cudaComponents;
+
+  cmakeFlags =
+    [
+      (lib.cmakeBool "FAISS_ENABLE_GPU" cudaSupport)
+      (lib.cmakeBool "FAISS_ENABLE_PYTHON" pythonSupport)
+      (lib.cmakeFeature "FAISS_OPT_LEVEL" optLevel)
+    ]
+    ++ lib.optionals cudaSupport [
+      (lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" flags.cmakeCudaArchitecturesString)
+    ];
 
-  buildFlags = [
-    "faiss"
-    "demo_ivfpq_indexing"
-  ] ++ lib.optionals pythonSupport [
-    "swigfaiss"
-  ];
+  buildFlags =
+    [ "faiss" ]
+    # This is just a demo app used as a test.
+    # Disabled because linkage fails:
+    # https://github.com/facebookresearch/faiss/issues/3484
+    ++ lib.optionals (!cudaSupport) [ "demo_ivfpq_indexing" ]
+    ++ lib.optionals pythonSupport [ "swigfaiss" ];
 
   # pip wheel->pip install commands copied over from opencv4
 
@@ -110,45 +114,41 @@ stdenv.mkDerivation {
      python -m pip wheel --verbose --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist .)
   '';
 
-  postInstall = ''
-    mkdir -p $demos/bin
-    cp ./demos/demo_ivfpq_indexing $demos/bin/
-  '' + lib.optionalString pythonSupport ''
-    mkdir -p $out/${pythonPackages.python.sitePackages}
-    (cd faiss/python && python -m pip install dist/*.whl --no-index --no-warn-script-location --prefix="$out" --no-cache)
-  '';
-
-  postFixup = lib.optionalString (pythonSupport && cudaSupport) ''
-    addOpenGLRunpath $out/${pythonPackages.python.sitePackages}/faiss/*.so
-    addOpenGLRunpath $demos/bin/*
-  '';
-
-  # Need buildPythonPackage for this one
-  # pythonImportsCheck = [
-  #   "faiss"
-  # ];
+  postInstall =
+    ''
+      mkdir -p $demos/bin
+      if [[ "$buildInputs" == *demo_ivfpq_indexing* ]] ; then
+        cp ./demos/demo_ivfpq_indexing $demos/bin/
+      fi
+    ''
+    + lib.optionalString pythonSupport ''
+      mkdir "$dist"
+      cp faiss/python/dist/*.whl "$dist/"
+    '';
 
   passthru = {
     inherit cudaSupport cudaPackages pythonSupport;
 
     tests = {
-      runDemos = runCommand "${pname}-run-demos"
-        { buildInputs = [ faiss.demos ]; }
-        # There are more demos, we run just the one that documentation mentions
-        ''
-          demo_ivfpq_indexing && touch $out
-        '';
-    } // lib.optionalAttrs pythonSupport {
-      pytest = pythonPackages.callPackage ./tests.nix { };
+      runDemos =
+        runCommand "${pname}-run-demos" { buildInputs = [ faiss.demos ]; }
+          # There are more demos, we run just the one that documentation mentions
+          ''
+            demo_ivfpq_indexing && touch $out
+          '';
+      pythonFaiss = pythonPackages.faiss;
+      pytest = pythonPackages.faiss.tests.pytest;
     };
   };
 
-  meta = with lib; {
+  meta = {
     description = "Library for efficient similarity search and clustering of dense vectors by Facebook Research";
     mainProgram = "demo_ivfpq_indexing";
     homepage = "https://github.com/facebookresearch/faiss";
-    license = licenses.mit;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ SomeoneSerge ];
+    license = lib.licenses.mit;
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ SomeoneSerge ];
+    # error: use of undeclared identifier 'SWIGTYPE_p_long'
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/science/math/faiss/tests.nix b/pkgs/development/libraries/science/math/faiss/tests.nix
deleted file mode 100644
index 858a980bfeaf3..0000000000000
--- a/pkgs/development/libraries/science/math/faiss/tests.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, buildPythonPackage
-, faiss
-, scipy
-, pytestCheckHook
-}:
-
-assert faiss.pythonSupport;
-
-buildPythonPackage {
-  pname = "faiss-pytest-suite";
-  inherit (faiss) version;
-
-  format = "other";
-
-  src = "${faiss.src}/tests";
-
-  dontBuild = true;
-  dontInstall = true;
-
-  # Tests that need GPUs and would fail in the sandbox
-  disabledTestPaths = lib.optionals faiss.cudaSupport [
-    "test_contrib.py"
-  ];
-
-  disabledTests = [
-    # https://github.com/facebookresearch/faiss/issues/2836
-    "test_update_codebooks_with_double"
-  ];
-
-  nativeCheckInputs = [
-    faiss
-    pytestCheckHook
-    scipy
-  ] ++
-  faiss.extra-requires.all;
-}
diff --git a/pkgs/development/libraries/science/math/ipopt/default.nix b/pkgs/development/libraries/science/math/ipopt/default.nix
index ac04711ff71f8..a3c61816d25c7 100644
--- a/pkgs/development/libraries/science/math/ipopt/default.nix
+++ b/pkgs/development/libraries/science/math/ipopt/default.nix
@@ -6,6 +6,8 @@
 , lapack
 , gfortran
 , enableAMPL ? true, libamplsolver
+, enableMUMPS ? true, mumps, mpi
+, enableSPRAL ? true, spral
 }:
 
 assert (!blas.isILP64) && (!lapack.isILP64);
@@ -23,21 +25,30 @@ stdenv.mkDerivation rec {
 
   CXXDEFS = [ "-DHAVE_RAND" "-DHAVE_CSTRING" "-DHAVE_CSTDIO" ];
 
-  configureFlags = [
+  configureFlags = lib.optionals enableAMPL [
     "--with-asl-cflags=-I${libamplsolver}/include"
     "--with-asl-lflags=-lamplsolver"
+  ] ++ lib.optionals enableMUMPS [
+    "--with-mumps-cflags=-I${mumps}/include"
+    "--with-mumps-lflags=-ldmumps"
+  ] ++ lib.optionals enableSPRAL [
+    "--with-spral-cflags=-I${spral}/include"
+    "--with-spral-lflags=-lspral"
   ];
 
   nativeBuildInputs = [ pkg-config gfortran ];
-  buildInputs = [ blas lapack ] ++ lib.optionals enableAMPL [ libamplsolver ];
+  buildInputs = [ blas lapack ]
+    ++ lib.optionals enableAMPL [ libamplsolver ]
+    ++ lib.optionals enableMUMPS [ mumps mpi ]
+    ++ lib.optionals enableSPRAL [ spral ];
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     description = "Software package for large-scale nonlinear optimization";
     homepage = "https://projects.coin-or.org/Ipopt";
-    license = licenses.epl10;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ abbradar ];
+    license = lib.licenses.epl10;
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/development/libraries/science/math/itpp/default.nix b/pkgs/development/libraries/science/math/itpp/default.nix
index d2f6b1ee8aec4..bcfe423630aa7 100644
--- a/pkgs/development/libraries/science/math/itpp/default.nix
+++ b/pkgs/development/libraries/science/math/itpp/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     homepage = "https://itpp.sourceforge.net/";
     license = licenses.gpl3;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/itpp.x86_64-darwin
+    maintainers = [ ];
+    broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/itpp.x86_64-darwin
   };
 }
diff --git a/pkgs/development/libraries/science/math/latte-integrale/default.nix b/pkgs/development/libraries/science/math/latte-integrale/default.nix
deleted file mode 100644
index 7eb485974ff21..0000000000000
--- a/pkgs/development/libraries/science/math/latte-integrale/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-, fetchpatch
-, gmp
-, ntl
-, cddlib
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "latte-integrale";
-  version = "1.7.6";
-
-  src = fetchurl {
-    url = "https://github.com/latte-int/latte/releases/download/version_${lib.replaceStrings ["."] ["_"] finalAttrs.version}/latte-int-${finalAttrs.version}.tar.gz";
-    sha256 = "sha256-AGwQ6+XVv9ybFZy6YmSkQyhh/nY84F/oIWJKt9P8IXA=";
-  };
-
-  patches = [
-    # C++17 compat
-    (fetchpatch {
-      url = "https://github.com/latte-int/latte/commit/6dbf7f07d5c9e1f3afe793f782d191d4465088ae.patch";
-      excludes = [ "code/latte/sqlite/IntegrationDB.h" ];
-      sha256 = "sha256-i7c11y54OLuJ0m7PBnhEoAzJzxC842JU7A6TOtTz06k=";
-    })
-  ];
-
-  buildInputs = [
-    gmp
-    ntl
-    cddlib
-  ];
-
-  meta = {
-    description = "Software for counting lattice points and integration over convex polytopes";
-    homepage = "https://www.math.ucdavis.edu/~latte/";
-    license = lib.licenses.gpl2;
-    maintainers = with lib.maintainers; [ amesgen ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/science/math/lcalc/default.nix b/pkgs/development/libraries/science/math/lcalc/default.nix
index ebab7c00809ad..6ea1ca8f8e6c0 100644
--- a/pkgs/development/libraries/science/math/lcalc/default.nix
+++ b/pkgs/development/libraries/science/math/lcalc/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner = "sagemath";
     repo = pname;
     rev = version;
-    sha256 = "sha256-RxWZ7T0I9zV7jUVnL6jV/PxEoU32KY7Q1UsOL5Lonuc=";
+    hash = "sha256-RxWZ7T0I9zV7jUVnL6jV/PxEoU32KY7Q1UsOL5Lonuc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/science/math/libamplsolver/default.nix b/pkgs/development/libraries/science/math/libamplsolver/default.nix
index f74808462ae1d..5eaa3cf54915e 100644
--- a/pkgs/development/libraries/science/math/libamplsolver/default.nix
+++ b/pkgs/development/libraries/science/math/libamplsolver/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     install -D -m 0644 *${stdenv.hostPlatform.extensions.sharedLibrary}* -t $out/lib
     install -D -m 0644 *.a -t $out/lib
     popd
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libamplsolver.dylib $out/lib/libamplsolver.dylib
   '' + ''
     runHook postInstall
diff --git a/pkgs/development/libraries/science/math/liblapack/default.nix b/pkgs/development/libraries/science/math/liblapack/default.nix
index 595ba2aa57136..def5379d27c8f 100644
--- a/pkgs/development/libraries/science/math/liblapack/default.nix
+++ b/pkgs/development/libraries/science/math/liblapack/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [ gfortran cmake ];
 
   # Configure stage fails on aarch64-darwin otherwise, due to either clang 11 or gfortran 10.
-  hardeningDisable = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "stackprotector" ];
+  hardeningDisable = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ "stackprotector" ];
 
   cmakeFlags = [
     "-DCMAKE_Fortran_FLAGS=-fPIC"
@@ -62,7 +62,7 @@ stdenv.mkDerivation (finalAttrs: {
   #
   # Upstream issue to track:
   # * https://github.com/Reference-LAPACK/lapack/issues/440
-  ctestArgs = lib.optionalString stdenv.isDarwin "-E '^(CBLAS-(x[sdcz]cblat[23]))$'";
+  ctestArgs = lib.optionalString stdenv.hostPlatform.isDarwin "-E '^(CBLAS-(x[sdcz]cblat[23]))$'";
 
   checkPhase = ''
     runHook preCheck
diff --git a/pkgs/development/libraries/science/math/liblbfgs/default.nix b/pkgs/development/libraries/science/math/liblbfgs/default.nix
index 26a1932bd192c..d429c4c1f703c 100644
--- a/pkgs/development/libraries/science/math/liblbfgs/default.nix
+++ b/pkgs/development/libraries/science/math/liblbfgs/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
     description = "Library of Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS)";
     homepage = "http://www.chokkan.org/software/liblbfgs/";
     license = lib.licenses.mit;
diff --git a/pkgs/development/libraries/science/math/libtorch/bin.nix b/pkgs/development/libraries/science/math/libtorch/bin.nix
index 5b08cfa7dcf07..f8e0dcff2bc1d 100644
--- a/pkgs/development/libraries/science/math/libtorch/bin.nix
+++ b/pkgs/development/libraries/science/math/libtorch/bin.nix
@@ -4,12 +4,13 @@
 , lib
 , libcxx
 , llvmPackages
+, config
 
-, addOpenGLRunpath
+, addDriverRunpath
 , patchelf
 , fixDarwinDylibNames
 
-, cudaSupport
+, cudaSupport ? config.cudaSupport
 }:
 
 let
@@ -22,7 +23,7 @@ let
   device = if cudaSupport then "cuda" else "cpu";
   srcs = import ./binary-hashes.nix version;
   unavailable = throw "libtorch is not available for this platform";
-  libcxx-for-libtorch = if stdenv.isDarwin then libcxx else stdenv.cc.cc.lib;
+  libcxx-for-libtorch = if stdenv.hostPlatform.isDarwin then libcxx else stdenv.cc.cc.lib;
 in stdenv.mkDerivation {
   inherit version;
   pname = "libtorch";
@@ -30,8 +31,8 @@ in stdenv.mkDerivation {
   src = fetchzip srcs."${stdenv.hostPlatform.system}-${device}" or unavailable;
 
   nativeBuildInputs =
-    if stdenv.isDarwin then [ fixDarwinDylibNames ]
-    else [ patchelf ] ++ lib.optionals cudaSupport [ addOpenGLRunpath ];
+    if stdenv.hostPlatform.isDarwin then [ fixDarwinDylibNames ]
+    else [ patchelf ] ++ lib.optionals cudaSupport [ addDriverRunpath ];
 
   dontBuild = true;
   dontConfigure = true;
@@ -59,15 +60,15 @@ in stdenv.mkDerivation {
 
   postFixup = let
     rpath = lib.makeLibraryPath [ stdenv.cc.cc.lib ];
-  in lib.optionalString stdenv.isLinux ''
+  in lib.optionalString stdenv.hostPlatform.isLinux ''
     find $out/lib -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
       echo "setting rpath for $lib..."
       patchelf --set-rpath "${rpath}:$out/lib" "$lib"
       ${lib.optionalString cudaSupport ''
-        addOpenGLRunpath "$lib"
+        addDriverRunpath "$lib"
       ''}
     done
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     for f in $out/lib/*.dylib; do
         otool -L $f
     done
diff --git a/pkgs/development/libraries/science/math/m4rie/default.nix b/pkgs/development/libraries/science/math/m4rie/default.nix
index ac513297f1590..0cda439404bbb 100644
--- a/pkgs/development/libraries/science/math/m4rie/default.nix
+++ b/pkgs/development/libraries/science/math/m4rie/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   # does not compile correctly with -O2 on LLVM clang; see
   # https://bitbucket.org/malb/m4rie/issues/23/trying-to-compile-on-apple-m1
-  makeFlags = [] ++ lib.optionals stdenv.isDarwin [ "CFLAGS=-O0" ];
+  makeFlags = [] ++ lib.optionals stdenv.hostPlatform.isDarwin [ "CFLAGS=-O0" ];
   nativeBuildInputs = [
     autoreconfHook
   ];
diff --git a/pkgs/development/libraries/science/math/magma/generic.nix b/pkgs/development/libraries/science/math/magma/generic.nix
index a675142f361d4..b1b2b80be0fc6 100644
--- a/pkgs/development/libraries/science/math/magma/generic.nix
+++ b/pkgs/development/libraries/science/math/magma/generic.nix
@@ -31,7 +31,7 @@
 
 
 let
-  inherit (lib) lists strings trivial;
+  inherit (lib) getLib lists strings trivial;
   inherit (magmaRelease) version hash supportedGpuTargets;
 
   # Per https://icl.utk.edu/magma/downloads, support for CUDA 12 wasn't added until 2.7.1.
@@ -133,20 +133,17 @@ stdenv.mkDerivation {
     lapack
     blas
     python3
+    (getLib gfortran.cc) # libgfortran.so
   ] ++ lists.optionals cudaSupport (with effectiveCudaPackages; [
-    cuda_cudart.dev # cuda_runtime.h
-    cuda_cudart.lib # cudart
-    cuda_cudart.static # cudart_static
-    libcublas.dev # cublas_v2.h
-    libcublas.lib # cublas
-    libcusparse.dev # cusparse.h
-    libcusparse.lib # cusparse
+    cuda_cudart # cuda_runtime.h
+    libcublas # cublas_v2.h
+    libcusparse # cusparse.h
   ] ++ lists.optionals (cudaOlder "11.8") [
-    cuda_nvprof.dev # <cuda_profiler_api.h>
+    cuda_nvprof # <cuda_profiler_api.h>
   ] ++ lists.optionals (cudaAtLeast "11.8") [
-    cuda_profiler_api.dev # <cuda_profiler_api.h>
+    cuda_profiler_api # <cuda_profiler_api.h>
   ] ++ lists.optionals (cudaAtLeast "12.0") [
-    cuda_cccl.dev # <nv/target>
+    cuda_cccl # <nv/target>
   ]) ++ lists.optionals rocmSupport [
     rocmPackages.clr
     rocmPackages.hipblas
diff --git a/pkgs/development/libraries/science/math/mkl/default.nix b/pkgs/development/libraries/science/math/mkl/default.nix
index 90e6c05da77d0..dc8b674f5c265 100644
--- a/pkgs/development/libraries/science/math/mkl/default.nix
+++ b/pkgs/development/libraries/science/math/mkl/default.nix
@@ -5,7 +5,7 @@
 , fetchurl
 , rpmextract
 , _7zz
-, darwin
+, cctools
 , validatePkgConfig
 , enableStatic ? stdenv.hostPlatform.isStatic
 }:
@@ -20,7 +20,7 @@ let
   version = "${mklVersion}.${rel}";
 
   mklVersion = "2023.1.0";
-  rel = if stdenvNoCC.isDarwin then "43558" else "46342";
+  rel = if stdenvNoCC.hostPlatform.isDarwin then "43558" else "46342";
 
   # Intel openmp uses its own versioning.
   openmpVersion = "2023.1.0";
@@ -66,17 +66,17 @@ in stdenvNoCC.mkDerivation ({
   pname = "mkl";
   inherit version;
 
-  dontUnpack = stdenvNoCC.isLinux;
+  dontUnpack = stdenvNoCC.hostPlatform.isLinux;
 
-  sourceRoot = if stdenvNoCC.isDarwin then "." else null;
+  sourceRoot = if stdenvNoCC.hostPlatform.isDarwin then "." else null;
 
-  nativeBuildInputs = [ validatePkgConfig ] ++ (if stdenvNoCC.isDarwin
+  nativeBuildInputs = [ validatePkgConfig ] ++ (if stdenvNoCC.hostPlatform.isDarwin
     then
-      [ _7zz darwin.cctools ]
+      [ _7zz cctools ]
     else
       [ rpmextract ]);
 
-  buildPhase = if stdenvNoCC.isDarwin then ''
+  buildPhase = if stdenvNoCC.hostPlatform.isDarwin then ''
     for f in bootstrapper.app/Contents/Resources/packages/*/cupPayload.cup; do
       tar -xf $f
     done
@@ -110,9 +110,9 @@ in stdenvNoCC.mkDerivation ({
 
     # Dynamic libraries
     mkdir -p $out/lib
-    cp -a opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.isLinux "intel64"}/*${shlibExt}* $out/lib
-    cp -a opt/intel/oneapi/compiler/${mklVersion}/${if stdenvNoCC.isDarwin then "mac" else "linux"}/compiler/lib/${lib.optionalString stdenvNoCC.isLinux "intel64_lin"}/*${shlibExt}* $out/lib
-    cp -a opt/intel/oneapi/tbb/${tbbVersion}/lib/${lib.optionalString stdenvNoCC.isLinux "intel64/gcc4.8"}/*${shlibExt}* $out/lib
+    cp -a opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.hostPlatform.isLinux "intel64"}/*${shlibExt}* $out/lib
+    cp -a opt/intel/oneapi/compiler/${mklVersion}/${if stdenvNoCC.hostPlatform.isDarwin then "mac" else "linux"}/compiler/lib/${lib.optionalString stdenvNoCC.hostPlatform.isLinux "intel64_lin"}/*${shlibExt}* $out/lib
+    cp -a opt/intel/oneapi/tbb/${tbbVersion}/lib/${lib.optionalString stdenvNoCC.hostPlatform.isLinux "intel64/gcc4.8"}/*${shlibExt}* $out/lib
 
     # Headers
     cp -r opt/intel/oneapi/mkl/${mklVersion}/include $out/
@@ -121,10 +121,10 @@ in stdenvNoCC.mkDerivation ({
     cp -r opt/intel/oneapi/mkl/${mklVersion}/lib/cmake $out/lib
   '' +
     (if enableStatic then ''
-      install -Dm0644 -t $out/lib opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.isLinux "intel64"}/*.a
+      install -Dm0644 -t $out/lib opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.hostPlatform.isLinux "intel64"}/*.a
       install -Dm0644 -t $out/lib/pkgconfig opt/intel/oneapi/mkl/${mklVersion}/lib/pkgconfig/*.pc
     '' else ''
-      cp opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.isLinux "intel64"}/*${shlibExt}* $out/lib
+      cp opt/intel/oneapi/mkl/${mklVersion}/lib/${lib.optionalString stdenvNoCC.hostPlatform.isLinux "intel64"}/*${shlibExt}* $out/lib
       install -Dm0644 -t $out/lib/pkgconfig opt/intel/oneapi/mkl/${mklVersion}/lib/pkgconfig/*dynamic*.pc
     '') + ''
     # Setup symlinks for blas / lapack
@@ -142,7 +142,7 @@ in stdenvNoCC.mkDerivation ({
   # fixDarwinDylibName fails for libmkl_cdft_core.dylib because the
   # larger updated load commands do not fit. Use install_name_tool
   # explicitly and ignore the error.
-  postFixup = lib.optionalString stdenvNoCC.isDarwin ''
+  postFixup = lib.optionalString stdenvNoCC.hostPlatform.isDarwin ''
     for f in $out/lib/*.dylib; do
       install_name_tool -id $out/lib/$(basename $f) $f || true
     done
@@ -176,7 +176,7 @@ in stdenvNoCC.mkDerivation ({
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = with maintainers; [ bhipple ];
   };
-} // lib.optionalAttrs stdenvNoCC.isDarwin {
+} // lib.optionalAttrs stdenvNoCC.hostPlatform.isDarwin {
   src = fetchurl {
     url = "https://registrationcenter-download.intel.com/akdlm/IRC_NAS/087a9190-9d96-4b8c-bd2f-79159572ed89/m_onemkl_p_${mklVersion}.${rel}_offline.dmg";
     hash = "sha256-bUaaJPSaLr60fw0DzDCjPvY/UucHlLbCSLyQxyiAi04=";
diff --git a/pkgs/development/libraries/science/math/mkl/test/default.nix b/pkgs/development/libraries/science/math/mkl/test/default.nix
index cb3355260d127..1717e11e43d86 100644
--- a/pkgs/development/libraries/science/math/mkl/test/default.nix
+++ b/pkgs/development/libraries/science/math/mkl/test/default.nix
@@ -12,7 +12,9 @@ in stdenv.mkDerivation {
   pname = "mkl-test";
   version = mkl.version;
 
-  src = ./.;
+  unpackPhase = ''
+    cp ${./test.c} test.c
+  '';
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 842bc3af9834a..54b4f7cabd92a 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, perl, which
+{ lib, stdenv, fetchFromGitHub, perl, which
 # Most packages depending on openblas expect integer width to match
 # pointer width, but some expect to use 32-bit integers always
 # (for compatibility with reference BLAS).
@@ -114,6 +114,13 @@ let
       DYNAMIC_ARCH = setDynamicArch false;
       USE_OPENMP = true;
     };
+
+    s390x-linux = {
+      BINARY = 64;
+      TARGET = setTarget "ZARCH_GENERIC";
+      DYNAMIC_ARCH = setDynamicArch true;
+      USE_OPENMP = true;
+    };
   };
 in
 
@@ -142,7 +149,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "openblas";
-  version = "0.3.27";
+  version = "0.3.28";
 
   outputs = [ "out" "dev" ];
 
@@ -150,17 +157,9 @@ stdenv.mkDerivation rec {
     owner = "OpenMathLib";
     repo = "OpenBLAS";
     rev = "v${version}";
-    hash = "sha256-VKDFSPwHGZMa2DoOXbSKNQRsl07LatMLK1lHVcEep8U=";
+    hash = "sha256-430zG47FoBNojcPFsVC7FA43FhVPxrulxAW3Fs6CHo8=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "no-gemm3m-tests-static.patch";
-      url = "https://github.com/OpenMathLib/OpenBLAS/commit/48e017de095018c60d83355804a3075658b4970c.patch";
-      hash = "sha256-Wa6EE0M1H0efVn26pOKpi0dFGLuPuzmvAzpBLrAYe5k=";
-    })
-  ];
-
   postPatch = ''
     # cc1: error: invalid feature modifier 'sve2' in '-march=armv8.5-a+sve+sve2+bf16'
     substituteInPlace Makefile.arm64 --replace "+sve2+bf16" ""
@@ -181,6 +180,10 @@ stdenv.mkDerivation rec {
     "strictoverflow"
     # don't interfere with dynamic target detection
     "relro" "bindnow"
+  ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
+    # "__builtin_clear_padding not supported for variable length aggregates"
+    # in aarch64-specific code
+    "trivialautovarinit"
   ];
 
   nativeBuildInputs = [
@@ -212,7 +215,7 @@ stdenv.mkDerivation rec {
     # This seems to be a bug in the openblas Makefile:
     # on x86_64 it expects NO_BINARY_MODE=
     # but on aarch64 it expects NO_BINARY_MODE=0
-    NO_BINARY_MODE = if stdenv.isx86_64
+    NO_BINARY_MODE = if stdenv.hostPlatform.isx86_64
         then toString (stdenv.hostPlatform != stdenv.buildPlatform)
         else stdenv.hostPlatform != stdenv.buildPlatform;
     # This disables automatic build job count detection (which honours neither enableParallelBuilding nor NIX_BUILD_CORES)
diff --git a/pkgs/development/libraries/science/math/or-tools/default.nix b/pkgs/development/libraries/science/math/or-tools/default.nix
index acb0ece75463c..a0f599f5d7068 100644
--- a/pkgs/development/libraries/science/math/or-tools/default.nix
+++ b/pkgs/development/libraries/science/math/or-tools/default.nix
@@ -6,7 +6,7 @@
 , eigen
 , ensureNewerSourcesForZipFilesHook
 , fetchFromGitHub
-, fetchpatch
+, substituteAll
 , glpk
 , lib
 , pkg-config
@@ -14,78 +14,86 @@
 , python
 , re2
 , stdenv
-, swig4
+, swig
 , unzip
 , zlib
 }:
 
+let
+  pybind11_protobuf = fetchFromGitHub {
+    owner = "pybind";
+    repo = "pybind11_protobuf";
+    rev = "b713501f1da56d9b76c42f89efd00b97c26c9eac";
+    hash = "sha256-f6pzRWextH+7lm1xzyhx98wCIWH3lbhn59gSCcjsBVw=";
+  };
+in
 stdenv.mkDerivation rec {
   pname = "or-tools";
-  version = "9.4";
+  version = "9.7";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "or-tools";
     rev = "v${version}";
-    sha256 = "sha256-joWonJGuxlgHhXLznRhC1MDltQulXzpo4Do9dec1bLY=";
+    hash = "sha256-eHukf6TbY2dx7iEf8WfwfWsjDEubPtRO02ju0kHtASo=";
   };
+
   patches = [
-    # Disable test that requires external input: https://github.com/google/or-tools/issues/3429
-    (fetchpatch {
-      url = "https://github.com/google/or-tools/commit/7072ae92ec204afcbfce17d5360a5884c136ce90.patch";
-      hash = "sha256-iWE+atp308q7pC1L1FD6sK8LvWchZ3ofxvXssguozbM=";
-    })
-    # Fix test that broke in parallel builds: https://github.com/google/or-tools/issues/3461
-    (fetchpatch {
-      url = "https://github.com/google/or-tools/commit/a26602f24781e7bfcc39612568aa9f4010bb9736.patch";
-      hash = "sha256-gM0rW0xRXMYaCwltPK0ih5mdo3HtX6mKltJDHe4gbLc=";
+    (substituteAll {
+      src = ./offline.patch;
+      pybind11_protobuf = "../../pybind11_protobuf";
     })
-    # Backport fix in cmake test configuration where pip installs newer version from PyPi over local build,
-    #  breaking checkPhase: https://github.com/google/or-tools/issues/3260
-    (fetchpatch {
-      url = "https://github.com/google/or-tools/commit/edd1544375bd55f79168db315151a48faa548fa0.patch";
-      hash = "sha256-S//1YM3IoRCp3Ghg8zMF0XXgIpVmaw4gH8cVb9eUbqM=";
-    })
-    # Don't use non-existent member of string_view. Partial patch from commit
-    # https://github.com/google/or-tools/commit/c5a2fa1eb673bf652cb9ad4f5049d054b8166e17.patch
-    ./fix-stringview-compile.patch
   ];
 
   # or-tools normally attempts to build Protobuf for the build platform when
   # cross-compiling. Instead, just tell it where to find protoc.
   postPatch = ''
     echo "set(PROTOC_PRG $(type -p protoc))" > cmake/host.cmake
+
+    cp -R ${pybind11_protobuf} pybind11_protobuf
+    chmod -R u+w pybind11_protobuf
   '';
 
   cmakeFlags = [
     "-DBUILD_DEPS=OFF"
     "-DBUILD_PYTHON=ON"
     "-DBUILD_pybind11=OFF"
+    "-DBUILD_pybind11_protobuf=ON"
+    "-DCMAKE_INSTALL_BINDIR=bin"
+    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DFETCH_PYTHON_DEPS=OFF"
     "-DUSE_GLPK=ON"
     "-DUSE_SCIP=OFF"
     "-DPython3_EXECUTABLE=${python.pythonOnBuildForHost.interpreter}"
-  ] ++ lib.optionals stdenv.isDarwin [ "-DCMAKE_MACOSX_RPATH=OFF" ];
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ "-DCMAKE_MACOSX_RPATH=OFF" ];
+
+  strictDeps = true;
+
   nativeBuildInputs = [
     cmake
     ensureNewerSourcesForZipFilesHook
     pkg-config
     python.pythonOnBuildForHost
-    swig4
+    swig
     unzip
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     DarwinTools
   ] ++ (with python.pythonOnBuildForHost.pkgs; [
     pip
     mypy-protobuf
+    mypy
   ]);
   buildInputs = [
+    abseil-cpp
     bzip2
     cbc
     eigen
     glpk
     python.pkgs.absl-py
     python.pkgs.pybind11
+    python.pkgs.pytest
+    python.pkgs.scipy
     python.pkgs.setuptools
     python.pkgs.wheel
     re2
@@ -103,7 +111,19 @@ stdenv.mkDerivation rec {
     python.pkgs.virtualenv
   ];
 
-  doCheck = true;
+  env.NIX_CFLAGS_COMPILE = toString [
+    # fatal error: 'python/google/protobuf/proto_api.h' file not found
+    "-I${protobuf.src}"
+    # fatal error: 'pybind11_protobuf/native_proto_caster.h' file not found
+    "-I${pybind11_protobuf}"
+  ];
+
+  # some tests fail on linux and hang on darwin
+  doCheck = false;
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
+  '';
 
   # This extra configure step prevents the installer from littering
   # $out/bin with sample programs that only really function as tests,
diff --git a/pkgs/development/libraries/science/math/or-tools/fix-stringview-compile.patch b/pkgs/development/libraries/science/math/or-tools/fix-stringview-compile.patch
deleted file mode 100644
index 760ab80a38e4d..0000000000000
--- a/pkgs/development/libraries/science/math/or-tools/fix-stringview-compile.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/ortools/lp_data/lp_parser.cc b/ortools/lp_data/lp_parser.cc
-index 58286306e5..bd26c019ab 100644
---- a/ortools/lp_data/lp_parser.cc
-+++ b/ortools/lp_data/lp_parser.cc
-@@ -185,7 +185,7 @@ bool LPParser::ParseIntegerVariablesList(StringPiece line) {
- 
- bool LPParser::ParseConstraint(StringPiece constraint) {
-   const StatusOr<ParsedConstraint> parsed_constraint_or_status =
--      ::operations_research::glop::ParseConstraint(constraint.as_string());
-+      ::operations_research::glop::ParseConstraint(constraint);
-   if (!parsed_constraint_or_status.ok()) return false;
-   const ParsedConstraint& parsed_constraint =
-       parsed_constraint_or_status.value();
-@@ -342,10 +342,9 @@ TokenType LPParser::ConsumeToken(StringPiece* sp) {
- 
- }  // namespace
- 
--StatusOr<ParsedConstraint> ParseConstraint(absl::string_view constraint_view) {
-+StatusOr<ParsedConstraint> ParseConstraint(absl::string_view constraint) {
-   ParsedConstraint parsed_constraint;
-   // Get the name, if present.
--  StringPiece constraint{constraint_view};
-   StringPiece constraint_copy{constraint};
-   std::string consumed_name;
-   Fractional consumed_coeff;
-@@ -413,8 +412,8 @@ StatusOr<ParsedConstraint> ParseConstraint(absl::string_view constraint_view) {
-     right_bound = consumed_coeff;
-     if (ConsumeToken(&constraint, &consumed_name, &consumed_coeff) !=
-         TokenType::END) {
--      return absl::InvalidArgumentError(absl::StrCat(
--          "End of input was expected, found: ", constraint.as_string()));
-+      return absl::InvalidArgumentError(
-+          absl::StrCat("End of input was expected, found: ", constraint));
-     }
-   }
- 
diff --git a/pkgs/development/libraries/science/math/or-tools/offline.patch b/pkgs/development/libraries/science/math/or-tools/offline.patch
new file mode 100644
index 0000000000000..1a2a4dbe3631b
--- /dev/null
+++ b/pkgs/development/libraries/science/math/or-tools/offline.patch
@@ -0,0 +1,16 @@
+diff --git a/cmake/dependencies/CMakeLists.txt b/cmake/dependencies/CMakeLists.txt
+index af3a28c113..ba92c3c55e 100644
+--- a/cmake/dependencies/CMakeLists.txt
++++ b/cmake/dependencies/CMakeLists.txt
+@@ -177,9 +177,8 @@ if(BUILD_PYTHON AND BUILD_pybind11_protobuf)
+   list(APPEND CMAKE_MESSAGE_INDENT "  ")
+   FetchContent_Declare(
+     pybind11_protobuf
+-    GIT_REPOSITORY "https://github.com/pybind/pybind11_protobuf.git"
+-    GIT_TAG "main"
+-    PATCH_COMMAND git apply --ignore-whitespace "${CMAKE_CURRENT_LIST_DIR}/../../patches/pybind11_protobuf.patch"
++    SOURCE_DIR @pybind11_protobuf@
++    PATCH_COMMAND patch -p1 < "${CMAKE_CURRENT_LIST_DIR}/../../patches/pybind11_protobuf.patch"
+   )
+   FetchContent_MakeAvailable(pybind11_protobuf)
+   list(POP_BACK CMAKE_MESSAGE_INDENT)
diff --git a/pkgs/development/libraries/science/math/osqp/default.nix b/pkgs/development/libraries/science/math/osqp/default.nix
index d308302e2c9f3..55f00d01636a2 100644
--- a/pkgs/development/libraries/science/math/osqp/default.nix
+++ b/pkgs/development/libraries/science/math/osqp/default.nix
@@ -11,10 +11,18 @@ stdenv.mkDerivation rec {
     owner = "oxfordcontrol";
     repo = "osqp";
     rev = "v${version}";
-    sha256 = "sha256-enkK5EFyAeLaUnHNYS3oq43HsHY5IuSLgsYP0k/GW8c=";
+    hash = "sha256-enkK5EFyAeLaUnHNYS3oq43HsHY5IuSLgsYP0k/GW8c=";
     fetchSubmodules = true;
   };
 
+  # ref https://github.com/osqp/osqp/pull/481
+  # but this patch does not apply directly on v0.6.3
+  postPatch = ''
+    substituteInPlace CMakeLists.txt --replace-fail \
+      "$<INSTALL_PREFIX>/\''${CMAKE_INSTALL_INCLUDEDIR}" \
+      "\''${CMAKE_INSTALL_FULL_INCLUDEDIR}"
+  '';
+
   nativeBuildInputs = [ cmake ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/science/math/p4est-sc/default.nix b/pkgs/development/libraries/science/math/p4est-sc/default.nix
index bb5d212061f2d..39b5660494d2e 100644
--- a/pkgs/development/libraries/science/math/p4est-sc/default.nix
+++ b/pkgs/development/libraries/science/math/p4est-sc/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation {
 
   # disallow Darwin checks due to prototype incompatibility of qsort_r
   # to be fixed in a future version of the source code
-  doCheck = !stdenv.isDarwin && stdenv.hostPlatform == stdenv.buildPlatform;
+  doCheck = !stdenv.hostPlatform.isDarwin && stdenv.hostPlatform == stdenv.buildPlatform;
 
   meta = {
     branch = "prev3-develop";
diff --git a/pkgs/development/libraries/science/math/parmetis/default.nix b/pkgs/development/libraries/science/math/parmetis/default.nix
deleted file mode 100644
index 5023390a182cb..0000000000000
--- a/pkgs/development/libraries/science/math/parmetis/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv
-, fetchurl
-, cmake
-, mpi
-}:
-
-stdenv.mkDerivation rec {
-  pname = "parmetis";
-  version = "4.0.3";
-
-  src = fetchurl {
-    url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-${version}.tar.gz";
-    sha256 = "0pvfpvb36djvqlcc3lq7si0c5xpb2cqndjg8wvzg35ygnwqs5ngj";
-  };
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ mpi ];
-
-  # metis and GKlib are packaged with distribution
-  # AUR https://aur.archlinux.org/packages/parmetis/ has reported that
-  # it easier to build with the included packages as opposed to using the metis
-  # package. Compilation time is short.
-  configurePhase = ''
-    make config metis_path=$PWD/metis gklib_path=$PWD/metis/GKlib prefix=$out
-  '';
-
-  meta = with lib; {
-    description = "MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices";
-    homepage = "http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview";
-    platforms = platforms.all;
-    license = licenses.unfree;
-    maintainers = [ maintainers.costrouc ];
-  };
-}
diff --git a/pkgs/development/libraries/science/math/petsc/default.nix b/pkgs/development/libraries/science/math/petsc/default.nix
deleted file mode 100644
index c07250c660a33..0000000000000
--- a/pkgs/development/libraries/science/math/petsc/default.nix
+++ /dev/null
@@ -1,96 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-, darwin
-, gfortran
-, python3
-, blas
-, lapack
-, mpiSupport ? true
-, mpi                   # generic mpi dependency
-, openssh               # required for openmpi tests
-, petsc-withp4est ? false
-, p4est
-, zlib                  # propagated by p4est but required by petsc
-, petsc-optimized ? false
-, petsc-scalar-type ? "real"
-, petsc-precision ? "double"
-}:
-
-# This version of PETSc does not support a non-MPI p4est build
-assert petsc-withp4est -> p4est.mpiSupport;
-
-stdenv.mkDerivation rec {
-  pname = "petsc";
-  version = "3.19.4";
-
-  src = fetchurl {
-    url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
-    sha256 = "sha256-fJQbcb5Sw7dkIU5JLfYBCdEvl/fYVMl6RN8MTZWLOQY=";
-  };
-
-  inherit mpiSupport;
-  withp4est = petsc-withp4est;
-
-  strictDeps = true;
-  nativeBuildInputs = [ python3 gfortran ]
-    ++ lib.optional mpiSupport mpi
-    ++ lib.optional (mpiSupport && mpi.pname == "openmpi") openssh
-  ;
-  buildInputs = [ blas lapack ]
-    ++ lib.optional withp4est p4est
-  ;
-
-  prePatch = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace config/install.py \
-      --replace /usr/bin/install_name_tool ${darwin.cctools}/bin/install_name_tool
-  '';
-
-  # Both OpenMPI and MPICH get confused by the sandbox environment and spew errors like this (both to stdout and stderr):
-  #     [hwloc/linux] failed to find sysfs cpu topology directory, aborting linux discovery.
-  #     [1684747490.391106] [localhost:14258:0]       tcp_iface.c:837  UCX  ERROR opendir(/sys/class/net) failed: No such file or directory
-  # These messages contaminate test output, which makes the quicktest suite to fail. The patch adds filtering for these messages.
-  patches = [ ./filter_mpi_warnings.patch ];
-
-  preConfigure = ''
-    patchShebangs ./lib/petsc/bin
-    configureFlagsArray=(
-      $configureFlagsArray
-      ${if !mpiSupport then ''
-        "--with-mpi=0"
-      '' else ''
-        "--CC=mpicc"
-        "--with-cxx=mpicxx"
-        "--with-fc=mpif90"
-        "--with-mpi=1"
-      ''}
-      ${lib.optionalString withp4est ''
-        "--with-p4est=1"
-        "--with-zlib-include=${zlib.dev}/include"
-        "--with-zlib-lib=-L${zlib}/lib -lz"
-      ''}
-      "--with-blas=1"
-      "--with-lapack=1"
-      "--with-scalar-type=${petsc-scalar-type}"
-      "--with-precision=${petsc-precision}"
-      ${lib.optionalString petsc-optimized ''
-        "--with-debugging=0"
-        COPTFLAGS='-g -O3'
-        FOPTFLAGS='-g -O3'
-        CXXOPTFLAGS='-g -O3'
-      ''}
-    )
-  '';
-
-  configureScript = "python ./configure";
-
-  enableParallelBuilding = true;
-  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
-
-  meta = with lib; {
-    description = "Portable Extensible Toolkit for Scientific computation";
-    homepage = "https://www.mcs.anl.gov/petsc/index.html";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ cburstedde ];
-  };
-}
diff --git a/pkgs/development/libraries/science/math/petsc/filter_mpi_warnings.patch b/pkgs/development/libraries/science/math/petsc/filter_mpi_warnings.patch
deleted file mode 100644
index f3a34de9304e3..0000000000000
--- a/pkgs/development/libraries/science/math/petsc/filter_mpi_warnings.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-diff --git a/src/snes/tutorials/makefile b/src/snes/tutorials/makefile
-index 672a62a..a5fd1c4 100644
---- a/src/snes/tutorials/makefile
-+++ b/src/snes/tutorials/makefile
-@@ -13,6 +13,7 @@ include ${PETSC_DIR}/lib/petsc/conf/rules
- #  these tests are used by the makefile in PETSC_DIR for basic tests of the install and should not be removed
- testex5f: ex5f.PETSc
- 	-@${MPIEXEC} -n 1 ${MPIEXEC_TAIL} ./ex5f -snes_rtol 1e-4 > ex5f_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex5f_1.tmp; \
-         if (${DIFF} output/ex5f_1.testout ex5f_1.tmp > /dev/null 2>&1) then \
-           echo "Fortran example src/snes/tutorials/ex5f run successfully with 1 MPI process"; \
-         else \
-@@ -25,6 +26,7 @@ testex5f: ex5f.PETSc
-         ${MAKE} PETSC_ARCH=${PETSC_ARCH} PETSC_DIR=${PETSC_DIR} ex5f.rm;
- testex19: ex19.PETSc
- 	-@${MPIEXEC} -n 1 ${MPIEXEC_TAIL} ./ex19 -da_refine 3 -pc_type mg -ksp_type fgmres  > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
-         if (${DIFF} output/ex19_1.testout ex19_1.tmp > /dev/null 2>&1) then \
-           echo "C/C++ example src/snes/tutorials/ex19 run successfully with 1 MPI process"; \
-         else \
-@@ -36,6 +38,7 @@ testex19: ex19.PETSc
-         ${RM} -f ex19_1.tmp;
- testex19_mpi:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -da_refine 3 -pc_type mg -ksp_type fgmres  > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
-         if (${DIFF} output/ex19_1.testout ex19_1.tmp > /dev/null 2>&1) then \
-           echo "C/C++ example src/snes/tutorials/ex19 run successfully with 2 MPI processes"; \
-         else \
-@@ -48,6 +51,7 @@ testex19_mpi:
- #use unpreconditioned norm because HYPRE device installations use different AMG parameters
- runex19_hypre:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -da_refine 3 -snes_monitor_short -ksp_norm_type unpreconditioned -pc_type hypre > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
-           if (${DIFF} output/ex19_hypre.out ex19_1.tmp) then \
-             echo "C/C++ example src/snes/tutorials/ex19 run successfully with hypre"; \
-           else  \
-@@ -57,6 +61,7 @@ runex19_hypre:
-           ${RM} -f ex19_1.tmp
- runex19_hypre_cuda:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -dm_vec_type cuda -dm_mat_type aijcusparse -da_refine 3 -snes_monitor_short -ksp_norm_type unpreconditioned -pc_type hypre > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
- 	   if (${DIFF} output/ex19_hypre.out ex19_1.tmp) then \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with hypre/cuda"; \
-            else  \
-@@ -66,6 +71,7 @@ runex19_hypre_cuda:
- 	   ${RM} -f ex19_1.tmp
- runex19_hypre_hip:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -dm_vec_type hip -da_refine 3 -snes_monitor_short -ksp_norm_type unpreconditioned -pc_type hypre > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
- 	   if (${DIFF} output/ex19_hypre.out ex19_1.tmp) then \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with hypre/hip"; \
-            else \
-@@ -75,6 +81,7 @@ runex19_hypre_hip:
- 	   ${RM} -f ex19_1.tmp
- runex19_cuda:
- 	-@${MPIEXEC} -n 1 ${MPIEXEC_TAIL} ./ex19 -snes_monitor -dm_mat_type seqaijcusparse -dm_vec_type seqcuda -pc_type gamg -pc_gamg_esteig_ksp_max_it 10 -ksp_monitor -mg_levels_ksp_max_it 3  > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
- 	   if (${DIFF} output/ex19_cuda_1.out ex19_1.tmp) then \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with cuda"; \
-            else  \
-@@ -84,6 +91,7 @@ runex19_cuda:
- 	   ${RM} -f ex19_1.tmp
- runex19_ml:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -da_refine 3 -snes_monitor_short -pc_type ml > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
- 	   if (${DIFF} output/ex19_ml.out ex19_1.tmp) then  \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with ml"; \
-            else \
-@@ -93,6 +101,7 @@ runex19_ml:
-            ${RM} -f ex19_1.tmp
- runex19_fieldsplit_mumps:
- 	-@${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex19 -pc_type fieldsplit -pc_fieldsplit_block_size 4 -pc_fieldsplit_type SCHUR -pc_fieldsplit_0_fields 0,1,2 -pc_fieldsplit_1_fields 3 -fieldsplit_0_pc_type lu -fieldsplit_1_pc_type lu -snes_monitor_short -ksp_monitor_short  -fieldsplit_0_pc_factor_mat_solver_type mumps -fieldsplit_1_pc_factor_mat_solver_type mumps > ex19_6.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_6.tmp; \
- 	   if (${DIFF} output/ex19_fieldsplit_5.out ex19_6.tmp) then  \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with mumps"; \
-            else  \
-@@ -102,6 +111,7 @@ runex19_fieldsplit_mumps:
-            ${RM} -f ex19_6.tmp
- runex19_superlu_dist:
- 	-@${MPIEXEC} -n 1 ${MPIEXEC_TAIL} ./ex19 -da_grid_x 20 -da_grid_y 20 -pc_type lu -pc_factor_mat_solver_type superlu_dist > ex19.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19.tmp; \
- 	   if (${DIFF} output/ex19_superlu.out ex19.tmp) then \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with superlu_dist"; \
-            else  \
-@@ -111,6 +121,7 @@ runex19_superlu_dist:
- 	   ${RM} -f ex19.tmp
- runex19_suitesparse:
- 	-@${MPIEXEC} -n 1 ${MPIEXEC_TAIL} ./ex19 -da_refine 3 -snes_monitor_short -pc_type lu -pc_factor_mat_solver_type umfpack > ex19_1.tmp 2>&1; \
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex19_1.tmp; \
- 	   if (${DIFF} output/ex19_suitesparse.out ex19_1.tmp) then \
-            echo "C/C++ example src/snes/tutorials/ex19 run successfully with suitesparse"; \
-            else \
-@@ -120,6 +131,7 @@ runex19_suitesparse:
- 	   ${RM} -f ex19_1.tmp
- runex3k_kokkos: ex3k.PETSc
- 	-@OMP_PROC_BIND=false ${MPIEXEC} -n 2 ${MPIEXEC_TAIL} ./ex3k -view_initial -dm_vec_type kokkos -dm_mat_type aijkokkos -use_gpu_aware_mpi 0 -snes_monitor > ex3k_1.tmp 2>&1 ;\
-+        sed -i '/hwloc\/linux/d ; /ERROR scandir(\/sys\/class\/net) failed/d' ex3k_1.tmp; \
- 	if (${DIFF} output/ex3k_1.out ex3k_1.tmp) then \
-           echo "C/C++ example src/snes/tutorials/ex3k run successfully with kokkos-kernels"; \
-         else \
diff --git a/pkgs/development/libraries/science/math/rubiks/default.nix b/pkgs/development/libraries/science/math/rubiks/default.nix
index 8f3fbe3451267..a3fba32d05c3e 100644
--- a/pkgs/development/libraries/science/math/rubiks/default.nix
+++ b/pkgs/development/libraries/science/math/rubiks/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   # everything is done in `make install`
-  buildPhase = "true";
+  dontBuild = true;
 
   installFlags = [
     "PREFIX=$(out)"
diff --git a/pkgs/development/libraries/science/math/scalapack/default.nix b/pkgs/development/libraries/science/math/scalapack/default.nix
index 2f8d3dbe15de3..f7b4ba6738d1b 100644
--- a/pkgs/development/libraries/science/math/scalapack/default.nix
+++ b/pkgs/development/libraries/science/math/scalapack/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
 
   passthru = { inherit (blas) isILP64; };
 
+  __structuredAttrs = true;
+
   # upstream patch, remove with next release
   patches = [ (fetchpatch {
     name = "gcc-10";
@@ -40,11 +42,11 @@ stdenv.mkDerivation rec {
   nativeCheckInputs = [ openssh mpiCheckPhaseHook ];
   buildInputs = [ blas lapack ];
   propagatedBuildInputs = [ mpi ];
-  hardeningDisable = lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [ "stackprotector" ];
+  hardeningDisable = lib.optionals (stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isDarwin) [ "stackprotector" ];
 
   # xslu and xsllt tests seem to time out on x86_64-darwin.
   # this line is left so those who force installation on x86_64-darwin can still build
-  doCheck = !(stdenv.isx86_64 && stdenv.isDarwin);
+  doCheck = !(stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isDarwin);
 
   preConfigure = ''
     cmakeFlagsArray+=(
@@ -52,16 +54,17 @@ stdenv.mkDerivation rec {
       -DLAPACK_LIBRARIES="-llapack"
       -DBLAS_LIBRARIES="-lblas"
       -DCMAKE_Fortran_COMPILER=${lib.getDev mpi}/bin/mpif90
-      ${lib.optionalString passthru.isILP64 ''
-        -DCMAKE_Fortran_FLAGS="-fdefault-integer-8"
-        -DCMAKE_C_FLAGS="-DInt=long"
-      ''}
+      -DCMAKE_C_FLAGS="${lib.concatStringsSep " " [
+            "-Wno-implicit-function-declaration"
+            (lib.optionalString passthru.isILP64 "-DInt=long")
+      ]}"
+      ${lib.optionalString passthru.isILP64 ''-DCMAKE_Fortran_FLAGS="-fdefault-integer-8"''}
       )
   '';
 
   # Increase individual test timeout from 1500s to 10000s because hydra's builds
   # sometimes fail due to this
-  checkFlagsArray = [ "ARGS=--timeout 10000" ];
+  checkFlags = [ "ARGS=--timeout 10000" ];
 
   postFixup = ''
     # _IMPORT_PREFIX, used to point to lib, points to dev output. Every package using the generated
@@ -78,6 +81,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     maintainers = with maintainers; [ costrouc markuskowa gdinh ];
     # xslu and xsllt tests fail on x86 darwin
-    broken = stdenv.isDarwin && stdenv.isx86_64;
+    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64;
   };
 }
diff --git a/pkgs/development/libraries/science/math/scs/default.nix b/pkgs/development/libraries/science/math/scs/default.nix
deleted file mode 100644
index 087f4787a53bc..0000000000000
--- a/pkgs/development/libraries/science/math/scs/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, blas, lapack, gfortran, fixDarwinDylibNames }:
-
-assert (!blas.isILP64) && (!lapack.isILP64);
-
-stdenv.mkDerivation rec {
-  pname = "scs";
-  version = "3.2.3";
-
-  src = fetchFromGitHub {
-    owner = "cvxgrp";
-    repo = "scs";
-    rev = version;
-    sha256 = "sha256-0g0r3DNgkPZgag0qtz79Wk3Cre1I2yaabFi3OgUzgfc=";
-  };
-
-  # Actually link and add libgfortran to the rpath
-  postPatch = ''
-    substituteInPlace scs.mk \
-      --replace "#-lgfortran" "-lgfortran" \
-      --replace "gcc" "cc"
-  '';
-
-  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
-
-  buildInputs = [ blas lapack gfortran.cc.lib ];
-
-  doCheck = true;
-
-  # Test demo requires passing data and seed; numbers chosen arbitrarily.
-  postCheck = ''
-    ./out/demo_socp_indirect 42 0.42 0.42 42
-  '';
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/lib
-    cp -r include $out/
-    cp out/*.a out/*.so out/*.dylib $out/lib/
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "Splitting Conic Solver";
-    longDescription = ''
-      Numerical optimization package for solving large-scale convex cone problems
-    '';
-    homepage = "https://github.com/cvxgrp/scs";
-    license = licenses.mit;
-    platforms = platforms.all;
-    maintainers = [ maintainers.bhipple ];
-  };
-}
diff --git a/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix b/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
index 6ace83fd043d9..c0b6561e0031e 100644
--- a/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
+++ b/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
@@ -1,21 +1,25 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, gnum4
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  gnum4,
 }:
 
 stdenv.mkDerivation rec {
   pname = "suitesparse-graphblas";
-  version = "9.2.0";
+  version = "9.3.1";
 
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   src = fetchFromGitHub {
     owner = "DrTimothyAldenDavis";
     repo = "GraphBLAS";
     rev = "v${version}";
-    hash = "sha256-UtJ5AXbmoUA1NokgXDUDnhCZzOT1bTen6C89bsCWEIo=";
+    hash = "sha256-lNjxNW0XrHtdULDI35qp2BRCOrdKMnWu7Rje0+uBv0g=";
   };
 
   nativeBuildInputs = [
@@ -27,6 +31,12 @@ stdenv.mkDerivation rec {
     export HOME=$(mktemp -d)
   '';
 
+  cmakeFlags = [
+    (lib.cmakeBool "GRAPHBLAS_USE_JIT" (
+      !(stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64)
+    ))
+  ];
+
   meta = with lib; {
     description = "Graph algorithms in the language of linear algebra";
     homepage = "https://people.engr.tamu.edu/davis/GraphBLAS.html";
diff --git a/pkgs/development/libraries/science/math/suitesparse/4.4.nix b/pkgs/development/libraries/science/math/suitesparse/4.4.nix
index f47b5c0ce818f..ef859cfc1ca2a 100644
--- a/pkgs/development/libraries/science/math/suitesparse/4.4.nix
+++ b/pkgs/development/libraries/science/math/suitesparse/4.4.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
         -e '/CHOLMOD_CONFIG/ s/$/-DNPARTITION -DLONGBLAS=${int_t}/' \
         -e '/UMFPACK_CONFIG/ s/$/-DLONGBLAS=${int_t}/'
   ''
-  + lib.optionalString stdenv.isDarwin ''
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i "SuiteSparse_config/SuiteSparse_config.mk" \
         -e 's/^[[:space:]]*\(LIB = -lm\) -lrt/\1/'
   ''
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     "LAPACK=-llapack"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin " -DNTIMER";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin " -DNTIMER";
 
   postInstall = ''
     # Build and install shared library
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
         for i in "$out"/lib/lib*.a; do
           ar -x $i
         done
-        ${if enableCuda then cudatoolkit else stdenv.cc.outPath}/bin/${if enableCuda then "nvcc" else "cc"} *.o ${if stdenv.isDarwin then "-dynamiclib" else "--shared"} -o "$out/lib/libsuitesparse${SHLIB_EXT}" -lblas ${lib.optionalString enableCuda "-lcublas"}
+        ${if enableCuda then cudatoolkit else stdenv.cc.outPath}/bin/${if enableCuda then "nvcc" else "cc"} *.o ${if stdenv.hostPlatform.isDarwin then "-dynamiclib" else "--shared"} -o "$out/lib/libsuitesparse${SHLIB_EXT}" -lblas ${lib.optionalString enableCuda "-lcublas"}
     )
     for i in umfpack cholmod amd camd colamd spqr; do
       ln -s libsuitesparse${SHLIB_EXT} "$out"/lib/lib$i${SHLIB_EXT}
diff --git a/pkgs/development/libraries/science/math/suitesparse/default.nix b/pkgs/development/libraries/science/math/suitesparse/default.nix
index fcfd9b56a1b14..28909f53fecbb 100644
--- a/pkgs/development/libraries/science/math/suitesparse/default.nix
+++ b/pkgs/development/libraries/science/math/suitesparse/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ] ++ lib.optionals enableCuda [
     cudaPackages.cuda_nvcc
@@ -36,17 +36,15 @@ stdenv.mkDerivation rec {
   buildInputs = assert (blas.isILP64 == lapack.isILP64); [
     blas lapack
     metis
-    gfortran.cc.lib
+    (lib.getLib gfortran.cc)
     gmp
     mpfr
   ] ++ lib.optionals stdenv.cc.isClang [
     openmp
   ] ++ lib.optionals enableCuda [
-    cudaPackages.cuda_cudart.dev
-    cudaPackages.cuda_cudart.lib
-    cudaPackages.cuda_cccl.dev
-    cudaPackages.libcublas.dev
-    cudaPackages.libcublas.lib
+    cudaPackages.cuda_cudart
+    cudaPackages.cuda_cccl
+    cudaPackages.libcublas
   ];
 
   preConfigure = ''
@@ -63,9 +61,9 @@ stdenv.mkDerivation rec {
     "CFLAGS=-DBLAS64"
   ] ++ lib.optionals enableCuda [
     "CUDA_PATH=${cudaPackages.cuda_nvcc}"
-    "CUDART_LIB=${cudaPackages.cuda_cudart.lib}/lib/libcudart.so"
-    "CUBLAS_LIB=${cudaPackages.libcublas.lib}/lib/libcublas.so"
-  ] ++ lib.optionals stdenv.isDarwin [
+    "CUDART_LIB=${lib.getLib cudaPackages.cuda_cudart}/lib/libcudart.so"
+    "CUBLAS_LIB=${lib.getLib cudaPackages.libcublas}/lib/libcublas.so"
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # Unless these are set, the build will attempt to use `Accelerate` on darwin, see:
     # https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/v5.13.0/SuiteSparse_config/SuiteSparse_config.mk#L368
     "BLAS=-lblas"
@@ -73,7 +71,7 @@ stdenv.mkDerivation rec {
   ]
   ;
 
-  env = lib.optionalAttrs stdenv.isDarwin {
+  env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
     # Ensure that there is enough space for the `fixDarwinDylibNames` hook to
     # update the install names of the output dylibs.
     NIX_LDFLAGS = "-headerpad_max_install_names";
diff --git a/pkgs/development/libraries/science/math/sympow/default.nix b/pkgs/development/libraries/science/math/sympow/default.nix
index 91daf30686f8f..ea2ed2e83ddd7 100644
--- a/pkgs/development/libraries/science/math/sympow/default.nix
+++ b/pkgs/development/libraries/science/math/sympow/default.nix
@@ -59,10 +59,17 @@ stdenv.mkDerivation rec {
 
   # Example from the README as a sanity check.
   doInstallCheck = true;
-  installCheckPhase = ''
-    export HOME=$TMPDIR
-    "$out/bin/sympow" -sp 2p16 -curve "[1,2,3,4,5]" | grep '8.3705'
-  '';
+  installCheckPhase =
+    ''
+      export HOME=$TMPDIR
+      "$out/bin/sympow" -curve "[1,2,3,4,5]" -moddeg | grep 'Modular Degree is 464'
+      echo "[1,-1,0,-79,289]" | "$out/bin/sympow" -analrank | grep ^"Analytic Rank is 4"
+      "$out/bin/sympow" -curve "[1,-1,0,-79,289]" -analrank | grep ^"Analytic Rank is 4"
+      "$out/bin/sympow" -curve "[0,1,1,-2,0]" -analrank | grep ^"Analytic Rank is 2"
+    ''
+    + lib.optionalString (!stdenv.hostPlatform.isAarch64) ''
+      "$out/bin/sympow" -sp 2p16 -curve "[1,2,3,4,5]" | grep '8.3705'
+    '';
 
   meta = {
     description = "Compute special values of symmetric power elliptic curve L-functions";
@@ -73,6 +80,6 @@ stdenv.mkDerivation rec {
       free = true;
     };
     maintainers = lib.teams.sage.members;
-    platforms = lib.platforms.linux;
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/science/math/tensorflow-lite/default.nix b/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
index 4ecd08d103fac..218b05b911e49 100644
--- a/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
+++ b/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
@@ -1,5 +1,4 @@
 { stdenv
-, bash
 , buildPackages
 , buildBazelPackage
 , fetchFromGitHub
@@ -8,7 +7,7 @@
 let
   buildPlatform = stdenv.buildPlatform;
   hostPlatform = stdenv.hostPlatform;
-  pythonEnv = buildPackages.python3.withPackages (ps: [ ps.numpy ]);
+  pythonEnv = buildPackages.python3.withPackages (ps: with ps; [ distutils numpy ]);
   bazelDepsSha256ByBuildAndHost = {
     x86_64-linux = {
       x86_64-linux = "sha256-61qmnAB80syYhURWYJOiOnoGOtNa1pPkxfznrFScPAo=";
diff --git a/pkgs/development/libraries/science/math/tensorrt/extension.nix b/pkgs/development/libraries/science/math/tensorrt/extension.nix
index ffd9b672684cb..7db869a2c1698 100644
--- a/pkgs/development/libraries/science/math/tensorrt/extension.nix
+++ b/pkgs/development/libraries/science/math/tensorrt/extension.nix
@@ -12,11 +12,11 @@ final: prev: let
 
   majorMinorPatch = str: lib.concatStringsSep "." (lib.take 3 (lib.splitVersion str));
 
-  tensorRTPackages = with lib; let
+  tensorRTPackages = let
     # Check whether a file is supported for our cuda version
-    isSupported = fileData: elem cudaVersion fileData.supportedCudaVersions;
+    isSupported = fileData: lib.elem cudaVersion fileData.supportedCudaVersions;
     # Return the first file that is supported. In practice there should only ever be one anyway.
-    supportedFile = files: findFirst isSupported null files;
+    supportedFile = files: lib.findFirst isSupported null files;
 
     # Compute versioned attribute name to be used in this package set
     computeName = version: "tensorrt_${toUnderscore version}";
@@ -34,11 +34,11 @@ final: prev: let
           supportedCudaVersions = [ ];
         };
       }
-      (mapAttrs' (version: attrs: nameValuePair (computeName version) attrs)
-        (filterAttrs (version: file: file != null) (mapAttrs (version: files: supportedFile files) tensorRTVersions)));
+      (lib.mapAttrs' (version: attrs: lib.nameValuePair (computeName version) attrs)
+        (lib.filterAttrs (version: file: file != null) (lib.mapAttrs (version: files: supportedFile files) tensorRTVersions)));
 
     # Add all supported builds as attributes
-    allBuilds = mapAttrs (name: file: buildTensorRTPackage (removeAttrs file ["fileVersionCuda"])) supportedVersions;
+    allBuilds = lib.mapAttrs (name: file: buildTensorRTPackage (lib.removeAttrs file ["fileVersionCuda"])) supportedVersions;
 
     # Set the default attributes, e.g. tensorrt = tensorrt_8_4;
     defaultName = computeName tensorRTDefaultVersion;
diff --git a/pkgs/development/libraries/science/math/tiny-cuda-nn/default.nix b/pkgs/development/libraries/science/math/tiny-cuda-nn/default.nix
index e9367d416e325..ada84ef50767c 100644
--- a/pkgs/development/libraries/science/math/tiny-cuda-nn/default.nix
+++ b/pkgs/development/libraries/science/math/tiny-cuda-nn/default.nix
@@ -14,15 +14,15 @@
   inherit (cudaPackages) backendStdenv flags;
 
   cuda-common-redist = with cudaPackages; [
-    cuda_cudart.dev # cuda_runtime.h
-    cuda_cudart.lib
-    cuda_cccl.dev # <nv/target>
-    libcublas.dev # cublas_v2.h
-    libcublas.lib
-    libcusolver.dev # cusolverDn.h
-    libcusolver.lib
-    libcusparse.dev # cusparse.h
-    libcusparse.lib
+    (lib.getDev cuda_cudart) # cuda_runtime.h
+    (lib.getLib cuda_cudart)
+    (lib.getDev cuda_cccl) # <nv/target>
+    (lib.getDev libcublas) # cublas_v2.h
+    (lib.getLib libcublas)
+    (lib.getDev libcusolver) # cusolverDn.h
+    (lib.getLib libcusolver)
+    (lib.getDev libcusparse) # cusparse.h
+    (lib.getLib libcusparse)
   ];
 
   cuda-native-redist = symlinkJoin {
@@ -46,7 +46,7 @@ in
 
     src = fetchFromGitHub {
       owner = "NVlabs";
-      repo = finalAttrs.pname;
+      repo = "tiny-cuda-nn";
       rev = "v${finalAttrs.version}";
       fetchSubmodules = true;
       hash = "sha256-qW6Fk2GB71fvZSsfu+mykabSxEKvaikZ/pQQZUycOy0=";
@@ -157,5 +157,7 @@ in
       license = licenses.bsd3;
       maintainers = with maintainers; [connorbaker];
       platforms = platforms.linux;
+      # g++: error: unrecognized command-line option '-mf16c'
+      broken = stdenv.hostPlatform.isAarch64;
     };
   })
diff --git a/pkgs/development/libraries/science/networking/ns-3/default.nix b/pkgs/development/libraries/science/networking/ns-3/default.nix
index 6e63520031c14..efcfa99be0e06 100644
--- a/pkgs/development/libraries/science/networking/ns-3/default.nix
+++ b/pkgs/development/libraries/science/networking/ns-3/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
     owner = "nsnam";
     repo = "ns-3-dev";
     rev = "ns-3.${version}";
-    sha256 = "sha256-2d8xCCfxRpcCZgt7ne17F7cUo/wIxLyvjQs3izNUnmY=";
+    hash = "sha256-2d8xCCfxRpcCZgt7ne17F7cUo/wIxLyvjQs3izNUnmY=";
   };
 
   nativeBuildInputs = [ cmake pkg-config pythonEnv ];
@@ -137,6 +137,6 @@ stdenv.mkDerivation rec {
     platforms = with platforms; unix;
     maintainers = with maintainers; [ teto rgrunbla ];
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = (stdenv.isDarwin && stdenv.isAarch64) || (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) || (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
   };
 }
diff --git a/pkgs/development/libraries/scmccid/default.nix b/pkgs/development/libraries/scmccid/default.nix
index daa861b31ea7c..73fb6a6dcf6e4 100644
--- a/pkgs/development/libraries/scmccid/default.nix
+++ b/pkgs/development/libraries/scmccid/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     description = "PCSC drivers for linux, for the SCM SCR3310 v2.0 card and others";
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
     license = lib.licenses.unfree;
-    maintainers = with lib.maintainers; [viric];
+    maintainers = [ ];
     platforms = with lib.platforms; linux;
   };
 }
diff --git a/pkgs/development/libraries/sentry-native/default.nix b/pkgs/development/libraries/sentry-native/default.nix
index 38ebc3f42a096..6e12e19d596a1 100644
--- a/pkgs/development/libraries/sentry-native/default.nix
+++ b/pkgs/development/libraries/sentry-native/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sentry-native";
-  version = "0.7.6";
+  version = "0.7.10";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-native";
     rev = version;
-    hash = "sha256-yriFV6OLk+miaKKWQKd08MmwDx0blkiiyq6gQHUaNWE=";
+    hash = "sha256-1Pro2BXflitUGVbzvjwdSFqwWM/EeuDC3eHEj+7qwm8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/serd/default.nix b/pkgs/development/libraries/serd/default.nix
index 707a77006acbe..51e1f0264805f 100644
--- a/pkgs/development/libraries/serd/default.nix
+++ b/pkgs/development/libraries/serd/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     description = "Lightweight C library for RDF syntax which supports reading and writing Turtle and NTriples";
     homepage = "https://drobilla.net/software/serd";
     license = licenses.mit;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     mainProgram = "serdi";
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix
index 1a2f407f9bc22..07138596d05de 100644
--- a/pkgs/development/libraries/serf/default.nix
+++ b/pkgs/development/libraries/serf/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config scons ];
   buildInputs = [ apr openssl aprutil zlib libiconv ]
-    ++ lib.optional (!stdenv.isCygwin) libkrb5;
+    ++ lib.optional (!stdenv.hostPlatform.isCygwin) libkrb5;
 
   patches = [
     ./scons.patch
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     sconsFlags+=" CC=$CC"
     sconsFlags+=" OPENSSL=${openssl}"
     sconsFlags+=" ZLIB=${zlib}"
-  '' + lib.optionalString (!stdenv.isCygwin) ''
+  '' + lib.optionalString (!stdenv.hostPlatform.isCygwin) ''
     sconsFlags+=" GSSAPI=${libkrb5.dev}"
   '';
 
diff --git a/pkgs/development/libraries/sfml/default.nix b/pkgs/development/libraries/sfml/default.nix
index c3ecd3a9866fe..2b28228c5f57e 100644
--- a/pkgs/development/libraries/sfml/default.nix
+++ b/pkgs/development/libraries/sfml/default.nix
@@ -45,9 +45,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ freetype libjpeg openal flac libvorbis glew ]
-    ++ lib.optional stdenv.isLinux udev
-    ++ lib.optionals (!stdenv.isDarwin) [ libX11 libXrandr libXrender xcbutilimage ]
-    ++ lib.optionals stdenv.isDarwin [ IOKit Foundation AppKit OpenAL ];
+    ++ lib.optional stdenv.hostPlatform.isLinux udev
+    ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ libX11 libXrandr libXrender xcbutilimage ]
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ IOKit Foundation AppKit OpenAL ];
 
   cmakeFlags = [
     "-DSFML_INSTALL_PKGCONFIG_FILES=yes"
diff --git a/pkgs/development/libraries/shapelib/default.nix b/pkgs/development/libraries/shapelib/default.nix
deleted file mode 100644
index 27a3b7f5ee302..0000000000000
--- a/pkgs/development/libraries/shapelib/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, stdenv
-, fetchurl
-}:
-
-stdenv.mkDerivation rec {
-  pname = "shapelib";
-  version = "1.6.0";
-
-  src = fetchurl {
-    url = "https://download.osgeo.org/shapelib/shapelib-${version}.tar.gz";
-    sha256 = "sha256-GVKLJDdyQXBWNzIMNnlDAxrVCIZl0fsOHqpSpxJkpsQ=";
-  };
-
-  doCheck = true;
-  preCheck = ''
-    patchShebangs tests contrib/tests
-  '';
-
-  meta = with lib; {
-    description = "C Library for reading, writing and updating ESRI Shapefiles";
-    homepage = "http://shapelib.maptools.org/";
-    license = licenses.gpl2;
-    maintainers = with maintainers; teams.geospatial.members ++ [ ehmry ];
-  };
-}
diff --git a/pkgs/development/libraries/shibboleth-sp/default.nix b/pkgs/development/libraries/shibboleth-sp/default.nix
index da63b22f9e7ee..f38db198bd307 100644
--- a/pkgs/development/libraries/shibboleth-sp/default.nix
+++ b/pkgs/development/libraries/shibboleth-sp/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
   buildInputs = [ boost fcgi openssl opensaml-cpp log4shib xercesc xml-security-c xml-tooling-c ]
-    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
       CoreServices
       SystemConfiguration
     ]);
diff --git a/pkgs/development/libraries/silgraphite/graphite2.nix b/pkgs/development/libraries/silgraphite/graphite2.nix
index 60a4af6d0a730..d2a4206e7dc1a 100644
--- a/pkgs/development/libraries/silgraphite/graphite2.nix
+++ b/pkgs/development/libraries/silgraphite/graphite2.nix
@@ -1,5 +1,6 @@
 { lib
 , stdenv
+, llvmPackages
 , fetchurl
 , pkg-config
 , freetype
@@ -20,9 +21,13 @@ stdenv.mkDerivation (finalAttrs: {
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ pkg-config cmake ];
-  buildInputs = [ freetype ];
+  buildInputs = [ freetype ]
+    ++ lib.optional (stdenv.targetPlatform.useLLVM or false)
+      (llvmPackages.compiler-rt.override {
+        doFakeLibgcc = true;
+      });
 
-  patches = lib.optionals stdenv.isDarwin [ ./macosx.patch ];
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [ ./macosx.patch ];
   postPatch = ''
     # disable broken 'nametabletest' test, fails on gcc-13:
     #   https://github.com/silnrsi/graphite/pull/74
diff --git a/pkgs/development/libraries/simdjson/default.nix b/pkgs/development/libraries/simdjson/default.nix
index 4d15113f3c9af..5adc27e7c106d 100644
--- a/pkgs/development/libraries/simdjson/default.nix
+++ b/pkgs/development/libraries/simdjson/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "simdjson";
-  version = "3.9.4";
+  version = "3.10.1";
 
   src = fetchFromGitHub {
     owner = "simdjson";
     repo = "simdjson";
     rev = "v${version}";
-    sha256 = "sha256-iTlIdLNOr1rRBnCwnI34e2RLL18Fmc/kRSMdZcOLp98=";
+    sha256 = "sha256-UfGt5lKmpqc21Hln4t/4KJfg+3V/hqX3UYgpCvlhkrM=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/simgear/default.nix b/pkgs/development/libraries/simgear/default.nix
index c66dfb3fdcc89..416274e1c5452 100644
--- a/pkgs/development/libraries/simgear/default.nix
+++ b/pkgs/development/libraries/simgear/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, plib, freeglut, xorgproto, libX11, libXext, libXi
+{ lib, stdenv, fetchurl, plib, libglut, xorgproto, libX11, libXext, libXi
 , libICE, libSM, libXt, libXmu, libGLU, libGL, boost179, zlib, libjpeg, freealut
 , openscenegraph, openal, expat, cmake, apr, xz
 , curl
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ plib freeglut xorgproto libX11 libXext libXi
+  buildInputs = [ plib libglut xorgproto libX11 libXext libXi
                   libICE libSM libXt libXmu libGLU libGL boost179 zlib libjpeg freealut
                   openscenegraph openal expat apr curl xz ];
 
diff --git a/pkgs/development/libraries/simpleitk/default.nix b/pkgs/development/libraries/simpleitk/default.nix
index 10e055d5acde9..c17064729f961 100644
--- a/pkgs/development/libraries/simpleitk/default.nix
+++ b/pkgs/development/libraries/simpleitk/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , cmake
-, swig4
+, swig
 , lua
 , elastix
 , itk
@@ -10,18 +10,18 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "simpleitk";
-  version = "2.3.1";
+  version = "2.4.0";
 
   src = fetchFromGitHub {
     owner = "SimpleITK";
     repo = "SimpleITK";
     rev = "refs/tags/v${finalAttrs.version}";
-    hash = "sha256-JmZUlIdcCQ9yEqxoUwRaxvr/Q7xZm41QA3mtDtoSdyI=";
+    hash = "sha256-/FV5NAM9DJ54Vg6/5yn9DCybry+a8lS3fQ3HWLOeOTA=";
   };
 
   nativeBuildInputs = [
     cmake
-    swig4
+    swig
   ];
   buildInputs = [
     elastix
diff --git a/pkgs/development/libraries/slang/default.nix b/pkgs/development/libraries/slang/default.nix
deleted file mode 100644
index 162bc8395d998..0000000000000
--- a/pkgs/development/libraries/slang/default.nix
+++ /dev/null
@@ -1,102 +0,0 @@
-{ lib, stdenv, fetchurl
-, libiconv
-, libpng
-, ncurses
-, pcre
-, readline
-, zlib
-, writeScript
-}:
-
-stdenv.mkDerivation rec {
-  pname = "slang";
-  version = "2.3.3";
-
-  src = fetchurl {
-    url = "https://www.jedsoft.org/releases/slang/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-+RRQVK4TGXPGEgjqgkhtXdEOPFza0jt8SgYXdDyPWhg=";
-  };
-
-  outputs = [ "out" "dev" "man" "doc" ];
-
-  # Fix some wrong hardcoded paths
-  preConfigure = ''
-    sed -ie "s|/usr/lib/terminfo|${ncurses.out}/lib/terminfo|" configure
-    sed -ie "s|/usr/lib/terminfo|${ncurses.out}/lib/terminfo|" src/sltermin.c
-    sed -ie "s|/bin/ln|ln|" src/Makefile.in
-    sed -ie "s|-ltermcap|-lncurses|" ./configure
-  '';
-
-  configureFlags = [
-    "--with-pcre=${pcre.dev}"
-    "--with-png=${libpng.dev}"
-    "--with-readline=${readline.dev}"
-    "--with-z=${zlib.dev}"
-  ];
-
-  buildInputs = [
-    libpng
-    pcre
-    readline
-    zlib
-  ] ++ lib.optionals (stdenv.isDarwin) [ libiconv ];
-
-  propagatedBuildInputs = [ ncurses ];
-
-  buildFlags = lib.optional stdenv.hostPlatform.isStatic "static";
-  installTargets = lib.optional stdenv.hostPlatform.isStatic "install-static";
-
-  preBuild = ''
-    makeFlagsArray+=(AR_CR="${stdenv.cc.targetPrefix}ar cr")
-  '';
-
-  enableParallelBuilding = true;
-
-  postInstall = ''
-    find "$out"/lib/ -name '*.so' -exec chmod +x "{}" \;
-    sed '/^Libs:/s/$/ -lncurses/' -i "$dev"/lib/pkgconfig/slang.pc
-  '';
-
-  passthru = {
-    updateScript = writeScript "update-slang" ''
-      #!/usr/bin/env nix-shell
-      #!nix-shell -i bash -p curl pcre common-updater-scripts
-
-      set -eu -o pipefail
-
-      # Expect the text in format of 'Version 2.3.3</td>'
-      new_version="$(curl -s https://www.jedsoft.org/slang/ |
-          pcregrep -o1 'Version ([0-9.]+)</td>')"
-      update-source-version ${pname} "$new_version"
-    '';
-  };
-
-  meta = with lib; {
-    description = "Small, embeddable multi-platform programming library";
-    longDescription = ''
-      S-Lang is an interpreted language that was designed from the start to be
-      easily embedded into a program to provide it with a powerful extension
-      language. Examples of programs that use S-Lang as an extension language
-      include the jed text editor and the slrn newsreader. Although S-Lang does
-      not exist as a separate application, it is distributed with a quite
-      capable program called slsh ("slang-shell") that embeds the interpreter
-      and allows one to execute S-Lang scripts, or simply experiment with S-Lang
-      at an interactive prompt. Many of the the examples in this document are
-      presented in the context of one of the above applications.
-
-      S-Lang is also a programmer's library that permits a programmer to develop
-      sophisticated platform-independent software. In addition to providing the
-      S-Lang interpreter, the library provides facilities for screen management,
-      keymaps, low-level terminal I/O, etc. However, this document is concerned
-      only with the extension language and does not address these other features
-      of the S-Lang library. For information about the other components of the
-      library, the reader is referred to the S-Lang Library C Programmer's
-      Guide.
-    '';
-    homepage = "http://www.jedsoft.org/slang/";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ AndersonTorres ];
-    mainProgram = "slsh";
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/smpeg/default.nix b/pkgs/development/libraries/smpeg/default.nix
index 099a3d838bbbc..d310e3653e7f1 100644
--- a/pkgs/development/libraries/smpeg/default.nix
+++ b/pkgs/development/libraries/smpeg/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoconf automake libtool m4 pkg-config makeWrapper ];
 
-  buildInputs = [ SDL ] ++ lib.optionals (!stdenv.isDarwin) [ gtk2 libGLU libGL ];
+  buildInputs = [ SDL ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ gtk2 libGLU libGL ];
 
   outputs = [ "out" "dev" ];
 
diff --git a/pkgs/development/libraries/smpeg2/default.nix b/pkgs/development/libraries/smpeg2/default.nix
index 24dd9c9dc400f..bcece08e6195f 100644
--- a/pkgs/development/libraries/smpeg2/default.nix
+++ b/pkgs/development/libraries/smpeg2/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoconf automake makeWrapper pkg-config ];
 
   buildInputs = [ SDL2 ]
-    ++ lib.optional stdenv.isDarwin darwin.libobjc;
+    ++ lib.optional stdenv.hostPlatform.isDarwin darwin.libobjc;
 
   outputs = [ "out" "dev" "man" ];
 
diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix
index 869c56ed73007..21785e251841e 100644
--- a/pkgs/development/libraries/snappy/default.nix
+++ b/pkgs/development/libraries/snappy/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "snappy";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "snappy";
     rev = version;
-    hash = "sha256-mpEeUoJs+lGlqh1m6Mmr8UnbtQDn/8kfkeQdFwo2rQ0=";
+    hash = "sha256-IzKzrMDjh+Weor+OrKdX62cAKYTdDXgldxCgNE2/8vk=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/soci/default.nix b/pkgs/development/libraries/soci/default.nix
index 007a4fbaf7bf4..3ba387436e764 100644
--- a/pkgs/development/libraries/soci/default.nix
+++ b/pkgs/development/libraries/soci/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     sqlite
     postgresql
     boost
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     Kerberos
   ];
 
diff --git a/pkgs/development/libraries/socket_wrapper/default.nix b/pkgs/development/libraries/socket_wrapper/default.nix
index d73c521997a08..475a92e79c3e1 100644
--- a/pkgs/development/libraries/socket_wrapper/default.nix
+++ b/pkgs/development/libraries/socket_wrapper/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "socket_wrapper";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/socket_wrapper-${version}.tar.gz";
-    sha256 = "sha256-CgjsJJ3Z/7s7FtV3s1LVc1YfV77uw1lhgqxuyORrmrY=";
+    sha256 = "sha256-CWz7TqucebUtss51JsVeUI8GZb/qxsS8ZqPIMh2HU1g=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/sofia-sip/default.nix b/pkgs/development/libraries/sofia-sip/default.nix
index b9f34eeb9748d..7b33ed04871f2 100644
--- a/pkgs/development/libraries/sofia-sip/default.nix
+++ b/pkgs/development/libraries/sofia-sip/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-7QmK2UxEO5lC0KBDWB3bwKTy0Nc7WrdTLjoQYzezoaY=";
   };
 
-  buildInputs = [ glib openssl ] ++ lib.optional stdenv.isDarwin SystemConfiguration;
+  buildInputs = [ glib openssl ] ++ lib.optional stdenv.hostPlatform.isDarwin SystemConfiguration;
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/sonic/default.nix b/pkgs/development/libraries/sonic/default.nix
index 4ab71b36a0123..6b82b5f4f04fc 100644
--- a/pkgs/development/libraries/sonic/default.nix
+++ b/pkgs/development/libraries/sonic/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   postInstall = ''
     installManPage sonic.1
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libsonic.so.0.3.0 $out/lib/libsonic.so.0.3.0
   '';
 
diff --git a/pkgs/development/libraries/sope/default.nix b/pkgs/development/libraries/sope/default.nix
index f8f1af00fe66b..89372fca3f639 100644
--- a/pkgs/development/libraries/sope/default.nix
+++ b/pkgs/development/libraries/sope/default.nix
@@ -59,6 +59,6 @@ gnustep.stdenv.mkDerivation rec {
     license = licenses.publicDomain;
     homepage = "https://github.com/inverse-inc/sope";
     platforms = platforms.linux;
-    maintainers = with maintainers; [];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/soqt/default.nix b/pkgs/development/libraries/soqt/default.nix
index fe7901bddd582..14ff1ee1356fe 100644
--- a/pkgs/development/libraries/soqt/default.nix
+++ b/pkgs/development/libraries/soqt/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     repo = "soqt";
     # rev = "SoQt-${version}";
     rev = "fb8f655632bb9c9c60e0ff9fa69a5ba22d3ff99d";
-    sha256 = "sha256-YoBq8P3Tag2Sepqxf/qIcJDBhH/gladBmDUj78aacZs=";
+    hash = "sha256-YoBq8P3Tag2Sepqxf/qIcJDBhH/gladBmDUj78aacZs=";
     fetchSubmodules = true;
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/coin3d/soqt";
     license = licenses.bsd3;
     description = "Glue between Coin high-level 3D visualization library and Qt";
-    maintainers = with maintainers; [ gebner viric ];
+    maintainers = with maintainers; [ gebner ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/sord/default.nix b/pkgs/development/libraries/sord/default.nix
index b04e1fbbf001f..f762fbc3931ec 100644
--- a/pkgs/development/libraries/sord/default.nix
+++ b/pkgs/development/libraries/sord/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     homepage = "http://drobilla.net/software/sord";
     description = "Lightweight C library for storing RDF data in memory";
     license = with licenses; [ bsd0 isc ];
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/soundtouch/default.nix b/pkgs/development/libraries/soundtouch/default.nix
index 40179b269efd9..606fda594d918 100644
--- a/pkgs/development/libraries/soundtouch/default.nix
+++ b/pkgs/development/libraries/soundtouch/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     owner = "soundtouch";
     repo = "soundtouch";
     rev = version;
-    sha256 = "sha256-imeeTj+3gXxoGTuC/13+BAplwcnQ0wRJdSVt7MPlBxc=";
+    hash = "sha256-imeeTj+3gXxoGTuC/13+BAplwcnQ0wRJdSVt7MPlBxc=";
   };
 
   nativeBuildInputs = [ autoconf automake libtool ];
diff --git a/pkgs/development/libraries/spdk/default.nix b/pkgs/development/libraries/spdk/default.nix
index 4541042ed5c5f..abd87c03b1a82 100644
--- a/pkgs/development/libraries/spdk/default.nix
+++ b/pkgs/development/libraries/spdk/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     owner = "spdk";
     repo = "spdk";
     rev = "v${version}";
-    sha256 = "sha256-kjZWaarvNSYXseJ/uH7Ak7DbWEgrLnAwXcL8byJ9fjU=";
+    hash = "sha256-kjZWaarvNSYXseJ/uH7Ak7DbWEgrLnAwXcL8byJ9fjU=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/spdlog/default.nix b/pkgs/development/libraries/spdlog/default.nix
index f9255e3df5950..6aa91db83549a 100644
--- a/pkgs/development/libraries/spdlog/default.nix
+++ b/pkgs/development/libraries/spdlog/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "spdlog";
-  version = "1.13.0";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "gabime";
     repo  = "spdlog";
     rev   = "v${version}";
-    hash  = "sha256-3n8BnjZ7uMH8quoiT60yTU7poyOtoEmzNMOLa1+r7X0=";
+    hash  = "sha256-F7khXbMilbh5b+eKnzcB0fPPWQqUHqAYPWJb83OnUKQ=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/speech-tools/default.nix b/pkgs/development/libraries/speech-tools/default.nix
index 8bee16fef7539..1dbaa016cbbfe 100644
--- a/pkgs/development/libraries/speech-tools/default.nix
+++ b/pkgs/development/libraries/speech-tools/default.nix
@@ -28,9 +28,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     ncurses
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     CoreServices
     AudioUnit
     Cocoa
diff --git a/pkgs/development/libraries/speechd/default.nix b/pkgs/development/libraries/speechd/default.nix
index 9b44c8e46d0cb..b0472e1b004ab 100644
--- a/pkgs/development/libraries/speechd/default.nix
+++ b/pkgs/development/libraries/speechd/default.nix
@@ -21,6 +21,7 @@
 , withEspeak ? true, espeak, sonic, pcaudiolib
 , mbrola
 , withPico ? true, svox
+, libsOnly ? false
 }:
 
 let
@@ -101,14 +102,16 @@ in stdenv.mkDerivation rec {
     substituteInPlace src/modules/pico.c --replace "/usr/share/pico/lang" "${svox}/share/pico/lang"
   '';
 
-  postInstall = ''
+  postInstall = if libsOnly then ''
+    rm -rf $out/{bin,etc,lib/speech-dispatcher,lib/systemd,libexec,share}
+  '' else ''
     wrapPythonPrograms
   '';
 
   enableParallelBuilding = true;
 
   meta = with lib; {
-    description = "Common interface to speech synthesis";
+    description = "Common interface to speech synthesis" + lib.optionalString libsOnly " - client libraries only";
     homepage = "https://devel.freebsoft.org/speechd";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [
@@ -116,5 +119,6 @@ in stdenv.mkDerivation rec {
       jtojnar
     ];
     platforms = platforms.linux;
+    mainProgram = "speech-dispatcher";
   };
 }
diff --git a/pkgs/development/libraries/speexdsp/default.nix b/pkgs/development/libraries/speexdsp/default.nix
index 0f5e09cf83e54..e3452beab870d 100644
--- a/pkgs/development/libraries/speexdsp/default.nix
+++ b/pkgs/development/libraries/speexdsp/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   buildInputs = lib.optionals withFftw3 [ fftw ];
 
   configureFlags = lib.optionals withFftw3 [ "--with-fft=gpl-fftw3" ]
-    ++ lib.optional stdenv.isAarch64 "--disable-neon";
+    ++ lib.optional stdenv.hostPlatform.isAarch64 "--disable-neon";
 
   meta = with lib; {
     homepage = "https://www.speex.org/";
diff --git a/pkgs/development/libraries/spglib/default.nix b/pkgs/development/libraries/spglib/default.nix
index fe585e9d6ea22..75634072b8ec7 100644
--- a/pkgs/development/libraries/spglib/default.nix
+++ b/pkgs/development/libraries/spglib/default.nix
@@ -2,18 +2,18 @@
 
 stdenv.mkDerivation rec {
   pname = "spglib";
-  version = "2.4.0"; # N.B: if you change this, please update: pythonPackages.spglib
+  version = "2.5.0"; # N.B: if you change this, please update: pythonPackages.spglib
 
   src = fetchFromGitHub {
     owner = "spglib";
     repo = "spglib";
     rev = "v${version}";
-    hash = "sha256-Y6WkN3Q1q4h2TqrlKSKFmFxQZQWKmleRHV74PmYyw2A=";
+    hash = "sha256-/PG+ewlxIyf5Au2kVvsAYCfGZgUOOEpA1uATu15ut+M=";
   };
 
   nativeBuildInputs = [ cmake gfortran gtest ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ openmp ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ openmp ];
 
   cmakeFlags = [ "-DSPGLIB_WITH_Fortran=On" ];
 
diff --git a/pkgs/development/libraries/spice-gtk/default.nix b/pkgs/development/libraries/spice-gtk/default.nix
index fd7428213fc9c..048ba14f5f937 100644
--- a/pkgs/development/libraries/spice-gtk/default.nix
+++ b/pkgs/development/libraries/spice-gtk/default.nix
@@ -37,7 +37,7 @@
 , wayland-scanner
 , zlib
 , wrapGAppsHook3
-, withPolkit ? stdenv.isLinux
+, withPolkit ? stdenv.hostPlatform.isLinux
 }:
 
 # If this package is built with polkit support (withPolkit=true),
@@ -92,7 +92,7 @@ stdenv.mkDerivation rec {
     wrapGAppsHook3
   ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
     mesonEmulatorHook
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     wayland-scanner
   ];
 
@@ -119,7 +119,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals withPolkit [
     polkit
     acl
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libcap_ng
     libdrm
     wayland-protocols
@@ -132,7 +132,7 @@ stdenv.mkDerivation rec {
     "-Dusb-ids-path=${hwdata}/share/hwdata/usb.ids"
   ] ++ lib.optionals (!withPolkit) [
     "-Dpolkit=disabled"
-  ] ++ lib.optionals (!stdenv.isLinux) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Dlibcap-ng=disabled"
     "-Degl=disabled"
   ] ++ lib.optionals stdenv.hostPlatform.isMusl [
diff --git a/pkgs/development/libraries/spice/default.nix b/pkgs/development/libraries/spice/default.nix
index d7855cd5cea5a..4ac1b1cdee11c 100644
--- a/pkgs/development/libraries/spice/default.nix
+++ b/pkgs/development/libraries/spice/default.nix
@@ -67,9 +67,9 @@ stdenv.mkDerivation rec {
     python3.pkgs.pyparsing
     spice-protocol
     zlib
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     alsa-lib
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     gdk-pixbuf
   ];
 
diff --git a/pkgs/development/libraries/spirv-headers/default.nix b/pkgs/development/libraries/spirv-headers/default.nix
index 31efd76209a38..8326a71041daa 100644
--- a/pkgs/development/libraries/spirv-headers/default.nix
+++ b/pkgs/development/libraries/spirv-headers/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "spirv-headers";
-  version = "1.3.283.0";
+  version = "1.3.290.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Headers";
     rev = "vulkan-sdk-${version}";
-    hash = "sha256-CAmDDqeMVKNdV/91VQYAKyCc+e+H99PRYZzt5WjswBI=";
+    hash = "sha256-c9ruBCnf9PNJz030bfRhHwyqju6T8YCRx+efKCEYgSo=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/sqlcipher/default.nix b/pkgs/development/libraries/sqlcipher/default.nix
index af7848cdf85f2..dff4e09fa7a72 100644
--- a/pkgs/development/libraries/sqlcipher/default.nix
+++ b/pkgs/development/libraries/sqlcipher/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sqlcipher";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "sqlcipher";
     repo = "sqlcipher";
     rev = "v${version}";
-    hash = "sha256-ds+0ckQiHikNMr4Xf/wCWwQySpadGgnccENd6u6gIzQ=";
+    hash = "sha256-VcD3NwVrC75kLOJiIgrnzVpkBPhjxTmEFyKg/87wHGc=";
   };
 
   nativeBuildInputs = [
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
     mainProgram = "sqlcipher";
     homepage = "https://www.zetetic.net/sqlcipher/";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index f7a870e276209..ed1499abe6977 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -16,17 +16,17 @@ in
 
 stdenv.mkDerivation rec {
   pname = "sqlite${lib.optionalString interactive "-interactive"}";
-  version = "3.45.3";
+  version = "3.46.0";
 
   # nixpkgs-update: no auto update
   # NB! Make sure to update ./tools.nix src (in the same directory).
   src = fetchurl {
     url = "https://sqlite.org/2024/sqlite-autoconf-${archiveVersion version}.tar.gz";
-    hash = "sha256-soCcpTEkwZxg9Cv2J3NurgEa/cwgW7SCcKXumjgZFTE=";
+    hash = "sha256-b45qezNSc3SIFvmztiu9w3Koid6HgtfwSMZTpEdBen0=";
   };
 
   outputs = [ "bin" "dev" "out" ];
-  separateDebugInfo = stdenv.isLinux;
+  separateDebugInfo = stdenv.hostPlatform.isLinux;
 
   nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
   buildInputs = [ zlib ] ++ lib.optionals interactive [ readline ncurses ];
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
     fi
 
     # Necessary for FTS5 on Linux
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lm"
+    export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lm"
 
     echo ""
     echo "NIX_CFLAGS_COMPILE = $NIX_CFLAGS_COMPILE"
@@ -107,7 +107,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.sqlite.org/";
     license = licenses.publicDomain;
     mainProgram = "sqlite3";
-    maintainers = with maintainers; [ eelco np ];
+    maintainers = with maintainers; [ np ];
     platforms = platforms.unix ++ platforms.windows;
     pkgConfigModules = [ "sqlite3" ];
   };
diff --git a/pkgs/development/libraries/sqlite/tools.nix b/pkgs/development/libraries/sqlite/tools.nix
index 0f6fe766a3de3..1c8ab1f3465a5 100644
--- a/pkgs/development/libraries/sqlite/tools.nix
+++ b/pkgs/development/libraries/sqlite/tools.nix
@@ -4,16 +4,16 @@ let
   archiveVersion = import ./archive-version.nix lib;
   mkTool = { pname, makeTarget, description, homepage, mainProgram }: stdenv.mkDerivation rec {
     inherit pname;
-    version = "3.45.3";
+    version = "3.46.0";
 
     # nixpkgs-update: no auto update
     src = assert version == sqlite.version; fetchurl {
       url = "https://sqlite.org/2024/sqlite-src-${archiveVersion version}.zip";
-      hash = "sha256-7AyVnkLLXxgEE10FVfjqMr5v8gSOsYG8zTZ8j1PxhdE=";
+      hash = "sha256-BwNiEJvraJn2V5dXG5i4gkyPQ39bKSb4juBo2Y7zaOw=";
     };
 
     nativeBuildInputs = [ unzip ];
-    buildInputs = [ tcl ] ++ lib.optional stdenv.isDarwin Foundation;
+    buildInputs = [ tcl ] ++ lib.optional stdenv.hostPlatform.isDarwin Foundation;
 
     makeFlags = [ makeTarget ];
 
diff --git a/pkgs/development/libraries/sqlitecpp/default.nix b/pkgs/development/libraries/sqlitecpp/default.nix
index e2c0b4ec35b97..a48e9a4ac87a6 100644
--- a/pkgs/development/libraries/sqlitecpp/default.nix
+++ b/pkgs/development/libraries/sqlitecpp/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "sqlitecpp";
-  version = "3.3.1";
+  version = "3.3.2";
 
   src = fetchFromGitHub {
     owner = "SRombauts";
     repo = "sqlitecpp";
     rev = finalAttrs.version;
-    sha256 = "sha256-8l1JRaE7w9vJ4bCSLGAk9zwYHDFeKkBi9pE5fUJfLRc=";
+    sha256 = "sha256-rsVFk4FsonrwpBd3TonkxilwWeOBocH8AyeB+71OBdI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/sregex/default.nix b/pkgs/development/libraries/sregex/default.nix
index f69e09c8873b5..58ef91c31908b 100644
--- a/pkgs/development/libraries/sregex/default.nix
+++ b/pkgs/development/libraries/sregex/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     description = "Non-backtracking NFA/DFA-based Perl-compatible regex engine matching on large data streams";
     mainProgram = "sregex-cli";
     license = licenses.bsd3;
-    maintainers = with maintainers; [];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/stargate-libcds/default.nix b/pkgs/development/libraries/stargate-libcds/default.nix
index b74f19e1959a7..c37365652e725 100644
--- a/pkgs/development/libraries/stargate-libcds/default.nix
+++ b/pkgs/development/libraries/stargate-libcds/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   };
 
   # Fix 'error: unrecognized command line option' in platforms other than x86
-  PLAT_FLAGS = lib.optionalString stdenv.isx86_64 "-mfpmath=sse -mssse3";
+  PLAT_FLAGS = lib.optionalString stdenv.hostPlatform.isx86_64 "-mfpmath=sse -mssse3";
 
   patches = [
     # Remove unnecessary tests (valgrind, coverage)
diff --git a/pkgs/development/libraries/stb/default.nix b/pkgs/development/libraries/stb/default.nix
index f96bb0724bf28..5e3cc62ea41b8 100644
--- a/pkgs/development/libraries/stb/default.nix
+++ b/pkgs/development/libraries/stb/default.nix
@@ -40,6 +40,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/nothings/stb";
     license = licenses.publicDomain;
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/stfl/default.nix b/pkgs/development/libraries/stfl/default.nix
index b79020e3ba712..91a41ac352989 100644
--- a/pkgs/development/libraries/stfl/default.nix
+++ b/pkgs/development/libraries/stfl/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   preBuild = ''
     sed -i s/gcc/cc/g Makefile
     sed -i s%ncursesw/ncurses.h%ncurses.h% stfl_internals.h
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     sed -i s/-soname/-install_name/ Makefile
   ''
   # upstream builds shared library unconditionally. Also, it has no
diff --git a/pkgs/development/libraries/stxxl/default.nix b/pkgs/development/libraries/stxxl/default.nix
index a11544dd78930..31d9098242c2a 100644
--- a/pkgs/development/libraries/stxxl/default.nix
+++ b/pkgs/development/libraries/stxxl/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , cmake
-, parallelSupport ? (!stdenv.isDarwin)
+, parallelSupport ? (!stdenv.hostPlatform.isDarwin)
 }:
 
 let
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     description = "Implementation of the C++ standard template library STL for external memory (out-of-core) computations";
     homepage = "https://github.com/stxxl/stxxl";
     license = licenses.boost;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     mainProgram = "stxxl_tool";
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/sundials/default.nix b/pkgs/development/libraries/sundials/default.nix
index d53d15a3f71a6..6a6752c3eb93e 100644
--- a/pkgs/development/libraries/sundials/default.nix
+++ b/pkgs/development/libraries/sundials/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sundials";
-  version = "6.7.0";
+  version = "7.1.1";
 
   outputs = [ "out" "examples" ];
 
   src = fetchurl {
     url = "https://github.com/LLNL/sundials/releases/download/v${version}/sundials-${version}.tar.gz";
-    hash = "sha256-XxE6FWSp0tmP+VJJ9IcaTIFaBdu5uIZqgrE6sVjDets=";
+    hash = "sha256-6n1u37UkSN39wexI+JpyH+bAolnBD471b2D83th6lLs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/swiftshader/default.nix b/pkgs/development/libraries/swiftshader/default.nix
index 36564110d2833..624d239fa35c1 100644
--- a/pkgs/development/libraries/swiftshader/default.nix
+++ b/pkgs/development/libraries/swiftshader/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, python3, cmake, jq, libX11, libXext, zlib }:
+{ lib, stdenv, fetchgit, python3, cmake, jq }:
 
 stdenv.mkDerivation rec {
   pname = "swiftshader";
@@ -7,7 +7,14 @@ stdenv.mkDerivation rec {
   src = fetchgit {
     url = "https://swiftshader.googlesource.com/SwiftShader";
     rev = "4e40d502c440cc59b25fa3a5fee0eadbab7442aa";
-    sha256 = "085bdqn80s7zw5h2pz6xff3j34hmkxb9wxzgjmzdr9c24zwp2k1c";
+    hash = "sha256-YtbTaOkFhVMKdu3jiRHQsPmoEu3KDzIQXLZ5HFBSmWI=";
+    # Remove 1GB of test files to get under Hydra output limit
+    postFetch = ''
+      rm -r $out/third_party/llvm-project/llvm/test
+      rm -r $out/third_party/json/test
+      rm -r $out/third_party/cppdap/third_party/json/test
+      rm -r $out/third_party/llvm-project/clang/test
+    '';
   };
 
   nativeBuildInputs = [ cmake python3 jq ];
diff --git a/pkgs/development/libraries/sycl-info/default.nix b/pkgs/development/libraries/sycl-info/default.nix
index 5d70bed4dd0fe..e0c4296cb2773 100644
--- a/pkgs/development/libraries/sycl-info/default.nix
+++ b/pkgs/development/libraries/sycl-info/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, installShellFiles
 , cmake
 , ninja
 , ocl-icd
diff --git a/pkgs/development/libraries/symengine/default.nix b/pkgs/development/libraries/symengine/default.nix
index 25043bbb0265d..cbdb542dbfd96 100644
--- a/pkgs/development/libraries/symengine/default.nix
+++ b/pkgs/development/libraries/symengine/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     "-DWITH_SYMENGINE_THREAD_SAFE=yes"
     "-DWITH_MPC=yes"
     "-DBUILD_FOR_DISTRIBUTION=yes"
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
     # error: unrecognized instruction mnemonic, did you mean: bit, cnt, hint, ins, not?
     "-DBUILD_TESTS=OFF"
   ] ++ lib.optionals withShared [
diff --git a/pkgs/development/libraries/t1lib/default.nix b/pkgs/development/libraries/t1lib/default.nix
index 16112f32b1e2f..e09ed7ee32dc7 100644
--- a/pkgs/development/libraries/t1lib/default.nix
+++ b/pkgs/development/libraries/t1lib/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libX11 libXaw ];
   buildFlags = [ "without_doc" ];
 
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     # ??
     chmod +x $out/lib/*.so.*
   '';
diff --git a/pkgs/development/libraries/tachyon/default.nix b/pkgs/development/libraries/tachyon/default.nix
index 0446d2cac6e7d..9520f9a8404e5 100644
--- a/pkgs/development/libraries/tachyon/default.nix
+++ b/pkgs/development/libraries/tachyon/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     url = "http://jedi.ks.uiuc.edu/~johns/tachyon/files/${version}/${pname}-${version}.tar.gz";
     sha256 = "sha256-CSA8ECMRFJ9d9cw2dAn5bHJXQmZtGcJNtbqZTVqBpvU=";
   };
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     Carbon
   ] ++ lib.optionals withJpegSupport [
     libjpeg
diff --git a/pkgs/development/libraries/taco/default.nix b/pkgs/development/libraries/taco/default.nix
index 693b5f25f9904..a2f2f933214c1 100644
--- a/pkgs/development/libraries/taco/default.nix
+++ b/pkgs/development/libraries/taco/default.nix
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = lib.optional stdenv.isDarwin llvmPackages.openmp;
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin llvmPackages.openmp;
 
   propagatedBuildInputs = lib.optional enablePython pyEnv;
 
diff --git a/pkgs/development/libraries/tagparser/default.nix b/pkgs/development/libraries/tagparser/default.nix
index c0f6f3fd42b4d..3eaa0e238518c 100644
--- a/pkgs/development/libraries/tagparser/default.nix
+++ b/pkgs/development/libraries/tagparser/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tagparser";
-  version = "12.1.0";
+  version = "12.3.1";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "tagparser";
     rev = "v${version}";
-    hash = "sha256-83Xxj1CQsghbAsQ/3GKIYCz9lBNEBvLlx1iOKbszn8A=";
+    hash = "sha256-ihrtUd9R8Tdkuv0kdIZNzBDrhwmsC3LNDsmoCroSMPM=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
     description = "C++ library for reading and writing MP4/M4A/AAC (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags";
     license = licenses.gpl2;
     maintainers = [ maintainers.matthiasbeyer ];
+    platforms = platforms.all;
   };
 }
 
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index 793fc1ccf5cb5..eb1525fb9acbe 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     wafHook
     docbook-xsl-nons
     docbook_xml_dtd_42
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ];
 
diff --git a/pkgs/development/libraries/taskflow/default.nix b/pkgs/development/libraries/taskflow/default.nix
index 3c31d152fc705..cdb5303f1a113 100644
--- a/pkgs/development/libraries/taskflow/default.nix
+++ b/pkgs/development/libraries/taskflow/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "taskflow";
-  version = "3.6.0";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "taskflow";
     repo = "taskflow";
     rev = "v${version}";
-    hash = "sha256-Iy9BhkyJa2nFxwVXb4LAlgVAHnu+58Ago2eEgAIlZ7M=";
+    hash = "sha256-q2IYhG84hPIZhuogWf6ojDG9S9ZyuJz9s14kQyIc6t0=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/tbb/2020_3.nix b/pkgs/development/libraries/tbb/2020_3.nix
index dcd21b27ff334..c7e1e9127630b 100644
--- a/pkgs/development/libraries/tbb/2020_3.nix
+++ b/pkgs/development/libraries/tbb/2020_3.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = (lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = (lib.optionals stdenv.hostPlatform.isDarwin [
     fixDarwinDylibNames
   ]);
 
diff --git a/pkgs/development/libraries/tbb/2021_5.nix b/pkgs/development/libraries/tbb/2021_5.nix
index 3bfa9278106d9..90e7aa2a9f2f3 100644
--- a/pkgs/development/libraries/tbb/2021_5.nix
+++ b/pkgs/development/libraries/tbb/2021_5.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     lib.optionals stdenv.cc.isClang [ "-Wno-error=unused-but-set-variable" ] ++
     # Workaround for gcc-12 ICE when using -O3
     # https://gcc.gnu.org/PR108854
-    lib.optionals (stdenv.cc.isGNU && stdenv.isx86_32) [ "-O2" ];
+    lib.optionals (stdenv.cc.isGNU && stdenv.hostPlatform.isx86_32) [ "-O2" ];
 
   # Fix undefined reference errors with version script under LLVM.
   NIX_LDFLAGS = lib.optionalString (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17") "--undefined-version";
diff --git a/pkgs/development/libraries/tbb/default.nix b/pkgs/development/libraries/tbb/default.nix
index 73ea56b306869..3ff04d6bf1abf 100644
--- a/pkgs/development/libraries/tbb/default.nix
+++ b/pkgs/development/libraries/tbb/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     lib.optionals stdenv.cc.isClang [ "-Wno-error=unused-but-set-variable" ] ++
     # Workaround for gcc-12 ICE when using -O3
     # https://gcc.gnu.org/PR108854
-    lib.optionals (stdenv.cc.isGNU && stdenv.isx86_32) [ "-O2" ];
+    lib.optionals (stdenv.cc.isGNU && stdenv.hostPlatform.isx86_32) [ "-O2" ];
 
   # Fix undefined reference errors with version script under LLVM.
   NIX_LDFLAGS = lib.optionalString (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17") "--undefined-version";
diff --git a/pkgs/development/libraries/tbox/default.nix b/pkgs/development/libraries/tbox/default.nix
index b2406d19e7017..9d1afcec84e12 100644
--- a/pkgs/development/libraries/tbox/default.nix
+++ b/pkgs/development/libraries/tbox/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tbox";
-  version = "1.7.5";
+  version = "1.7.6";
 
   src = fetchFromGitHub {
     owner = "tboox";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-VM6LOTVwM47caXYiH+6c7t174i0W5MY1dg2Y5yutlcc=";
+    hash = "sha256-cwpZ7F8WzT/46HrckHe0Aug2mxirCkNA68aCxg/FcsE=";
   };
 
   configureFlags = [
diff --git a/pkgs/development/libraries/tdb/default.nix b/pkgs/development/libraries/tdb/default.nix
index d78f4abafab00..c84ded6267e14 100644
--- a/pkgs/development/libraries/tdb/default.nix
+++ b/pkgs/development/libraries/tdb/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     "--cross-execute=${stdenv.hostPlatform.emulator buildPackages}"
   ];
 
-  postFixup = if stdenv.isDarwin
+  postFixup = if stdenv.hostPlatform.isDarwin
     then ''install_name_tool -id $out/lib/libtdb.dylib $out/lib/libtdb.dylib''
     else null;
 
diff --git a/pkgs/development/libraries/tdlib/default.nix b/pkgs/development/libraries/tdlib/default.nix
index 3c60ca5fc2a24..f9a87aa73b511 100644
--- a/pkgs/development/libraries/tdlib/default.nix
+++ b/pkgs/development/libraries/tdlib/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   pname = "tdlib";
-  version = "1.8.31";
+  version = "1.8.35";
 
   src = fetchFromGitHub {
     owner = "tdlib";
@@ -11,8 +11,8 @@ stdenv.mkDerivation {
     # The tdlib authors do not set tags for minor versions, but
     # external programs depending on tdlib constrain the minor
     # version, hence we set a specific commit with a known version.
-    rev = "8f19c751dc296cedb9a921badb7a02a8c0cb1aeb";
-    hash = "sha256-M9EFNgWIpBz276moCG3qJ1WDIEP5j24vuYHio9jc8W0=";
+    rev = "8d08b34e22a08e58db8341839c4e18ee06c516c5";
+    hash = "sha256-RxFiOp3QDpLeikPqd8vstvhdglFLtOmwpcfGvvdgI5Y=";
   };
 
   buildInputs = [ gperf openssl readline zlib ];
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
                  function(generate_pkgconfig' \
       --replace '\$'{prefix}/'$'{CMAKE_INSTALL_LIBDIR} '$'{CMAKE_INSTALL_FULL_LIBDIR} \
       --replace '\$'{prefix}/'$'{CMAKE_INSTALL_INCLUDEDIR} '$'{CMAKE_INSTALL_FULL_INCLUDEDIR}
-  '' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
+  '' + lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) ''
     sed -i "/vptr/d" test/CMakeLists.txt
   '';
 
diff --git a/pkgs/development/libraries/test-drive/default.nix b/pkgs/development/libraries/test-drive/default.nix
index 639582c3b8ae5..41fc83844287e 100644
--- a/pkgs/development/libraries/test-drive/default.nix
+++ b/pkgs/development/libraries/test-drive/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "test-drive";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "fortran-lang";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ObAnHFP1Hp0knf/jtGHynVF0CCqK47eqetePx4NLmlM=";
+    hash = "sha256-xRx8ErIN9xjxZt/nEsdIQkIGFRltuELdlI8lXA+M030=";
   };
 
   nativeBuildInputs = [
@@ -19,6 +19,8 @@ stdenv.mkDerivation rec {
     mesonEmulatorHook
   ];
 
+  mesonAutoFeatures = "auto";
+
   meta = with lib; {
     description = "Procedural Fortran testing framework";
     homepage = "https://github.com/fortran-lang/test-drive";
diff --git a/pkgs/development/libraries/tezos-rust-libs/default.nix b/pkgs/development/libraries/tezos-rust-libs/default.nix
index e59e5858eaacd..85ac4b0266c5b 100644
--- a/pkgs/development/libraries/tezos-rust-libs/default.nix
+++ b/pkgs/development/libraries/tezos-rust-libs/default.nix
@@ -7,12 +7,12 @@ stdenv.mkDerivation rec {
     owner = "tezos";
     repo = "tezos-rust-libs";
     rev = "v${version}";
-    sha256 = "sha256-SuCqDZDXmWdGI/GN+3nYcUk66jnW5FQQaeTB76/rvaw=";
+    hash = "sha256-SuCqDZDXmWdGI/GN+3nYcUk66jnW5FQQaeTB76/rvaw=";
   };
 
   nativeBuildInputs = [ llvmPackages_12.llvm cargo ];
   propagatedBuildDeps = [ llvmPackages_12.libllvm ];
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
 
   buildPhase = ''
     runHook preBuild
diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix
index 3d0a9d8a78744..589f03c68858e 100644
--- a/pkgs/development/libraries/thrift/default.nix
+++ b/pkgs/development/libraries/thrift/default.nix
@@ -32,6 +32,8 @@ stdenv.mkDerivation rec {
     cmake
     flex
     pkg-config
+    python3
+    python3.pkgs.setuptools
   ];
 
   buildInputs = [
@@ -54,6 +56,11 @@ stdenv.mkDerivation rec {
       --replace "'FastbinaryTest.py'," "" \
       --replace "'TestEof.py'," "" \
       --replace "'TestFrozen.py'," ""
+
+    # these functions are removed in Python3.12
+    substituteInPlace test/py/SerializationTest.py \
+      --replace-fail "assertEquals" "assertEqual" \
+      --replace-fail "assertNotEquals" "assertNotEqual"
   '';
 
   preConfigure = ''
@@ -96,7 +103,7 @@ stdenv.mkDerivation rec {
   disabledTests = [
     "PythonTestSSLSocket"
     "PythonThriftTNonblockingServer"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # Tests that hang up in the Darwin sandbox
     "SecurityTest"
     "SecurityFromBufferTest"
@@ -122,7 +129,7 @@ stdenv.mkDerivation rec {
   checkPhase = ''
     runHook preCheck
 
-    ${lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH=$PWD/lib ctest -E "($(echo "$disabledTests" | tr " " "|"))"
+    ${lib.optionalString stdenv.hostPlatform.isDarwin "DY"}LD_LIBRARY_PATH=$PWD/lib ctest -E "($(echo "$disabledTests" | tr " " "|"))"
 
     runHook postCheck
   '';
diff --git a/pkgs/development/libraries/ti-rpc/default.nix b/pkgs/development/libraries/ti-rpc/default.nix
index 9f22ae65d28cd..1a1cf14c9ea88 100644
--- a/pkgs/development/libraries/ti-rpc/default.nix
+++ b/pkgs/development/libraries/ti-rpc/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libtirpc";
-  version = "1.3.4";
+  version = "1.3.5";
 
   src = fetchurl {
     url = "http://git.linux-nfs.org/?p=steved/libtirpc.git;a=snapshot;h=refs/tags/libtirpc-${lib.replaceStrings ["."] ["-"] version};sf=tgz";
-    sha256 = "sha256-fmZxpdyl98z+QBHpEccGB8A+YktuWONw6k0p06AImDw=";
+    hash = "sha256-bq2zfqfMJsJ6gezLCUTlNiRXJhFxFslY4iW+4kpOPVE=";
     name = "${pname}-${version}.tar.gz";
   };
 
diff --git a/pkgs/development/libraries/tiledb/default.nix b/pkgs/development/libraries/tiledb/default.nix
index 28b14d3a8a5be..9b834c3a7e586 100644
--- a/pkgs/development/libraries/tiledb/default.nix
+++ b/pkgs/development/libraries/tiledb/default.nix
@@ -108,7 +108,7 @@ stdenv.mkDerivation rec {
 
   installTargets = [ "install-tiledb" "doc" ];
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -add_rpath ${tbb}/lib $out/lib/libtiledb.dylib
   '';
 
diff --git a/pkgs/development/libraries/tinyxml/2.6.2.nix b/pkgs/development/libraries/tinyxml/2.6.2.nix
index ded5013cca99a..456fd7fe2dd90 100644
--- a/pkgs/development/libraries/tinyxml/2.6.2.nix
+++ b/pkgs/development/libraries/tinyxml/2.6.2.nix
@@ -39,7 +39,7 @@ in stdenv.mkDerivation {
   hardeningDisable = [ "format" ];
 
   env.NIX_CFLAGS_COMPILE =
-    lib.optionalString stdenv.isDarwin "-mmacosx-version-min=10.9";
+    lib.optionalString stdenv.hostPlatform.isDarwin "-mmacosx-version-min=10.9";
 
   nativeBuildInputs = [ unzip ];
   buildPhase = ''
@@ -78,7 +78,7 @@ in stdenv.mkDerivation {
     cp -v tinyxml.pc $out/lib/pkgconfig/
 
     cp -v docs/* $out/share/doc/tinyxml/
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     install_name_tool -id $out/lib/libtinyxml.dylib $out/lib/libtinyxml.dylib
   '';
 
diff --git a/pkgs/development/libraries/tix/default.nix b/pkgs/development/libraries/tix/default.nix
index 0a6adbb5882a0..67cee0140de04 100644
--- a/pkgs/development/libraries/tix/default.nix
+++ b/pkgs/development/libraries/tix/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , fetchurl
 , fetchpatch
 , tcl
diff --git a/pkgs/development/libraries/tk/8.5.nix b/pkgs/development/libraries/tk/8.5.nix
index afd575915f852..ad0013060ff63 100644
--- a/pkgs/development/libraries/tk/8.5.nix
+++ b/pkgs/development/libraries/tk/8.5.nix
@@ -14,7 +14,7 @@ callPackage ./generic.nix (args // {
     sha256 = "1yhgcalldrjlc5q614rlzg1crgd3b52dhrk1pncdaxvl2vgg2yj0";
   };
 
-  patches = lib.optionals stdenv.isDarwin [
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
     # Define MODULE_SCOPE before including tkPort.h
     # https://core.tcl-lang.org/tk/info/dba9f5ce3b
     (fetchpatch {
diff --git a/pkgs/development/libraries/tk/8.6.nix b/pkgs/development/libraries/tk/8.6.nix
index c5317a8545dd5..c8f4efa7f7aca 100644
--- a/pkgs/development/libraries/tk/8.6.nix
+++ b/pkgs/development/libraries/tk/8.6.nix
@@ -1,6 +1,4 @@
-{ lib
-, stdenv
-, callPackage
+{ callPackage
 , fetchurl
 , tcl
 , ...
diff --git a/pkgs/development/libraries/tk/generic.nix b/pkgs/development/libraries/tk/generic.nix
index 540f5d5d7e367..232ae01abbfd9 100644
--- a/pkgs/development/libraries/tk/generic.nix
+++ b/pkgs/development/libraries/tk/generic.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, src, pkg-config, tcl, libXft, patches ? []
-, enableAqua ? stdenv.isDarwin, darwin
+, enableAqua ? stdenv.hostPlatform.isDarwin, darwin
 , ... }:
 
 tcl.mkTclDerivation {
@@ -22,7 +22,7 @@ tcl.mkTclDerivation {
       substituteInPlace $file --replace "exec wish" "exec $out/bin/wish"
     done
   ''
-  + lib.optionalString (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") ''
+  + lib.optionalString (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") ''
     substituteInPlace unix/configure* \
       --replace " -framework UniformTypeIdentifiers" ""
   '';
@@ -32,13 +32,13 @@ tcl.mkTclDerivation {
     cp ../{unix,generic}/*.h $out/include
     ln -s $out/lib/libtk${tcl.release}${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libtk${stdenv.hostPlatform.extensions.sharedLibrary}
   ''
-  + lib.optionalString (stdenv.isDarwin) ''
+  + lib.optionalString (stdenv.hostPlatform.isDarwin) ''
     cp ../macosx/*.h $out/include
   '';
 
   configureFlags = [
     "--enable-threads"
-  ] ++ lib.optional stdenv.is64bit "--enable-64bit"
+  ] ++ lib.optional stdenv.hostPlatform.is64bit "--enable-64bit"
     ++ lib.optional enableAqua "--enable-aqua";
 
   nativeBuildInputs = [ pkg-config ];
@@ -69,6 +69,6 @@ tcl.mkTclDerivation {
     homepage = "https://www.tcl.tk/";
     license = licenses.tcltk;
     platforms = platforms.all;
-    maintainers = with maintainers; [ lovek323 vrthra ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/tkimg/default.nix b/pkgs/development/libraries/tkimg/default.nix
index 8b66e195d5a5e..f058585d3ad95 100644
--- a/pkgs/development/libraries/tkimg/default.nix
+++ b/pkgs/development/libraries/tkimg/default.nix
@@ -16,7 +16,7 @@ tcl.mkTclDerivation rec {
     "--with-tkinclude=${tk.dev}/include"
   ];
 
-  buildInputs = [ xorg.libX11 tcllib ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+  buildInputs = [ xorg.libX11 tcllib ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     Cocoa
   ]);
 
diff --git a/pkgs/development/libraries/tl-expected/default.nix b/pkgs/development/libraries/tl-expected/default.nix
index 68550b5ab4743..078ae201ea2a2 100644
--- a/pkgs/development/libraries/tl-expected/default.nix
+++ b/pkgs/development/libraries/tl-expected/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
     homepage = "https://tl.tartanllama.xyz/en/latest/api/expected.html";
     license = licenses.cc0;
     platforms = platforms.all;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/tllist/default.nix b/pkgs/development/libraries/tllist/default.nix
deleted file mode 100644
index 62bcbf0241f3b..0000000000000
--- a/pkgs/development/libraries/tllist/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitea
-, meson
-, ninja
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "tllist";
-  version = "1.1.0";
-
-  src = fetchFromGitea {
-    domain = "codeberg.org";
-    owner = "dnkl";
-    repo = "tllist";
-    rev = finalAttrs.version;
-    hash = "sha256-4WW0jGavdFO3LX9wtMPzz3Z1APCPgUQOktpmwAM0SQw=";
-  };
-
-  nativeBuildInputs = [ meson ninja ];
-
-  mesonBuildType = "release";
-
-  doCheck = true;
-
-  meta = with lib; {
-    homepage = "https://codeberg.org/dnkl/tllist";
-    changelog = "https://codeberg.org/dnkl/tllist/releases/tag/${finalAttrs.version}";
-    description = "C header file only implementation of a typed linked list";
-    longDescription = ''
-      Most C implementations of linked list are untyped. That is, their data
-      carriers are typically void *. This is error prone since your compiler
-      will not be able to help you correct your mistakes (oh, was it a
-      pointer-to-a-pointer... I thought it was just a pointer...).
-
-      tllist addresses this by using pre-processor macros to implement dynamic
-      types, where the data carrier is typed to whatever you want; both
-      primitive data types are supported as well as aggregated ones such as
-      structs, enums and unions.
-    '';
-    license = licenses.mit;
-    maintainers = with maintainers; [ fionera AndersonTorres ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/toml-f/default.nix b/pkgs/development/libraries/toml-f/default.nix
index 3f95d5682f9e0..30632e1160db8 100644
--- a/pkgs/development/libraries/toml-f/default.nix
+++ b/pkgs/development/libraries/toml-f/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
 
   # tftest-build fails on aarch64-linux
-  doCheck = !stdenv.isAarch64;
+  doCheck = !stdenv.hostPlatform.isAarch64;
 
   meta = with lib; {
     description = "TOML parser implementation for data serialization and deserialization in Fortran";
diff --git a/pkgs/development/libraries/toml11/default.nix b/pkgs/development/libraries/toml11/default.nix
deleted file mode 100644
index 2747dd4ee3999..0000000000000
--- a/pkgs/development/libraries/toml11/default.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "toml11";
-  version = "3.7.1";
-
-  src = fetchFromGitHub {
-    owner = "ToruNiina";
-    repo = "toml11";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-HnhXBvIjo1JXhp+hUQvjs83t5IBVbNN6o3ZGhB4WESQ=";
-  };
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/ToruNiina/toml11";
-    description = "TOML for Modern C++";
-    longDescription = ''
-      toml11 is a C++11 (or later) header-only toml parser/encoder depending
-      only on C++ standard library.
-
-      - It is compatible to the latest version of TOML v1.0.0.
-      - It is one of the most TOML standard compliant libraries, tested with
-        the language agnostic test suite for TOML parsers by BurntSushi.
-      - It shows highly informative error messages.
-      - It has configurable container. You can use any random-access containers
-        and key-value maps as backend containers.
-      - It optionally preserves comments without any overhead.
-      - It has configurable serializer that supports comments, inline tables,
-        literal strings and multiline strings.
-      - It supports user-defined type conversion from/into toml values.
-      - It correctly handles UTF-8 sequences, with or without BOM, both on posix
-        and Windows.
-    '';
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix ++ platforms.windows;
-  };
-})
-# TODO [ AndersonTorres ]: tests
diff --git a/pkgs/development/libraries/tomlc99/default.nix b/pkgs/development/libraries/tomlc99/default.nix
deleted file mode 100644
index 5ed4fd07b4720..0000000000000
--- a/pkgs/development/libraries/tomlc99/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-}:
-
-stdenv.mkDerivation rec {
-  pname = "tomlc99";
-  version = "0.pre+date=2022-04-04";
-
-  src = fetchFromGitHub {
-    owner = "cktan";
-    repo = pname;
-    rev = "4e7b082ccc44316f212597ae5b09a35cf9329e69";
-    hash = "sha256-R9OBMG/aUa80Qw/zqaks63F9ybQcThfOYRsHP4t1Gv8=";
-  };
-
-  dontConfigure = true;
-
-  installFlags = [
-    "prefix=${placeholder "out"}"
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/cktan/tomlc99";
-    description = "TOML v1.0.0-compliant library written in C99";
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = with platforms; unix;
-  };
-}
diff --git a/pkgs/development/libraries/tomlcpp/default.nix b/pkgs/development/libraries/tomlcpp/default.nix
deleted file mode 100644
index f782719f2b637..0000000000000
--- a/pkgs/development/libraries/tomlcpp/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, stdenv, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "tomlcpp";
-  version = "0.pre+date=2022-06-25";
-
-  src = fetchFromGitHub {
-    owner = "cktan";
-    repo = pname;
-    rev = "4212f1fccf530e276a2e1b63d3f99fbfb84e86a4";
-    hash = "sha256-PM3gURXhyTZr59BWuLHvltjKOlKUSBT9/rqTeX5V//k=";
-  };
-
-  dontConfigure = true;
-
-  installFlags = [
-    "prefix=${placeholder "out"}"
-  ];
-
-  meta = with lib;{
-    homepage = "https://github.com/cktan/tomlcpp";
-    description = "No fanfare TOML C++ Library";
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = with platforms; unix;
-  };
-}
diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix
index b28d031be83ad..34b37d1c74a1f 100644
--- a/pkgs/development/libraries/tpm2-tss/default.nix
+++ b/pkgs/development/libraries/tpm2-tss/default.nix
@@ -2,7 +2,7 @@
 , autoreconfHook, autoconf-archive, pkg-config, doxygen, perl
 , openssl, json_c, curl, libgcrypt
 , cmocka, uthash, ibm-sw-tpm2, iproute2, procps, which
-, shadow, libuuid
+, libuuid
 }:
 let
   # Avoid a circular dependency on Linux systems (systemd depends on tpm2-tss,
@@ -10,7 +10,7 @@ let
   # needs to be conditional based on isLinux because procps for other systems
   # might not support the withSystemd option.
   procpsWithoutSystemd = procps.override { withSystemd = false; };
-  procps_pkg = if stdenv.isLinux then procpsWithoutSystemd else procps;
+  procps_pkg = if stdenv.hostPlatform.isLinux then procpsWithoutSystemd else procps;
 in
 
 stdenv.mkDerivation rec {
@@ -28,7 +28,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoreconfHook autoconf-archive pkg-config doxygen perl
-    shadow
   ];
 
   buildInputs = [
@@ -53,6 +52,17 @@ stdenv.mkDerivation rec {
     # Do not rely on dynamic loader path
     # TCTI loader relies on dlopen(), this patch prefixes all calls with the output directory
     ./no-dynamic-loader-path.patch
+
+    # Configure script expects tools from shadow (e.g. useradd) but they are
+    # actually optional (and we can’t use them in Nix sandbox anyway). Make the
+    # check in configure.ac a warning instead of an error so that we can run
+    # configure phase on platforms that don’t have shadow package (e.g. macOS).
+    # Note that *on platforms* does not mean *for platform* i.e. this is for
+    # cross-compilation, tpm2-tss does not support macOS, see upstream issue:
+    # https://github.com/tpm2-software/tpm2-tss/issues/2629
+    # See also
+    # https://github.com/tpm2-software/tpm2-tss/blob/6c46325b466f35d40c2ed1043bfdfcfb8a367a34/Makefile.am#L880-L898
+    ./no-shadow.patch
   ];
 
   postPatch = ''
diff --git a/pkgs/development/libraries/tpm2-tss/no-shadow.patch b/pkgs/development/libraries/tpm2-tss/no-shadow.patch
new file mode 100644
index 0000000000000..a42bf06771d0c
--- /dev/null
+++ b/pkgs/development/libraries/tpm2-tss/no-shadow.patch
@@ -0,0 +1,16 @@
+diff --git a/configure.ac b/configure.ac
+index e2d579b8..0eac4ff3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -672,9 +672,9 @@ AS_IF([test "$HOSTOS" = "Linux" && test "x$systemd_sysusers" != "xyes"],
+       AC_CHECK_PROG(adduser, adduser, yes)
+       AC_CHECK_PROG(addgroup, addgroup, yes)
+       AS_IF([test "x$addgroup" != "xyes" && test "x$groupadd" != "xyes" ],
+-         [AC_MSG_ERROR([addgroup or groupadd are needed.])])
++         [AC_MSG_WARN([addgroup or groupadd are needed.])])
+       AS_IF([test "x$adduser" != "xyes" && test "x$useradd" != "xyes" ],
+-         [AC_MSG_ERROR([adduser or useradd are needed.])])])
++         [AC_MSG_WARN([adduser or useradd are needed.])])])
+ 
+ AC_SUBST([PATH])
+ 
diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix
index da5274e0b7dfe..d75bbdd542fe6 100644
--- a/pkgs/development/libraries/tracker/default.nix
+++ b/pkgs/development/libraries/tracker/default.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
     avahi
     libstemmer
     dbus
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     systemd
   ];
 
@@ -103,15 +103,15 @@ stdenv.mkDerivation (finalAttrs: {
     [
       "--cross-file=${crossFile}"
     ]
-  ) ++ lib.optionals (!stdenv.isLinux) [
+  ) ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     "-Dsystemd_user_services=false"
   ];
 
   doCheck =
     # https://gitlab.gnome.org/GNOME/tracker/-/issues/402
-    !stdenv.isDarwin
+    !stdenv.hostPlatform.isDarwin
     # https://gitlab.gnome.org/GNOME/tracker/-/issues/398
-    && !stdenv.is32bit;
+    && !stdenv.hostPlatform.is32bit;
 
   postPatch = ''
     chmod +x \
@@ -125,8 +125,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   preCheck =
     let
-      linuxDot0 = lib.optionalString stdenv.isLinux ".0";
-      darwinDot0 = lib.optionalString stdenv.isDarwin ".0";
+      linuxDot0 = lib.optionalString stdenv.hostPlatform.isLinux ".0";
+      darwinDot0 = lib.optionalString stdenv.hostPlatform.isDarwin ".0";
       extension = stdenv.hostPlatform.extensions.sharedLibrary;
     in
     ''
diff --git a/pkgs/development/libraries/tremor/default.nix b/pkgs/development/libraries/tremor/default.nix
index d17ef6c8fd7ce..0477b6ca6d116 100644
--- a/pkgs/development/libraries/tremor/default.nix
+++ b/pkgs/development/libraries/tremor/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
 
   outputs = [ "out" "dev" ];
 
+  configureFlags = lib.optional (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17") "LDFLAGS=-Wl,--undefined-version";
+
   nativeBuildInputs = [ autoreconfHook pkg-config ];
   propagatedBuildInputs = [ libogg ];
 
diff --git a/pkgs/development/libraries/trompeloeil/default.nix b/pkgs/development/libraries/trompeloeil/default.nix
index 1a2ec33dae5f9..09c7ff795d3d7 100644
--- a/pkgs/development/libraries/trompeloeil/default.nix
+++ b/pkgs/development/libraries/trompeloeil/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "trompeloeil";
-  version = "47";
+  version = "48";
 
   src = fetchFromGitHub {
     owner = "rollbear";
     repo = "trompeloeil";
     rev = "v${version}";
-    sha256 = "sha256-eVMlepthJuy9BQnR2u8PFSfuWNg8QxDOJyV5qzcztOE=";
+    sha256 = "sha256-7MXMbqksHqcyvwJsW8+wPWfnKTbQhUlGa4GcidpiBFw=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/twolame/default.nix b/pkgs/development/libraries/twolame/default.nix
deleted file mode 100644
index eba2fdfe81c5c..0000000000000
--- a/pkgs/development/libraries/twolame/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, stdenv, fetchFromGitHub
-, autoreconfHook, pkg-config
-, libsndfile }:
-
-stdenv.mkDerivation {
-
-  pname = "twolame";
-  version = "2017-09-27";
-
-  src = fetchFromGitHub {
-    owner = "njh";
-    repo = "twolame";
-    rev = "977c8ac55d8ca6d5f35d1d413a119dac2b3b0333";
-    sha256 = "1rq3yc8ygzdqid9zk6pixmm4w9sk2vrlx217lhn5bjaglv7iyf7x";
-  };
-
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libsndfile ];
-
-  doCheck = false; # fails with "../build-scripts/test-driver: line 107: -Mstrict: command not found"
-
-  meta = with lib;{
-    description = "MP2 encoder";
-    mainProgram = "twolame";
-    longDescription = ''
-      TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on
-      tooLAME by Mike Cheng, which in turn is based upon the ISO dist10
-      code and portions of LAME.
-    '';
-    homepage = "https://www.twolame.org/";
-    license = with licenses; [ lgpl2Plus ];
-    platforms = with platforms; unix;
-    maintainers = with maintainers; [ AndersonTorres ];
-  };
-}
diff --git a/pkgs/development/libraries/ubus/default.nix b/pkgs/development/libraries/ubus/default.nix
index 662ec1c7b0350..dede0e55657af 100644
--- a/pkgs/development/libraries/ubus/default.nix
+++ b/pkgs/development/libraries/ubus/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   buildInputs = [ libubox libjson ];
   nativeBuildInputs = [ cmake ];
 
-  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
     "-Wno-error=gnu-folding-constant"
   ]);
 
diff --git a/pkgs/development/libraries/uclient/default.nix b/pkgs/development/libraries/uclient/default.nix
index 7206b6ad98fcd..f758c00810edb 100644
--- a/pkgs/development/libraries/uclient/default.nix
+++ b/pkgs/development/libraries/uclient/default.nix
@@ -26,6 +26,6 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ mkg20001 ];
     mainProgram = "uclient-fetch";
     platforms = platforms.all;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/ucommon/default.nix b/pkgs/development/libraries/ucommon/default.nix
index 09e6e2d6a03ca..4ee7a90dd3108 100644
--- a/pkgs/development/libraries/ucommon/default.nix
+++ b/pkgs/development/libraries/ucommon/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     description = "C++ library to facilitate using C++ design patterns";
     homepage = "https://www.gnu.org/software/commoncpp/";
     license = lib.licenses.lgpl3Plus;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = [ ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/ucx/default.nix b/pkgs/development/libraries/ucx/default.nix
index 464ea6e374c37..8f134cd594e3c 100644
--- a/pkgs/development/libraries/ucx/default.nix
+++ b/pkgs/development/libraries/ucx/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
 
   LDFLAGS = lib.optionals enableCuda [
     # Fake libnvidia-ml.so (the real one is deployed impurely)
-    "-L${cudaPackages.cuda_nvml_dev}/lib/stubs"
+    "-L${lib.getLib cudaPackages.cuda_nvml_dev}/lib/stubs"
   ];
 
   configureFlags = [
diff --git a/pkgs/development/libraries/udns/default.nix b/pkgs/development/libraries/udns/default.nix
index 27b60937752c5..5dad256063b40 100644
--- a/pkgs/development/libraries/udns/default.nix
+++ b/pkgs/development/libraries/udns/default.nix
@@ -1,11 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 # this expression is mostly based on debian's packaging
-# https://tracker.debian.org/media/packages/u/udns/rules-0.5-1
+# https://tracker.debian.org/media/packages/u/udns/rules-0.6-1
 
 stdenv.mkDerivation rec {
   pname = "udns";
-  version = "0.5";
+  version = "0.6";
 
   configurePhase = "./configure --enable-ipv6";
 
@@ -13,13 +13,13 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://www.corpit.ru/mjt/udns/${pname}-${version}.tar.gz";
-    sha256 = "sha256-A1v8EuOBnQq6j0DugiCpdLfpspwyWdMQlwzEstHCA8A=";
+    sha256 = "sha256-aWotDVGNqYXZdaZeEdFm8/V829HUI3aguFMH9JYBxug=";
   };
 
   # udns uses a very custom build and hardcodes a .so name in a few places.
   # Instead of fighting with it to apply the standard dylib script, change
   # the right place in the Makefile itself.
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile.in \
       --replace --soname, -install_name,$out/lib/
   '';
diff --git a/pkgs/development/libraries/udunits/default.nix b/pkgs/development/libraries/udunits/default.nix
deleted file mode 100644
index 48ffb94175f98..0000000000000
--- a/pkgs/development/libraries/udunits/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, bison
-, expat
-, file
-, flex
-, texinfo
-}:
-
-stdenv.mkDerivation rec {
-  pname = "udunits";
-  version = "unstable-2021-03-17";
-
-  src = fetchFromGitHub {
-    owner = "Unidata";
-    repo = "UDUNITS-2";
-    rev = "c83da987387db1174cd2266b73dd5dd556f4476b";
-    hash = "sha256-+HW21+r65OroCxMK2/B5fe7zHs4hD4xyoJK2bhdJGyQ=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    texinfo
-    bison
-    flex
-    file
-  ];
-  buildInputs = [
-    expat
-  ];
-
-  meta = with lib; {
-    homepage = "https://www.unidata.ucar.edu/software/udunits/";
-    description = "C-based package for the programatic handling of units of physical quantities";
-    longDescription = ''
-      The UDUNITS package supports units of physical quantities. Its C library
-      provides for arithmetic manipulation of units and for conversion of
-      numeric values between compatible units. The package contains an extensive
-      unit database, which is in XML format and user-extendable. The package
-      also contains a command-line utility for investigating units and
-      converting values.
-    '';
-    license = licenses.asl20;
-    maintainers = with maintainers; [ AndersonTorres pSub ];
-    platforms = platforms.all;
-    mainProgram = "udunits2";
-  };
-}
diff --git a/pkgs/development/libraries/uhttpmock/default.nix b/pkgs/development/libraries/uhttpmock/default.nix
index d22ff81c2530a..710979057d439 100644
--- a/pkgs/development/libraries/uhttpmock/default.nix
+++ b/pkgs/development/libraries/uhttpmock/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     description = "Project for mocking web service APIs which use HTTP or HTTPS";
     homepage = "https://gitlab.freedesktop.org/pwithnall/uhttpmock/";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/umockdev/default.nix b/pkgs/development/libraries/umockdev/default.nix
index b7926eecb4f24..38b36267ef34c 100644
--- a/pkgs/development/libraries/umockdev/default.nix
+++ b/pkgs/development/libraries/umockdev/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "umockdev";
-  version = "0.18.2";
+  version = "0.18.3";
 
   outputs = [ "bin" "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "https://github.com/martinpitt/umockdev/releases/download/${finalAttrs.version}/umockdev-${finalAttrs.version}.tar.xz";
-    hash = "sha256-1HKV6IA8bWfgdgMcIlgeP470aIAj1I925ed2qM7IkHM=";
+    hash = "sha256-q6lcMjA3yELxYXkxJgIxuFV9EZqiiRy8qLgR/MVZKUo=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/unicorn/default.nix b/pkgs/development/libraries/unicorn/default.nix
index b6a91a7367a47..93fc0531ccd99 100644
--- a/pkgs/development/libraries/unicorn/default.nix
+++ b/pkgs/development/libraries/unicorn/default.nix
@@ -1,38 +1,39 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, pkg-config
-, cmake
-, IOKit
-, cctools
+{
+  lib,
+  stdenv,
+  cctools,
+  cmake,
+  fetchFromGitHub,
+  IOKit,
+  pkg-config,
 }:
 
 stdenv.mkDerivation rec {
   pname = "unicorn";
-  version = "2.0.1.post1";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner = "unicorn-engine";
-    repo = pname;
-    rev = version;
-    hash = "sha256-Jz5C35rwnDz0CXcfcvWjkwScGNQO1uijF7JrtZhM7mI=";
+    repo = "unicorn";
+    rev = "refs/tags/${version}";
+    hash = "sha256-ZlQ2WVTToT0OMxK6brsHnchxDwAR5n1wdtZtkTTgWV4=";
   };
 
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-  ] ++ lib.optionals stdenv.isDarwin [
-    cctools
-  ];
+  nativeBuildInputs =
+    [
+      cmake
+      pkg-config
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      cctools
+    ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
-    IOKit
-  ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ IOKit ];
 
   # Ensure the linker is using atomic when compiling for RISC-V, otherwise fails
   NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isRiscV "-latomic";
 
-  cmakeFlags = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+  cmakeFlags = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
     # Some x86 tests are interrupted by signal 10
     "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;test_x86"
   ];
@@ -44,6 +45,9 @@ stdenv.mkDerivation rec {
     homepage = "https://www.unicorn-engine.org";
     license = licenses.gpl2Only;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ thoughtpolice luc65r ];
+    maintainers = with maintainers; [
+      thoughtpolice
+      luc65r
+    ];
   };
 }
diff --git a/pkgs/development/libraries/unittest-cpp/default.nix b/pkgs/development/libraries/unittest-cpp/default.nix
index 6a6407eb32ff0..04d33b66e5a99 100644
--- a/pkgs/development/libraries/unittest-cpp/default.nix
+++ b/pkgs/development/libraries/unittest-cpp/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/unittest-cpp/unittest-cpp";
     description = "Lightweight unit testing framework for C++";
     license = lib.licenses.mit;
-    maintainers = [];
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/unixODBCDrivers/default.nix b/pkgs/development/libraries/unixODBCDrivers/default.nix
index 7e4a8b4f6cced..bd27a36d663a6 100644
--- a/pkgs/development/libraries/unixODBCDrivers/default.nix
+++ b/pkgs/development/libraries/unixODBCDrivers/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, unixODBC, cmake, postgresql, mariadb, sqlite, zlib, libxml2, dpkg, lib, openssl, libkrb5, libuuid, patchelf, libiconv, fixDarwinDylibNames, fetchFromGitHub }:
+{ fetchurl, stdenv, unixODBC, cmake, mariadb, sqlite, zlib, libxml2, dpkg, lib, openssl, libkrb5, libuuid, patchelf, libiconv, fixDarwinDylibNames, fetchFromGitHub, psqlodbc }:
 
 # Each of these ODBC drivers can be configured in your odbcinst.ini file using
 # the various passthru and meta values. Of note are:
@@ -16,30 +16,7 @@
 # ''
 
 {
-  psql = stdenv.mkDerivation rec {
-    pname = "psqlodbc";
-    version = "10.01.0000";
-
-    src = fetchurl {
-      url = "mirror://postgresql/odbc/versions/src/${pname}-${version}.tar.gz";
-      sha256 = "1cyams7157f3gry86x64xrplqi2vyqrq3rqka59gv4lb4rpl7jl7";
-    };
-
-    buildInputs = [ unixODBC postgresql ];
-
-    # see the top of the file for an explanation
-    passthru = {
-      fancyName = "PostgreSQL";
-      driver = "lib/psqlodbcw.so";
-    };
-
-    meta = with lib; {
-      description = "Official PostgreSQL ODBC Driver";
-      homepage = "https://odbc.postgresql.org/";
-      license = licenses.lgpl2;
-      platforms = platforms.unix;
-    };
-  };
+  psql = psqlodbc.override { withUnixODBC = true; withLibiodbc = false; };
 
   mariadb = stdenv.mkDerivation rec {
     pname = "mariadb-connector-odbc";
@@ -62,7 +39,7 @@
 
     nativeBuildInputs = [ cmake ];
     buildInputs = [ unixODBC openssl libiconv zlib ]
-      ++ lib.optionals stdenv.isDarwin [ libkrb5 ];
+      ++ lib.optionals stdenv.hostPlatform.isDarwin [ libkrb5 ];
 
     cmakeFlags = [
       "-DWITH_EXTERNAL_ZLIB=ON"
@@ -73,9 +50,9 @@
       "-DWITH_IODBC=OFF"
     ];
 
-    buildFlags = if stdenv.isDarwin then [ "maodbc" ] else null;
+    buildFlags = if stdenv.hostPlatform.isDarwin then [ "maodbc" ] else null;
 
-    installTargets = if stdenv.isDarwin then [ "install/fast" ] else null;
+    installTargets = if stdenv.hostPlatform.isDarwin then [ "install/fast" ] else null;
 
     # see the top of the file for an explanation
     passthru = {
@@ -193,7 +170,7 @@
     };
 
     meta = with lib; {
-      broken = stdenv.isDarwin;
+      broken = stdenv.hostPlatform.isDarwin;
       description = "ODBC Driver ${versionMajor} for SQL Server";
       homepage = "https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017";
       sourceProvenance = with sourceTypes; [ binaryNativeCode ];
@@ -210,14 +187,14 @@
     versionMajor = "18";
     versionMinor = "1";
     versionAdditional = "1.1";
-    versionSuffix = lib.optionalString stdenv.isLinux "-1";
+    versionSuffix = lib.optionalString stdenv.hostPlatform.isLinux "-1";
 
     src = fetchurl {
       url = {
-        x86_64-linux = "https://packages.microsoft.com/debian/11/prod/pool/main/m/${finalAttrs.pname}/${finalAttrs.pname}_${finalAttrs.version}_amd64.deb";
-        aarch64-linux = "https://packages.microsoft.com/debian/11/prod/pool/main/m/${finalAttrs.pname}/${finalAttrs.pname}_${finalAttrs.version}_arm64.deb";
-        x86_64-darwin = "https://download.microsoft.com/download/6/4/0/64006503-51e3-44f0-a6cd-a9b757d0d61b/${finalAttrs.pname}-${finalAttrs.version}-amd64.tar.gz";
-        aarch64-darwin = "https://download.microsoft.com/download/6/4/0/64006503-51e3-44f0-a6cd-a9b757d0d61b/${finalAttrs.pname}-${finalAttrs.version}-arm64.tar.gz";
+        x86_64-linux = "https://packages.microsoft.com/debian/11/prod/pool/main/m/msodbcsql${finalAttrs.versionMajor}/msodbcsql${finalAttrs.versionMajor}_${finalAttrs.version}_amd64.deb";
+        aarch64-linux = "https://packages.microsoft.com/debian/11/prod/pool/main/m/msodbcsql${finalAttrs.versionMajor}/msodbcsql${finalAttrs.versionMajor}_${finalAttrs.version}_arm64.deb";
+        x86_64-darwin = "https://download.microsoft.com/download/6/4/0/64006503-51e3-44f0-a6cd-a9b757d0d61b/msodbcsql${finalAttrs.versionMajor}-${finalAttrs.version}-amd64.tar.gz";
+        aarch64-darwin = "https://download.microsoft.com/download/6/4/0/64006503-51e3-44f0-a6cd-a9b757d0d61b/msodbcsql${finalAttrs.versionMajor}-${finalAttrs.version}-arm64.tar.gz";
       }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
       hash = {
         x86_64-linux = "sha256:1f0rmh1aynf1sqmjclbsyh2wz5jby0fixrwz71zp6impxpwvil52";
@@ -228,7 +205,7 @@
     };
 
     nativeBuildInputs =
-      if stdenv.isDarwin
+      if stdenv.hostPlatform.isDarwin
       then
         [
           # Fix up the names encoded into the dylib, and make them absolute.
@@ -240,12 +217,12 @@
           patchelf
         ];
 
-    unpackPhase = lib.optionalString stdenv.isLinux ''
+    unpackPhase = lib.optionalString stdenv.hostPlatform.isLinux ''
       dpkg -x $src ./
     '';
 
     installPhase =
-      if stdenv.isDarwin
+      if stdenv.hostPlatform.isDarwin
       then
         ''
           mkdir -p $out
@@ -259,14 +236,14 @@
         '';
 
     # Replace the hard-coded paths in the dylib with nixpkgs equivalents.
-    fixupPhase = lib.optionalString stdenv.isDarwin ''
+    fixupPhase = lib.optionalString stdenv.hostPlatform.isDarwin ''
       ${stdenv.cc.bintools.targetPrefix}install_name_tool \
         -change /usr/lib/libiconv.2.dylib ${libiconv}/lib/libiconv.2.dylib \
         -change /opt/homebrew/lib/libodbcinst.2.dylib ${unixODBC}/lib/libodbcinst.2.dylib \
         $out/${finalAttrs.passthru.driver}
     '';
 
-    postFixup = lib.optionalString stdenv.isLinux ''
+    postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
       patchelf --set-rpath ${lib.makeLibraryPath [ unixODBC openssl libkrb5 libuuid stdenv.cc.cc ]} \
         $out/${finalAttrs.passthru.driver}
     '';
@@ -274,7 +251,7 @@
     # see the top of the file for an explanation
     passthru = {
       fancyName = "ODBC Driver ${finalAttrs.versionMajor} for SQL Server";
-      driver = "lib/libmsodbcsql${if stdenv.isDarwin then ".${finalAttrs.versionMajor}.dylib" else "-${finalAttrs.versionMajor}.${finalAttrs.versionMinor}.so.${finalAttrs.versionAdditional}"}";
+      driver = "lib/libmsodbcsql${if stdenv.hostPlatform.isDarwin then ".${finalAttrs.versionMajor}.dylib" else "-${finalAttrs.versionMajor}.${finalAttrs.versionMinor}.so.${finalAttrs.versionAdditional}"}";
     };
 
     meta = with lib; {
@@ -323,7 +300,7 @@
     };
 
     meta = with lib; {
-      broken = stdenv.isDarwin;
+      broken = stdenv.hostPlatform.isDarwin;
       description = "Amazon Redshift ODBC driver";
       homepage = "https://docs.aws.amazon.com/redshift/latest/mgmt/configure-odbc-connection.html";
       sourceProvenance = with sourceTypes; [ binaryNativeCode ];
diff --git a/pkgs/development/libraries/usbredir/default.nix b/pkgs/development/libraries/usbredir/default.nix
index e4a8c7628bc8b..55feb41bec8a4 100644
--- a/pkgs/development/libraries/usbredir/default.nix
+++ b/pkgs/development/libraries/usbredir/default.nix
@@ -1,6 +1,5 @@
 { lib
 , stdenv
-, cmake
 , fetchFromGitLab
 , pkg-config
 , meson
diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix
index 9320fe34bb64a..b6b2d4e6298f8 100644
--- a/pkgs/development/libraries/v8/default.nix
+++ b/pkgs/development/libraries/v8/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchgit
 , gn, ninja, python3, glib, pkg-config, icu
-, xcbuild, darwin
+, xcbuild
 , fetchpatch
 , llvmPackages
 , symlinkJoin
@@ -101,11 +101,11 @@ stdenv.mkDerivation rec {
   '';
 
   postPatch = ''
-    ${lib.optionalString stdenv.isAarch64 ''
+    ${lib.optionalString stdenv.hostPlatform.isAarch64 ''
       substituteInPlace build/toolchain/linux/BUILD.gn \
         --replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
     ''}
-    ${lib.optionalString stdenv.isDarwin ''
+    ${lib.optionalString stdenv.hostPlatform.isDarwin ''
       substituteInPlace build/config/compiler/compiler.gni \
         --replace 'strip_absolute_paths_from_debug_symbols = true' \
                   'strip_absolute_paths_from_debug_symbols = false'
@@ -113,7 +113,7 @@ stdenv.mkDerivation rec {
         --replace 'current_toolchain == host_toolchain || !use_xcode_clang' \
                   'false'
     ''}
-    ${lib.optionalString stdenv.isDarwin ''
+    ${lib.optionalString stdenv.hostPlatform.isDarwin ''
       substituteInPlace build/config/compiler/BUILD.gn \
         --replace "-Wl,-fatal_warnings" ""
     ''}
@@ -141,7 +141,7 @@ stdenv.mkDerivation rec {
     ''host_toolchain="//build/toolchain/linux/unbundle:default"''
     ''v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"''
   ] ++ lib.optional stdenv.cc.isClang ''clang_base_path="${llvmCcAndBintools}"''
-  ++ lib.optional stdenv.isDarwin ''use_lld=false'';
+  ++ lib.optional stdenv.hostPlatform.isDarwin ''use_lld=false'';
 
   env.NIX_CFLAGS_COMPILE = toString ([
     "-O2"
@@ -155,7 +155,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     xcbuild
     llvmPackages.llvm
     python3.pkgs.setuptools
diff --git a/pkgs/development/libraries/vapoursynth-mvtools/default.nix b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
deleted file mode 100644
index 8ddc1d88fe443..0000000000000
--- a/pkgs/development/libraries/vapoursynth-mvtools/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook,
-  vapoursynth, nasm, fftwFloat
-}:
-
-stdenv.mkDerivation rec {
-  pname = "vapoursynth-mvtools";
-  version = "23";
-
-  src = fetchFromGitHub {
-    owner  = "dubhater";
-    repo   = "vapoursynth-mvtools";
-    rev    = "v${version}";
-    sha256 = "0lngkvxnzn82rz558nvl96rvclrck07ja1pny7wcfixp9b68ppkn";
-  };
-
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
-  buildInputs = [
-    nasm vapoursynth fftwFloat
-  ];
-
-  configureFlags = [ "--libdir=$(out)/lib/vapoursynth" ];
-
-  meta = with lib; {
-    description = "Set of filters for motion estimation and compensation";
-    homepage = "https://github.com/dubhater/vapoursynth-mvtools";
-    license  = licenses.gpl2;
-    maintainers = with maintainers; [ rnhmjoj ];
-  };
-}
diff --git a/pkgs/development/libraries/vapoursynth/0001-Call-weak-function-to-allow-adding-preloaded-plugins.patch b/pkgs/development/libraries/vapoursynth/0001-Call-weak-function-to-allow-adding-preloaded-plugins.patch
deleted file mode 100644
index 72ec48f020b2e..0000000000000
--- a/pkgs/development/libraries/vapoursynth/0001-Call-weak-function-to-allow-adding-preloaded-plugins.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 439e2effe1cc372925daf6d5c28569663ffb93ed Mon Sep 17 00:00:00 2001
-From: Tadeo Kondrak <me@tadeo.ca>
-Date: Mon, 25 Jan 2021 11:17:44 -0700
-Subject: [PATCH] Call weak function to allow adding preloaded plugins after
- compile
-
----
- src/core/vscore.cpp | 19 +++++++++++++++++++
- src/core/vscore.h   |  5 +++++
- 2 files changed, 24 insertions(+)
-
-diff --git a/src/core/vscore.cpp b/src/core/vscore.cpp
-index f8e69062..4ce4c623 100644
---- a/src/core/vscore.cpp
-+++ b/src/core/vscore.cpp
-@@ -1791,6 +1791,20 @@ void VSCore::destroyFilterInstance(VSNode *node) {
-     freeDepth--;
- }
- 
-+extern "C" {
-+void __attribute__((weak)) VSLoadPluginsNix(void (*load)(void *data, const char *path), void *data);
-+
-+struct VSLoadPluginsNixCallbackData {
-+    VSCore *core;
-+    const char *filter;
-+};
-+
-+static void VSLoadPluginsNixCallback(void *data, const char *path) {
-+    auto callbackData = static_cast<VSLoadPluginsNixCallbackData *>(data);
-+    callbackData->core->loadAllPluginsInPath(path, callbackData->filter);
-+}
-+}
-+
- VSCore::VSCore(int flags) :
-     numFilterInstances(1),
-     numFunctionInstances(0),
-@@ -1918,6 +1932,11 @@ VSCore::VSCore(int flags) :
-     } // If neither exists, an empty string will do.
- #endif
- 
-+    if (VSLoadPluginsNix != nullptr) {
-+        VSLoadPluginsNixCallbackData data{this, filter.c_str()};
-+        VSLoadPluginsNix(VSLoadPluginsNixCallback, &data);
-+    }
-+
-     VSMap *settings = readSettings(configFile);
-     const char *error = vs_internal_vsapi.mapGetError(settings);
-     if (error) {
-diff --git a/src/core/vscore.h b/src/core/vscore.h
-index 2ce0f56b..2982b133 100644
---- a/src/core/vscore.h
-+++ b/src/core/vscore.h
-@@ -985,6 +985,9 @@ public:
-     std::string getV3ArgString() const;
- };
- 
-+extern "C" {
-+static void VSLoadPluginsNixCallback(void *data, const char *path);
-+}
- 
- struct VSPlugin {
-     friend struct VSPluginFunction;
-@@ -1140,6 +1143,8 @@ public:
- 
-     explicit VSCore(int flags);
-     void freeCore();
-+
-+    friend void VSLoadPluginsNixCallback(void *data, const char *path);
- };
- 
- #endif // VSCORE_H
--- 
-2.32.0
-
diff --git a/pkgs/development/libraries/vapoursynth/default.nix b/pkgs/development/libraries/vapoursynth/default.nix
deleted file mode 100644
index bf21723875bf8..0000000000000
--- a/pkgs/development/libraries/vapoursynth/default.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, makeWrapper
-, runCommandCC, runCommand, vapoursynth, writeText, patchelf, buildEnv
-, zimg, libass, python3, libiconv, testers
-, ApplicationServices
-}:
-
-stdenv.mkDerivation rec {
-  pname = "vapoursynth";
-  version = "65";
-
-  src = fetchFromGitHub {
-    owner  = "vapoursynth";
-    repo   = "vapoursynth";
-    rev    = "R${version}";
-    sha256 = "sha256-HrTXhRoKSFeLXYQM7W2FvYf7yCD1diSZGtPop9urrSk=";
-  };
-
-  patches = [
-    ./0001-Call-weak-function-to-allow-adding-preloaded-plugins.patch
-  ];
-
-  nativeBuildInputs = [ pkg-config autoreconfHook makeWrapper ];
-  buildInputs = [
-    zimg libass
-    (python3.withPackages (ps: with ps; [ sphinx cython ]))
-  ] ++ lib.optionals stdenv.isDarwin [ libiconv ApplicationServices ];
-
-  enableParallelBuilding = true;
-
-  passthru = rec {
-    # If vapoursynth is added to the build inputs of mpv and then
-    # used in the wrapping of it, we want to know once inside the
-    # wrapper, what python3 version was used to build vapoursynth so
-    # the right python3.sitePackages will be used there.
-    inherit python3;
-
-    withPlugins = import ./plugin-interface.nix {
-      inherit lib python3 buildEnv writeText runCommandCC stdenv runCommand
-        vapoursynth makeWrapper withPlugins;
-    };
-
-    tests.version = testers.testVersion {
-      package = vapoursynth;
-      # Check Core version to prevent false positive with API version
-      version = "Core R${version}";
-    };
-  };
-
-  postInstall = ''
-    wrapProgram $out/bin/vspipe \
-        --prefix PYTHONPATH : $out/${python3.sitePackages}
-
-    # VapourSynth does not include any plugins by default
-    # and emits a warning when the system plugin directory does not exist.
-    mkdir $out/lib/vapoursynth
-  '';
-
-  meta = with lib; {
-    broken = stdenv.isDarwin; # see https://github.com/NixOS/nixpkgs/pull/189446 for partial fix
-    description = "Video processing framework with the future in mind";
-    homepage    = "http://www.vapoursynth.com/";
-    license     = licenses.lgpl21;
-    platforms   = platforms.x86_64;
-    maintainers = with maintainers; [ rnhmjoj sbruder tadeokondrak ];
-    mainProgram = "vspipe";
-  };
-}
diff --git a/pkgs/development/libraries/vapoursynth/editor.nix b/pkgs/development/libraries/vapoursynth/editor.nix
deleted file mode 100644
index 2b4b1d5767b12..0000000000000
--- a/pkgs/development/libraries/vapoursynth/editor.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-{ lib, mkDerivation, fetchFromGitHub, makeWrapper, runCommand
-, python3, vapoursynth
-, qmake, qtbase, qtwebsockets
-}:
-
-let
-  unwrapped = mkDerivation rec {
-    pname = "vapoursynth-editor";
-    version = "R19-mod-4";
-
-    src = fetchFromGitHub {
-      owner = "YomikoR";
-      repo = pname;
-      rev = lib.toLower version;
-      sha256 = "sha256-+/9j9DJDGXbuTvE8ZXIu6wjcof39SyatS36Q6y9hLPg=";
-    };
-
-    nativeBuildInputs = [ qmake ];
-    buildInputs = [ qtbase vapoursynth qtwebsockets ];
-
-    dontWrapQtApps = true;
-
-    preConfigure = "cd pro";
-
-    preFixup = ''
-      cd ../build/release*
-      mkdir -p $out/bin
-      for bin in vsedit{,-job-server{,-watcher}}; do
-          mv $bin $out/bin
-          wrapQtApp $out/bin/$bin
-      done
-    '';
-
-    passthru = { inherit withPlugins; };
-
-    meta = with lib; {
-      description = "Cross-platform editor for VapourSynth scripts";
-      homepage = "https://github.com/YomikoR/VapourSynth-Editor";
-      license = licenses.mit;
-      maintainers = with maintainers; [ tadeokondrak ];
-      platforms = platforms.all;
-    };
-  };
-
-  withPlugins = plugins: let
-    vapoursynthWithPlugins = vapoursynth.withPlugins plugins;
-  in runCommand "${unwrapped.name}-with-plugins" {
-    nativeBuildInputs = [ makeWrapper ];
-    passthru = { withPlugins = plugins': withPlugins (plugins ++ plugins'); };
-  } ''
-    mkdir -p $out/bin
-    for bin in vsedit{,-job-server{,-watcher}}; do
-        makeWrapper ${unwrapped}/bin/$bin $out/bin/$bin \
-            --prefix PYTHONPATH : ${vapoursynthWithPlugins}/${python3.sitePackages} \
-            --prefix LD_LIBRARY_PATH : ${vapoursynthWithPlugins}/lib
-    done
-  '';
-in
-  withPlugins []
diff --git a/pkgs/development/libraries/vapoursynth/plugin-interface.nix b/pkgs/development/libraries/vapoursynth/plugin-interface.nix
deleted file mode 100644
index f962634b131e7..0000000000000
--- a/pkgs/development/libraries/vapoursynth/plugin-interface.nix
+++ /dev/null
@@ -1,114 +0,0 @@
-{ lib, python3, buildEnv, writeText, runCommandCC, stdenv, runCommand
-, vapoursynth, makeWrapper, withPlugins }:
-
-plugins: let
-  pythonEnvironment = python3.buildEnv.override {
-    extraLibs = plugins;
-  };
-
-  getRecursivePropagatedBuildInputs = pkgs: lib.flatten
-    (map
-      (pkg: let cleanPropagatedBuildInputs = lib.filter lib.isDerivation pkg.propagatedBuildInputs;
-        in cleanPropagatedBuildInputs ++ (getRecursivePropagatedBuildInputs cleanPropagatedBuildInputs))
-      pkgs);
-
-  deepPlugins = lib.unique (plugins ++ (getRecursivePropagatedBuildInputs plugins));
-
-  pluginsEnv = buildEnv {
-    name = "vapoursynth-plugins-env";
-    pathsToLink = [ "/lib/vapoursynth" ];
-    paths = deepPlugins;
-  };
-
-  pluginLoader = let
-    source = writeText "vapoursynth-nix-plugins.c" ''
-      void VSLoadPluginsNix(void (*load)(void *data, const char *path), void *data) {
-      ${lib.concatMapStringsSep "" (path: "load(data, \"${path}/lib/vapoursynth\");") deepPlugins}
-      }
-    '';
-  in
-  runCommandCC "vapoursynth-plugin-loader" {
-    executable = true;
-    preferLocalBuild = true;
-    allowSubstitutes = false;
-  } ''
-    mkdir -p $out/lib
-    $CC -shared -fPIC ${source} -o "$out/lib/libvapoursynth-nix-plugins${ext}"
-  '';
-
-  ext = stdenv.hostPlatform.extensions.sharedLibrary;
-in
-runCommand "${vapoursynth.name}-with-plugins" {
-  nativeBuildInputs = [ makeWrapper ];
-  passthru = {
-    inherit python3;
-    inherit (vapoursynth) src version;
-    withPlugins = plugins': withPlugins (plugins ++ plugins');
-  };
-} ''
-  mkdir -p \
-    $out/bin \
-    $out/lib/pkgconfig \
-    $out/lib/vapoursynth \
-    $out/${python3.sitePackages}
-
-  for textFile in \
-      lib/pkgconfig/vapoursynth{,-script}.pc \
-      lib/libvapoursynth.la \
-      lib/libvapoursynth-script.la \
-      ${python3.sitePackages}/vapoursynth.la
-  do
-      substitute ${vapoursynth}/$textFile $out/$textFile \
-          --replace "${vapoursynth}" "$out"
-  done
-
-  for binaryPlugin in ${pluginsEnv}/lib/vapoursynth/*; do
-      ln -s $binaryPlugin $out/''${binaryPlugin#"${pluginsEnv}/"}
-  done
-
-  for pythonPlugin in ${pythonEnvironment}/${python3.sitePackages}/*; do
-      ln -s $pythonPlugin $out/''${pythonPlugin#"${pythonEnvironment}/"}
-  done
-
-  for binaryFile in \
-      lib/libvapoursynth${ext} \
-      lib/libvapoursynth-script${ext}.0.0.0
-  do
-    old_rpath=$(patchelf --print-rpath ${vapoursynth}/$binaryFile)
-    new_rpath="$old_rpath:$out/lib"
-    patchelf \
-        --set-rpath "$new_rpath" \
-        --output $out/$binaryFile \
-        ${vapoursynth}/$binaryFile
-    patchelf \
-        --add-needed libvapoursynth-nix-plugins${ext} \
-        $out/$binaryFile
-  done
-
-  for binaryFile in \
-      ${python3.sitePackages}/vapoursynth${ext} \
-      bin/.vspipe-wrapped
-  do
-      old_rpath=$(patchelf --print-rpath ${vapoursynth}/$binaryFile)
-      new_rpath="''${old_rpath//"${vapoursynth}"/"$out"}"
-      patchelf \
-          --set-rpath "$new_rpath" \
-          --output $out/$binaryFile \
-          ${vapoursynth}/$binaryFile
-  done
-
-  ln -s \
-      ${pluginLoader}/lib/libvapoursynth-nix-plugins${ext} \
-      $out/lib/libvapoursynth-nix-plugins${ext}
-  ln -s ${vapoursynth}/include $out/include
-  ln -s ${vapoursynth}/lib/vapoursynth/* $out/lib/vapoursynth
-  ln -s \
-      libvapoursynth-script${ext}.0.0.0 \
-      $out/lib/libvapoursynth-script${ext}
-  ln -s \
-      libvapoursynth-script${ext}.0.0.0 \
-      $out/lib/libvapoursynth-script${ext}.0
-
-  makeWrapper $out/bin/.vspipe-wrapped $out/bin/vspipe \
-      --prefix PYTHONPATH : $out/${python3.sitePackages}
-''
diff --git a/pkgs/development/libraries/vc/0.7.nix b/pkgs/development/libraries/vc/0.7.nix
index 50eaddda890ec..fa0e6feb7df76 100644
--- a/pkgs/development/libraries/vc/0.7.nix
+++ b/pkgs/development/libraries/vc/0.7.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     maintainers = with maintainers; [ abbradar ];
     # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = (stdenv.isDarwin && stdenv.isAarch64) || (stdenv.isLinux && stdenv.isAarch64);
+    broken = (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) || (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64);
   };
 }
diff --git a/pkgs/development/libraries/vcdimager/default.nix b/pkgs/development/libraries/vcdimager/default.nix
index 5c3140a177c34..02f959cf74edc 100644
--- a/pkgs/development/libraries/vcdimager/default.nix
+++ b/pkgs/development/libraries/vcdimager/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ libxml2 popt libiconv ]
-             ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ IOKit DiskArbitration ]);
+             ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [ IOKit DiskArbitration ]);
 
   propagatedBuildInputs = [ libcdio ];
 
diff --git a/pkgs/development/libraries/vectorscan/default.nix b/pkgs/development/libraries/vectorscan/default.nix
index 835db0f3566b7..8525a66e4092b 100644
--- a/pkgs/development/libraries/vectorscan/default.nix
+++ b/pkgs/development/libraries/vectorscan/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     pkg-config
     ragel
     python3
-  ] ++ lib.optional stdenv.isLinux util-linux;
+  ] ++ lib.optional stdenv.hostPlatform.isLinux util-linux;
 
   buildInputs = [
     boost184
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     (if lib.elem stdenv.hostPlatform.system [ "x86_64-linux" "i686-linux" ] then
       [ "-DBUILD_AVX2=ON" "-DBUILD_AVX512=ON" "-DBUILD_AVX512VBMI=ON" "-DFAT_RUNTIME=ON" ]
     else
-      (if (stdenv.isLinux && stdenv.isAarch64) then
+      (if (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) then
         [ "-DBUILD_SVE=ON" "-DBUILD_SVE2=ON" "-DBUILD_SVE2_BITPERM=ON" "-DFAT_RUNTIME=ON" ]
       else
         [ "-DFAT_RUNTIME=OFF" ]
diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix
index 4e3aab9a5532c..34bd608de8e26 100644
--- a/pkgs/development/libraries/vigra/default.nix
+++ b/pkgs/development/libraries/vigra/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, boost
-, cmake
-, fftw
-, fftwSinglePrec
-, hdf5
-, ilmbase
-, libjpeg
-, libpng
-, libtiff
-, openexr
-, python3
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  boost,
+  cmake,
+  fftw,
+  fftwSinglePrec,
+  hdf5,
+  ilmbase,
+  libjpeg,
+  libpng,
+  libtiff,
+  openexr,
+  python3,
 }:
 
 let
@@ -44,18 +45,22 @@ stdenv.mkDerivation rec {
     python
   ];
 
-  preConfigure = "cmakeFlags+=\" -DVIGRANUMPY_INSTALL_DIR=$out/${python.sitePackages}\"";
-
-  cmakeFlags = [ "-DWITH_OPENEXR=1" ]
-    ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux")
-    [ "-DCMAKE_CXX_FLAGS=-fPIC" "-DCMAKE_C_FLAGS=-fPIC" ];
+  cmakeFlags =
+    [
+      "-DWITH_OPENEXR=1"
+      "-DVIGRANUMPY_INSTALL_DIR=${placeholder "out"}/${python.sitePackages}"
+    ]
+    ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [
+      "-DCMAKE_CXX_FLAGS=-fPIC"
+      "-DCMAKE_C_FLAGS=-fPIC"
+    ];
 
   meta = with lib; {
     description = "Novel computer vision C++ library with customizable algorithms and data structures";
     mainProgram = "vigra-config";
     homepage = "https://hci.iwr.uni-heidelberg.de/vigra";
     license = licenses.mit;
-    maintainers = [ maintainers.viric ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/virglrenderer/default.nix b/pkgs/development/libraries/virglrenderer/default.nix
index f0e844360cca7..e23285511afad 100644
--- a/pkgs/development/libraries/virglrenderer/default.nix
+++ b/pkgs/development/libraries/virglrenderer/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "virglrenderer";
-  version = "1.0.1";
+  version = "1.1.0";
 
   src = fetchurl {
     url = "https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/${version}/virglrenderer-${version}.tar.bz2";
-    hash = "sha256-U8uPrdCPUmDuV4M/wkiFZUgUOLx6jjTz4RTRLMnZ25o=";
+    hash = "sha256-XGgKst7ENLKCUv0jU/HiEtTYe+7b9sHnSufj0PZVsb0=";
   };
 
   separateDebugInfo = true;
diff --git a/pkgs/development/libraries/virtualpg/default.nix b/pkgs/development/libraries/virtualpg/default.nix
index d9778decd129e..e15961437002d 100644
--- a/pkgs/development/libraries/virtualpg/default.nix
+++ b/pkgs/development/libraries/virtualpg/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ postgresql sqlite ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Kerberos ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Kerberos ];
 
   meta = with lib; {
     description = "Loadable dynamic extension to both SQLite and SpatiaLite";
diff --git a/pkgs/development/libraries/vkd3d-proton/default.nix b/pkgs/development/libraries/vkd3d-proton/default.nix
deleted file mode 100644
index 7616db1e021ee..0000000000000
--- a/pkgs/development/libraries/vkd3d-proton/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, wine, glslang }:
-
-let
-  # these are both embedded in the output files
-  rev = "83308675078e9ea263fa8c37af95afdd15b3ab71";
-  # git describe --tags
-  shortRev = builtins.substring 0 8 rev;
-  realVersion = "v2.8-302-g${shortRev}";
-in
-
-stdenv.mkDerivation rec {
-  pname = "vkd3d-proton";
-  version = "unstable-2023-04-21";
-
-  nativeBuildInputs = [ meson ninja wine glslang ];
-
-  src = fetchFromGitHub {
-    owner = "HansKristian-Work";
-    repo = pname;
-    inherit rev;
-    sha256 = "sha256-iLpVvYmWhqy0rbbyJoT+kxzIqp68Vsb/TkihGtQQucU=";
-    fetchSubmodules = true;
-  };
-
-  prePatch = ''
-    substituteInPlace meson.build \
-      --replace "vkd3d_build = vcs_tag(" \
-                "vkd3d_build = vcs_tag( fallback : '${shortRev}'", \
-      --replace "vkd3d_version = vcs_tag(" \
-                "vkd3d_version = vcs_tag( fallback : '${realVersion}'",
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/HansKristian-Work/vkd3d-proton";
-    description =
-      "A fork of VKD3D, which aims to implement the full Direct3D 12 API on top of Vulkan";
-    license = licenses.lgpl21;
-    maintainers = with maintainers; [ expipiplus1 ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/vmime/default.nix b/pkgs/development/libraries/vmime/default.nix
index c2b585965b058..909a9fcbab3b4 100644
--- a/pkgs/development/libraries/vmime/default.nix
+++ b/pkgs/development/libraries/vmime/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.vmime.org/";
     description = "Free mail library for C++";
     license = lib.licenses.gpl3;
-    maintainers = with lib.maintainers; [viric];
+    maintainers = [ ];
     platforms = with lib.platforms; linux;
   };
 }
diff --git a/pkgs/development/libraries/vmmlib/default.nix b/pkgs/development/libraries/vmmlib/default.nix
index 11df1a495f02f..d2840ba33a63b 100644
--- a/pkgs/development/libraries/vmmlib/default.nix
+++ b/pkgs/development/libraries/vmmlib/default.nix
@@ -19,14 +19,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config cmake ];
   buildInputs = [ boost lapack ]
-    ++ lib.optionals stdenv.isDarwin [ Accelerate CoreGraphics CoreVideo ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ Accelerate CoreGraphics CoreVideo ];
 
-  doCheck = !stdenv.isDarwin;
+  doCheck = !stdenv.hostPlatform.isDarwin;
 
   checkTarget = "test";
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
     description = "Vector and matrix math library implemented using C++ templates";
 
     longDescription = ''vmmlib is a vector and matrix math library implemented
diff --git a/pkgs/development/libraries/volk/2.5.0.nix b/pkgs/development/libraries/volk/2.5.0.nix
deleted file mode 100644
index 3e15993efc39f..0000000000000
--- a/pkgs/development/libraries/volk/2.5.0.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, cmake
-, python3
-, enableModTool ? true
-, removeReferencesTo
-, fetchpatch
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "volk";
-  # Version 2.5.1 seems to cause a build issue for aarch64-darwin, see:
-  # https://github.com/NixOS/nixpkgs/pull/160152#issuecomment-1043380478A
-  version = "2.5.0";
-
-  src = fetchFromGitHub {
-    owner = "gnuradio";
-    repo = "volk";
-    rev = "v${finalAttrs.version}";
-    sha256 = "sha256-XvX6emv30bSB29EFm6aC+j8NGOxWqHCNv0Hxtdrq/jc=";
-    fetchSubmodules = true;
-  };
-
-  patches = [
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/macports/macports-ports/e83a55ef196d4283be438c052295b2fc44f3df5b/science/volk/files/patch-cpu_features-add-support-for-ARM64.diff";
-      sha256 = "sha256-MNUntVvKZC4zuQsxGQCItaUaaQ1d31re2qjyPFbySmI=";
-      extraPrefix = "";
-    })
-  ];
-
-  cmakeFlags = lib.optionals (!enableModTool) [
-    "-DENABLE_MODTOOL=OFF"
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
-    # offset 14335 in1: -1.03372 in2: -1.03371 tolerance was: 1e-05
-    # volk_32f_log2_32f: fail on arch neon
-    "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;qa_volk_32f_log2_32f"
-  ];
-
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
-    ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libvolk.so)
-  '';
-
-  nativeBuildInputs = [
-    cmake
-    python3
-    python3.pkgs.mako
-  ];
-
-  doCheck = true;
-
-  meta = with lib; {
-    homepage = "http://libvolk.org/";
-    description = "Vector Optimized Library of Kernels";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ doronbehar ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/volk/default.nix b/pkgs/development/libraries/volk/default.nix
deleted file mode 100644
index caf3c848a1ed8..0000000000000
--- a/pkgs/development/libraries/volk/default.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, fetchpatch
-, cmake
-, python3
-, enableModTool ? true
-, removeReferencesTo
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "volk";
-  version = "3.0.0";
-
-  src = fetchFromGitHub {
-    owner = "gnuradio";
-    repo = "volk";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-kI4IuO6TLplo5lLAGIPWQWtePcjIEWB9XaJDA6WlqSg=";
-    fetchSubmodules = true;
-  };
-  patches = [
-    # Remove a failing test
-    (fetchpatch {
-      url = "https://github.com/gnuradio/volk/commit/fe2e4a73480bf2ac2e566052ea682817dddaf61f.patch";
-      hash = "sha256-Vko/Plk7u6UAr32lieU+T9G34Dkg9EW3Noi/NArpRL4=";
-    })
-  ];
-
-  cmakeFlags = lib.optionals (!enableModTool) [
-    "-DENABLE_MODTOOL=OFF"
-  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
-    "-DVOLK_CPU_FEATURES=OFF"
-    # offset 17912 in1: -0.0366274 in2: -0.0366173 tolerance was: 1e-05
-    # volk_32f_log2_32f: fail on arch neon
-    "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;qa_volk_32f_log2_32f"
-  ];
-
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
-    ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libvolk.so)
-  '';
-
-  nativeBuildInputs = [
-    cmake
-    python3
-    python3.pkgs.mako
-  ];
-
-  doCheck = true;
-
-  meta = with lib; {
-    homepage = "http://libvolk.org/";
-    description = "Vector Optimized Library of Kernels";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ doronbehar ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/volume-key/default.nix b/pkgs/development/libraries/volume-key/default.nix
index ea40b8a27da63..1991f2d6d7f99 100644
--- a/pkgs/development/libraries/volume-key/default.nix
+++ b/pkgs/development/libraries/volume-key/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv, fetchgit, autoreconfHook, pkg-config, gettext, python3
 , ncurses, swig, glib, util-linux, cryptsetup, nss, gpgme
-, autoconf, automake, libtool
 , buildPackages
 }:
 
@@ -43,7 +42,7 @@ stdenv.mkDerivation rec {
     mainProgram = "volume_key";
     homepage = "https://pagure.io/volume_key/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/vrpn/default.nix b/pkgs/development/libraries/vrpn/default.nix
index e233269fafd16..3272a4bbd1470 100644
--- a/pkgs/development/libraries/vrpn/default.nix
+++ b/pkgs/development/libraries/vrpn/default.nix
@@ -24,12 +24,12 @@ stdenv.mkDerivation rec {
     unzip
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.CoreFoundation
     darwin.apple_sdk.frameworks.GLUT
     darwin.apple_sdk.frameworks.IOKit
     darwin.apple_sdk.frameworks.OpenGL
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     libGLU
     libGL
   ];
diff --git a/pkgs/development/libraries/vsqlite/default.nix b/pkgs/development/libraries/vsqlite/default.nix
index 6981de6aa0742..029e4c617f46c 100644
--- a/pkgs/development/libraries/vsqlite/default.nix
+++ b/pkgs/development/libraries/vsqlite/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ boost sqlite ];
 
-  prePatch = lib.optionalString stdenv.isDarwin ''
+  prePatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile.in \
         --replace '-Wl,--as-needed' "" \
         --replace '-Wl,-soname -Wl,libvsqlitepp.so.3' \
diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix
index 87cf27f70fd47..479758ed6deef 100644
--- a/pkgs/development/libraries/vte/default.nix
+++ b/pkgs/development/libraries/vte/default.nix
@@ -92,7 +92,7 @@ stdenv.mkDerivation (finalAttrs: {
     (lib.mesonBool "gtk4" (gtkVersion == "4"))
   ] ++ lib.optionals (!systemdSupport) [
     "-D_systemd=false"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     # -Bsymbolic-functions is not supported on darwin
     "-D_b_symbolic_functions=false"
   ];
diff --git a/pkgs/development/libraries/vtk/generic.nix b/pkgs/development/libraries/vtk/generic.nix
index 5ad312c1b8658..3f7f05678f15e 100644
--- a/pkgs/development/libraries/vtk/generic.nix
+++ b/pkgs/development/libraries/vtk/generic.nix
@@ -3,6 +3,7 @@
 , fetchpatch
 , enableQt ? false, qtx11extras, qttools, qtdeclarative, qtEnv
 , enablePython ? false, python ? throw "vtk: Python support requested, but no python interpreter was given."
+, enableEgl ? false
 # Darwin support
 , AGL, Cocoa, CoreServices, DiskArbitration, IOKit, CFNetwork, Security, GLUT, OpenGL
 , ApplicationServices, CoreText, IOSurface, ImageIO, xpc, libobjc
@@ -15,7 +16,9 @@ let
   pythonMajor = lib.substring 0 1 python.pythonVersion;
 
 in stdenv.mkDerivation {
-  pname = "vtk${optionalString enableQt "-qvtk"}";
+  pname = "vtk"
+    + optionalString enableEgl "-egl"
+    + optionalString enableQt "-qvtk";
   inherit version;
 
   src = fetchurl {
@@ -27,11 +30,11 @@ in stdenv.mkDerivation {
 
   buildInputs = [ libpng libtiff ]
     ++ optionals enableQt [ (qtEnv "qvtk-qt-env" [ qtx11extras qttools qtdeclarative ]) ]
-    ++ optionals stdenv.isLinux [
+    ++ optionals stdenv.hostPlatform.isLinux [
       libGLU
       xorgproto
       libXt
-    ] ++ optionals stdenv.isDarwin [
+    ] ++ optionals stdenv.hostPlatform.isDarwin [
       xpc
       AGL
       Cocoa
@@ -49,8 +52,8 @@ in stdenv.mkDerivation {
     ] ++ optionals enablePython [
       python
     ];
-  propagatedBuildInputs = optionals stdenv.isDarwin [ libobjc ]
-    ++ optionals stdenv.isLinux [ libX11 libGL ];
+  propagatedBuildInputs = optionals stdenv.hostPlatform.isDarwin [ libobjc ]
+    ++ optionals stdenv.hostPlatform.isLinux [ libX11 libGL ];
     # see https://github.com/NixOS/nixpkgs/pull/178367#issuecomment-1238827254
 
   patches = map fetchpatch patchesToFetch;
@@ -61,7 +64,7 @@ in stdenv.mkDerivation {
       -i ThirdParty/libproj/vtklibproj/src/proj_json_streaming_writer.hpp \
       -i IO/Image/vtkSEPReader.h
   ''
-  + optionalString stdenv.isDarwin ''
+  + optionalString stdenv.hostPlatform.isDarwin ''
     sed -i 's|COMMAND vtkHashSource|COMMAND "DYLD_LIBRARY_PATH=''${VTK_BINARY_DIR}/lib" ''${VTK_BINARY_DIR}/bin/vtkHashSource-${majorVersion}|' ./Parallel/Core/CMakeLists.txt
     sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/' ./ThirdParty/libxml2/vtklibxml2/xmlschemas.c
     sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/g' ./ThirdParty/libxml2/vtklibxml2/xpath.c
@@ -80,9 +83,9 @@ in stdenv.mkDerivation {
     "-DVTK_MODULE_USE_EXTERNAL_vtkpng=ON"
     "-DVTK_MODULE_USE_EXTERNAL_vtktiff=1"
     "-DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     "-DOPENGL_INCLUDE_DIR=${libGL}/include"
-    "-DVTK_OPENGL_HAS_EGL=ON"
+    (lib.cmakeBool "VTK_OPENGL_HAS_EGL" enableEgl)
   ] ++ [
     "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DCMAKE_INSTALL_INCLUDEDIR=include"
@@ -91,7 +94,7 @@ in stdenv.mkDerivation {
   ] ++ optionals enableQt [
     "-DVTK_GROUP_ENABLE_Qt:STRING=YES"
   ]
-    ++ optionals stdenv.isDarwin [ "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" ]
+    ++ optionals stdenv.hostPlatform.isDarwin [ "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" ]
     ++ optionals enablePython [
       "-DVTK_WRAP_PYTHON:BOOL=ON"
       "-DVTK_PYTHON_VERSION:STRING=${pythonMajor}"
@@ -113,6 +116,7 @@ in stdenv.mkDerivation {
     homepage = "https://www.vtk.org/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ knedlsepp tfmoraes ];
-    platforms = with platforms; unix;
+    platforms = platforms.unix;
+    badPlatforms = optionals enableEgl platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/vulkan-headers/default.nix b/pkgs/development/libraries/vulkan-headers/default.nix
index cd9dbec032087..3a0d14eb9b0e6 100644
--- a/pkgs/development/libraries/vulkan-headers/default.nix
+++ b/pkgs/development/libraries/vulkan-headers/default.nix
@@ -1,15 +1,18 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 stdenv.mkDerivation rec {
   pname = "vulkan-headers";
-  version = "1.3.283.0";
+  version = "1.3.290.0";
 
   nativeBuildInputs = [ cmake ];
 
+  # TODO: investigate why <algorithm> isn't found
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "-DVULKAN_HEADERS_ENABLE_MODULE=OFF" ];
+
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Headers";
     rev = "vulkan-sdk-${version}";
-    hash = "sha256-DpbTYlEJPtyf/m9QEI8fdAm1Hw8MpFd+iCd7WB2gp/M=";
+    hash = "sha256-goxA3Wg3u5hNCz54tWMJnFaS0JGVjphy14Ng/sAK/EM=";
   };
 
   passthru.updateScript = ./update.sh;
diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix
index 023bba6ee8e87..3c002d197ff5c 100644
--- a/pkgs/development/libraries/vulkan-loader/default.nix
+++ b/pkgs/development/libraries/vulkan-loader/default.nix
@@ -1,27 +1,35 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libX11, libxcb
-, libXrandr, wayland, moltenvk, vulkan-headers, addOpenGLRunpath
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config, libX11, libxcb
+, libXrandr, wayland, moltenvk, vulkan-headers, addDriverRunpath
 , testers }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "vulkan-loader";
-  version = "1.3.283.0";
+  version = "1.3.290.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Loader";
     rev = "vulkan-sdk-${finalAttrs.version}";
-    hash = "sha256-pe4WYbfB20yRI5Pg+RxgmQcmdXsSoRxbBkQ3DdAL8r4=";
+    hash = "sha256-z26xvp7bKaOQAXF+/Sk24Syuw3N9QXc6sk2vlQwceJ8=";
   };
 
-  patches = [ ./fix-pkgconfig.patch ];
+  patches = [ ./fix-pkgconfig.patch ]
+    ++ lib.optionals stdenv.hostPlatform.is32bit [
+      # Backport patch to support 64-bit inodes on 32-bit systems
+      # FIXME: remove in next update
+      (fetchpatch {
+        url = "https://github.com/KhronosGroup/Vulkan-Loader/commit/ecd88b5c6b1e4c072c55c8652d76513d74c5ad4e.patch";
+        hash = "sha256-Ea+v+RfmVl8fRbkr2ETM3/7R4vp+jw7hvTq2hnw4V/0=";
+      })
+    ];
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ vulkan-headers ]
-    ++ lib.optionals stdenv.isLinux [ libX11 libxcb libXrandr wayland ];
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ libX11 libxcb libXrandr wayland ];
 
   cmakeFlags = [ "-DCMAKE_INSTALL_INCLUDEDIR=${vulkan-headers}/include" ]
-    ++ lib.optional stdenv.isDarwin "-DSYSCONFDIR=${moltenvk}/share"
-    ++ lib.optional stdenv.isLinux "-DSYSCONFDIR=${addOpenGLRunpath.driverLink}/share"
+    ++ lib.optional stdenv.hostPlatform.isDarwin "-DSYSCONFDIR=${moltenvk}/share"
+    ++ lib.optional stdenv.hostPlatform.isLinux "-DSYSCONFDIR=${addDriverRunpath.driverLink}/share"
     ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "-DUSE_GAS=OFF";
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/vulkan-utility-libraries/default.nix b/pkgs/development/libraries/vulkan-utility-libraries/default.nix
index 769cdb95908dd..060f609c85669 100644
--- a/pkgs/development/libraries/vulkan-utility-libraries/default.nix
+++ b/pkgs/development/libraries/vulkan-utility-libraries/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "vulkan-utility-libraries";
-  version = "1.3.283.0";
+  version = "1.3.290.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Utility-Libraries";
     rev = "vulkan-sdk-${finalAttrs.version}";
-    hash = "sha256-oQC//4RHJjSncQtHPVsYnpLYtXfxSSJdbUBf8clevDI=";
+    hash = "sha256-dzX2xePUkjL4G+IMwPCUgFs1iKsqwZScQQBDt5toUzc=";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/development/libraries/vxl/default.nix b/pkgs/development/libraries/vxl/default.nix
index 48b075add0b2d..9ee55b47d4574 100644
--- a/pkgs/development/libraries/vxl/default.nix
+++ b/pkgs/development/libraries/vxl/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   # test failure on aarch64-linux; unknown reason:
-  cmakeFlags = lib.optionals stdenv.isAarch64 [ "-DCMAKE_CTEST_ARGUMENTS='-E vgl_test_frustum_3d'" ];
+  cmakeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "-DCMAKE_CTEST_ARGUMENTS='-E vgl_test_frustum_3d'" ];
 
   doCheck = true;
 
@@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
     # license appears contradictory; see https://github.com/vxl/vxl/issues/752
     # (and see https://github.com/InsightSoftwareConsortium/ITK/pull/1920/files for potential patch)
     license = [ lib.licenses.unfree ];
-    maintainers = with lib.maintainers; [ viric ];
+    maintainers = [ ];
     platforms = with lib.platforms; linux;
   };
 })
diff --git a/pkgs/development/libraries/waffle/default.nix b/pkgs/development/libraries/waffle/default.nix
index 9f8d4e914b71e..b92011c967df9 100644
--- a/pkgs/development/libraries/waffle/default.nix
+++ b/pkgs/development/libraries/waffle/default.nix
@@ -11,20 +11,20 @@
 , pkg-config
 , python3
 , x11Support ? true, libxcb, libX11
-, waylandSupport ? true, wayland, wayland-protocols
+, waylandSupport ? true, wayland, wayland-protocols, wayland-scanner
 , useGbm ? true, mesa, udev
 }:
 
 stdenv.mkDerivation rec {
   pname = "waffle";
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "mesa";
     repo = "waffle";
     rev = "v${version}";
-    sha256 = "sha256-GVULv/TkCS9CgSFWlskIamw5Z402n684G6jeTLMCPNc=";
+    sha256 = "sha256-Y7GRYLqSO572qA1eZ3jS8QlZ1X9xKpDtScaySTuPK/U=";
   };
 
   buildInputs = [
@@ -43,6 +43,8 @@ stdenv.mkDerivation rec {
     mesa
   ];
 
+  depsBuildBuild = [ pkg-config ];
+
   dontUseCmakeConfigure = true;
 
   nativeBuildInputs = [
@@ -52,6 +54,8 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
+  ] ++ lib.optionals waylandSupport [
+    wayland-scanner
   ];
 
   PKG_CONFIG_BASH_COMPLETION_COMPLETIONSDIR= "${placeholder "out"}/share/bash-completion/completions";
@@ -66,7 +70,7 @@ stdenv.mkDerivation rec {
     mainProgram = "wflinfo";
     homepage = "https://www.waffle-gl.org/";
     license = licenses.bsd2;
-    platforms = platforms.mesaPlatforms;
+    inherit (mesa.meta) platforms;
     maintainers = with maintainers; [ Flakebi ];
   };
 }
diff --git a/pkgs/development/libraries/wangle/default.nix b/pkgs/development/libraries/wangle/default.nix
index e90d05318eac4..d07145641a703 100644
--- a/pkgs/development/libraries/wangle/default.nix
+++ b/pkgs/development/libraries/wangle/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   cmakeFlags = [
     "-Wno-dev"
     (lib.cmakeBool "BUILD_TESTS" finalAttrs.finalPackage.doCheck)
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
   ];
 
@@ -64,7 +64,7 @@ stdenv.mkDerivation (finalAttrs: {
 
       # https://github.com/facebook/wangle/issues/206
       "SSLContextManagerTest.TestSessionContextCertRemoval"
-    ] ++ lib.optionals stdenv.isDarwin [
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
       # flaky
       "BroadcastPoolTest.ThreadLocalPool"
       "Bootstrap.UDPClientServerTest"
diff --git a/pkgs/development/libraries/wapp/default.nix b/pkgs/development/libraries/wapp/default.nix
index fd98f419da9af..9543b49af3b9a 100644
--- a/pkgs/development/libraries/wapp/default.nix
+++ b/pkgs/development/libraries/wapp/default.nix
@@ -2,11 +2,11 @@
 
 tcl.mkTclDerivation {
   pname = "wapp";
-  version = "unstable-2023-05-05";
+  version = "0-unstable-2024-05-23";
 
   src = fetchurl {
-    url = "https://wapp.tcl-lang.org/home/raw/72d0d081e3e6a4aea91ddf429a85cbdf40f9a32d46cccfe81bb75ee50e6cf9cf?at=wapp.tcldir?ci=9d3368116c59ef16";
-    hash = "sha256-poG7dvaiOXMi4oWMQ5t3v7SYEqZLUY/TsWXrTL62xd0=";
+    url = "https://wapp.tcl-lang.org/home/raw/98f23b2160bafc41f34be8e5d8ec414c53d33412eb2f724a07f2476eaf04ac6f?at=wapp.tcl";
+    hash = "sha256-A+Ml5h5C+OMoDQtAoB9lHgYEK1A7qHExT3p46PHRTYg=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/libraries/wayland/darwin.patch b/pkgs/development/libraries/wayland/darwin.patch
index 965294dfa5fff..8300307398cf3 100644
--- a/pkgs/development/libraries/wayland/darwin.patch
+++ b/pkgs/development/libraries/wayland/darwin.patch
@@ -1,13 +1,13 @@
 diff --git a/meson.build b/meson.build
-index 35c3b95..f27e472 100644
+index 8e28f2a..c8d1dc9 100644
 --- a/meson.build
 +++ b/meson.build
 @@ -16,7 +16,7 @@ config_h.set_quoted('PACKAGE', meson.project_name())
  config_h.set_quoted('PACKAGE_VERSION', meson.project_version())
  
  cc_args = []
--if host_machine.system() != 'freebsd'
-+if host_machine.system() not in ['darwin', 'freebsd']
+-if host_machine.system() not in ['freebsd', 'openbsd']
++if host_machine.system() not in ['darwin', 'freebsd', 'openbsd']
  	cc_args += ['-D_POSIX_C_SOURCE=200809L']
  endif
  add_project_arguments(cc_args, language: 'c')
@@ -24,16 +24,16 @@ index 35c3b95..f27e472 100644
  config_h.set10('HAVE_BROKEN_MSG_CMSG_CLOEXEC', have_broken_msg_cmsg_cloexec)
  
  if get_option('libraries')
--	if host_machine.system() == 'freebsd'
-+	if host_machine.system() in ['darwin', 'freebsd']
+-	if host_machine.system() in ['freebsd', 'openbsd']
++	if host_machine.system() in ['darwin', 'freebsd', 'openbsd']
  		# When building for FreeBSD, epoll(7) is provided by a userspace
  		# wrapper around kqueue(2).
  		epoll_dep = dependency('epoll-shim')
 diff --git a/src/event-loop.c b/src/event-loop.c
-index 37cf95d..49a38cb 100644
+index 45222f7..fb3b464 100644
 --- a/src/event-loop.c
 +++ b/src/event-loop.c
-@@ -48,6 +48,13 @@
+@@ -49,6 +49,13 @@
  
  #define TIMER_REMOVED -2
  
@@ -48,22 +48,22 @@ index 37cf95d..49a38cb 100644
  struct wl_event_source_interface;
  struct wl_event_source_timer;
 diff --git a/src/wayland-os.c b/src/wayland-os.c
-index a9066ca..483fe64 100644
+index f00ead4..4dc01d0 100644
 --- a/src/wayland-os.c
 +++ b/src/wayland-os.c
-@@ -69,17 +69,19 @@ wl_os_socket_cloexec(int domain, int type, int protocol)
+@@ -75,17 +75,19 @@ wl_os_socket_cloexec(int domain, int type, int protocol)
  {
  	int fd;
  
 +#ifdef SOCK_CLOEXEC
- 	fd = socket(domain, type | SOCK_CLOEXEC, protocol);
+ 	fd = wl_socket(domain, type | SOCK_CLOEXEC, protocol);
  	if (fd >= 0)
  		return fd;
  	if (errno != EINVAL)
  		return -1;
 +#endif
  
- 	fd = socket(domain, type, protocol);
+ 	fd = wl_socket(domain, type, protocol);
  	return set_cloexec_or_close(fd);
  }
  
diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix
index 8bc53de162f79..72ba54250b511 100644
--- a/pkgs/development/libraries/wayland/default.nix
+++ b/pkgs/development/libraries/wayland/default.nix
@@ -5,13 +5,10 @@
 , pkg-config
 , ninja
 , wayland-scanner
-, expat
-, libxml2
-, withLibraries ? stdenv.isLinux || stdenv.isDarwin
-, withTests ? stdenv.isLinux
+, withTests ? stdenv.hostPlatform.isLinux
 , libffi
 , epoll-shim
-, withDocumentation ? withLibraries && stdenv.hostPlatform == stdenv.buildPlatform
+, withDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform
 , graphviz-nox
 , doxygen
 , libxslt
@@ -23,22 +20,13 @@
 , testers
 }:
 
-# Documentation is only built when building libraries.
-assert withDocumentation -> withLibraries;
-
-# Tests are only built when building libraries.
-assert withTests -> withLibraries;
-
-let
-  isCross = stdenv.buildPlatform != stdenv.hostPlatform;
-in
 stdenv.mkDerivation (finalAttrs: {
   pname = "wayland";
-  version = "1.22.0";
+  version = "1.23.1";
 
   src = fetchurl {
     url = with finalAttrs; "https://gitlab.freedesktop.org/wayland/wayland/-/releases/${version}/downloads/${pname}-${version}.tar.xz";
-    hash = "sha256-FUCvHqaYpHHC2OnSiDMsfg/TYMjx0Sk267fny8JCWEI=";
+    hash = "sha256-hk+yqDmeLQ7DnVbp2bdTwJN3W+rcYCLOgfRBkpqB5e0=";
   };
 
   patches = [
@@ -53,13 +41,13 @@ stdenv.mkDerivation (finalAttrs: {
     sed -i '/os-wrappers-test/d' tests/meson.build
   '';
 
-  outputs = [ "out" "bin" "dev" ] ++ lib.optionals withDocumentation [ "doc" "man" ];
+  outputs = [ "out" "dev" ] ++ lib.optionals withDocumentation [ "doc" "man" ];
   separateDebugInfo = true;
 
   mesonFlags = [
-    "-Ddocumentation=${lib.boolToString withDocumentation}"
-    "-Dlibraries=${lib.boolToString withLibraries}"
-    "-Dtests=${lib.boolToString withTests}"
+    (lib.mesonBool "documentation" withDocumentation)
+    (lib.mesonBool "tests" withTests)
+    (lib.mesonBool "scanner" false) # wayland-scanner is a separate derivation
   ];
 
   depsBuildBuild = [
@@ -70,7 +58,6 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     pkg-config
     ninja
-  ] ++ lib.optionals isCross [
     wayland-scanner
   ] ++ lib.optionals withDocumentation [
     (graphviz-nox.override { pango = null; }) # To avoid an infinite recursion
@@ -83,11 +70,8 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs = [
-    expat
-    libxml2
-  ] ++ lib.optionals withLibraries [
     libffi
-  ] ++ lib.optionals (withLibraries && !stdenv.hostPlatform.isLinux) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
     epoll-shim
   ] ++ lib.optionals withDocumentation [
     docbook_xsl
@@ -95,20 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
     docbook_xml_dtd_42
   ];
 
-  postFixup = ''
-    # The pkg-config file is required for cross-compilation:
-    mkdir -p $bin/lib/pkgconfig/
-    cat <<EOF > $bin/lib/pkgconfig/wayland-scanner.pc
-    wayland_scanner=$bin/bin/wayland-scanner
-
-    Name: Wayland Scanner
-    Description: Wayland scanner
-    Version: ${finalAttrs.version}
-    EOF
-  '';
-
   passthru = {
-    inherit withLibraries;
     tests.pkg-config = testers.hasPkgConfigModules {
       package = finalAttrs.finalPackage;
     };
@@ -130,8 +101,6 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = platforms.unix;
     maintainers = with maintainers; [ primeos codyopel qyliss ];
     pkgConfigModules = [
-      "wayland-scanner"
-    ] ++ lib.optionals withLibraries [
       "wayland-client"
       "wayland-cursor"
       "wayland-egl"
diff --git a/pkgs/development/libraries/wayland/protocols.nix b/pkgs/development/libraries/wayland/protocols.nix
index a260b2b63b92d..1be88f3a6d023 100644
--- a/pkgs/development/libraries/wayland/protocols.nix
+++ b/pkgs/development/libraries/wayland/protocols.nix
@@ -2,29 +2,32 @@
 , pkg-config
 , meson, ninja, wayland-scanner
 , python3, wayland
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "wayland-protocols";
-  version = "1.35";
+  version = "1.36";
 
+  doCheck = stdenv.hostPlatform == stdenv.buildPlatform &&
   # https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/48
-  doCheck = stdenv.hostPlatform == stdenv.buildPlatform && stdenv.hostPlatform.linker == "bfd" && wayland.withLibraries;
+  stdenv.hostPlatform.linker == "bfd" && lib.meta.availableOn stdenv.hostPlatform wayland;
 
   src = fetchurl {
-    url = "https://gitlab.freedesktop.org/wayland/${pname}/-/releases/${version}/downloads/${pname}-${version}.tar.xz";
-    hash = "sha256-N6JxaigTPcgZNBxWiinSHoy3ITDlwSah/PyfQsI9las=";
+    url = "https://gitlab.freedesktop.org/wayland/${finalAttrs.pname}/-/releases/${finalAttrs.version}/downloads/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
+    hash = "sha256-cf1N4F55+aHKVZ+sMMH4Nl+hA0ZCL5/nlfdNd7nvfpI=";
   };
 
-  postPatch = lib.optionalString doCheck ''
+  postPatch = lib.optionalString finalAttrs.doCheck ''
     patchShebangs tests/
   '';
 
   depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ meson ninja wayland-scanner ];
-  nativeCheckInputs = [ python3 wayland ];
+  nativeCheckInputs = [ python3 ];
+  checkInputs = [ wayland ];
 
-  mesonFlags = [ "-Dtests=${lib.boolToString doCheck}" ];
+  mesonFlags = [ "-Dtests=${lib.boolToString finalAttrs.doCheck}" ];
 
   meta = {
     description = "Wayland protocol extensions";
@@ -39,7 +42,11 @@ stdenv.mkDerivation rec {
     license     = lib.licenses.mit; # Expat version
     platforms   = lib.platforms.all;
     maintainers = with lib.maintainers; [ primeos ];
+    pkgConfigModules = [ "wayland-protocols" ];
   };
 
-  passthru.version = version;
-}
+  passthru.version = finalAttrs.version;
+  passthru.tests.pkg-config = testers.hasPkgConfigModules {
+    package = finalAttrs.finalPackage;
+  };
+})
diff --git a/pkgs/development/libraries/wayland/scanner.nix b/pkgs/development/libraries/wayland/scanner.nix
new file mode 100644
index 0000000000000..d826901d01e68
--- /dev/null
+++ b/pkgs/development/libraries/wayland/scanner.nix
@@ -0,0 +1,49 @@
+{
+  lib,
+  stdenv,
+  wayland,
+  meson,
+  pkg-config,
+  ninja,
+  wayland-scanner,
+  expat,
+  libxml2,
+}:
+
+stdenv.mkDerivation {
+  pname = "wayland-scanner";
+  inherit (wayland) version src;
+
+  outputs = [
+    "out"
+    "bin"
+    "dev"
+  ];
+  separateDebugInfo = true;
+
+  mesonFlags = [
+    (lib.mesonBool "documentation" false)
+    (lib.mesonBool "libraries" false)
+    (lib.mesonBool "tests" false)
+  ];
+
+  depsBuildBuild = [ pkg-config ];
+
+  nativeBuildInputs = [
+    meson
+    pkg-config
+    ninja
+  ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) wayland-scanner;
+
+  buildInputs = [
+    expat
+    libxml2
+  ];
+
+  meta = with lib; {
+    inherit (wayland.meta) homepage license maintainers;
+    mainProgram = "wayland-scanner";
+    description = "C code generator for Wayland protocol XML files";
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/waylib/default.nix b/pkgs/development/libraries/waylib/default.nix
index 1cc5332cf777c..15ece6b3b01b7 100644
--- a/pkgs/development/libraries/waylib/default.nix
+++ b/pkgs/development/libraries/waylib/default.nix
@@ -42,6 +42,11 @@ stdenv.mkDerivation (finalAttrs: {
                 "${nixos-artwork.wallpapers.simple-blue}/share/backgrounds/nixos/nix-wallpaper-simple-blue.png"
   '';
 
+  depsBuildBuild = [
+    # To find wayland-scanner
+    pkg-config
+  ];
+
   nativeBuildInputs = [
     cmake
     pkg-config
diff --git a/pkgs/development/libraries/webkit2-sharp/default.nix b/pkgs/development/libraries/webkit2-sharp/default.nix
index de10fff43da0c..6407a8709f6e8 100644
--- a/pkgs/development/libraries/webkit2-sharp/default.nix
+++ b/pkgs/development/libraries/webkit2-sharp/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   '';
 
   ac_cv_path_MONODOCER = "no";
-  installFlagsArray = ["GAPIXMLDIR=/tmp/gapixml"];
+  installFlags = ["GAPIXMLDIR=/tmp/gapixml"];
 
   passthru = {
     inherit webkitgtk;
diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix
index 98c28ca67997d..ee4af8214a379 100644
--- a/pkgs/development/libraries/webkitgtk/default.nix
+++ b/pkgs/development/libraries/webkitgtk/default.nix
@@ -20,6 +20,7 @@
 , gtk3
 , wayland
 , wayland-protocols
+, wayland-scanner
 , libwebp
 , enchant2
 , xorg
@@ -28,11 +29,14 @@
 , libepoxy
 , libjxl
 , at-spi2-core
+, cairo
 , libxml2
 , libsoup
 , libsecret
 , libxslt
 , harfbuzz
+, hyphen
+, libsysprof-capture
 , libpthreadstubs
 , nettle
 , libtasn1
@@ -49,6 +53,8 @@
 , libmanette
 , geoclue2
 , flite
+, fontconfig
+, freetype
 , openssl
 , sqlite
 , gst-plugins-base
@@ -62,7 +68,7 @@
 , substituteAll
 , glib
 , unifdef
-, addOpenGLRunpath
+, addDriverRunpath
 , enableGeoLocation ? true
 , enableExperimental ? false
 , withLibsecret ? true
@@ -72,25 +78,25 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "webkitgtk";
-  version = "2.44.2";
+  version = "2.46.0";
   name = "${finalAttrs.pname}-${finalAttrs.version}+abi=${if lib.versionAtLeast gtk3.version "4.0" then "6.0" else "4.${if lib.versions.major libsoup.version == "2" then "0" else "1"}"}";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   # https://github.com/NixOS/nixpkgs/issues/153528
   # Can't be linked within a 4GB address space.
-  separateDebugInfo = stdenv.isLinux && !stdenv.is32bit;
+  separateDebugInfo = stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.is32bit;
 
   src = fetchurl {
     url = "https://webkitgtk.org/releases/webkitgtk-${finalAttrs.version}.tar.xz";
-    hash = "sha256-Uj9CyP8kgyrdF2Mfbqr+j5MDr+MW7xp+GES5Uqf3Uhs=";
+    hash = "sha256-1NQzBA8ZAVFWDFC96ECFAIn4e61P76nr20quhWo99Do=";
   };
 
-  patches = lib.optionals stdenv.isLinux [
+  patches = lib.optionals stdenv.hostPlatform.isLinux [
     (substituteAll {
       src = ./fix-bubblewrap-paths.patch;
       inherit (builtins) storeDir;
-      inherit (addOpenGLRunpath) driverLink;
+      inherit (addDriverRunpath) driverLink;
     })
   ];
 
@@ -117,10 +123,13 @@ stdenv.mkDerivation (finalAttrs: {
     gi-docgen
     glib # for gdbus-codegen
     unifdef
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
+    wayland-scanner
   ];
 
   buildInputs = [
     at-spi2-core
+    cairo # required even when using skia
     enchant2
     libavif
     libepoxy
@@ -129,6 +138,7 @@ stdenv.mkDerivation (finalAttrs: {
     gst-plugins-bad
     gst-plugins-base
     harfbuzz
+    hyphen
     libGL
     libGLU
     mesa # for libEGL headers
@@ -138,6 +148,7 @@ stdenv.mkDerivation (finalAttrs: {
     libintl
     lcms2
     libpthreadstubs
+    libsysprof-capture
     libtasn1
     libwebp
     libxkbcommon
@@ -148,10 +159,18 @@ stdenv.mkDerivation (finalAttrs: {
     p11-kit
     sqlite
     woff2
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isBigEndian [
+    # https://bugs.webkit.org/show_bug.cgi?id=274032
+    fontconfig
+    freetype
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     libedit
     readline
-  ] ++ lib.optional (stdenv.isDarwin && !stdenv.isAarch64) (
+  ] ++ lib.optional (stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11.0") (
+    # this can likely be removed as:
+    # "libproc.h is included in the 10.12 SDK Libsystem and should be identical to this one."
+    # but the package is marked broken on darwin so unable to test
+
     # Pull a header that contains a definition of proc_pid_rusage().
     # (We pick just that one because using the other headers from `sdk` is not
     # compatible with our C++ standard library. This header is already in
@@ -159,7 +178,7 @@ stdenv.mkDerivation (finalAttrs: {
     runCommand "webkitgtk_headers" { } ''
       install -Dm444 "${lib.getDev apple_sdk.sdk}"/include/libproc.h "$out"/include/libproc.h
     ''
-  ) ++ lib.optionals stdenv.isLinux [
+  ) ++ lib.optionals stdenv.hostPlatform.isLinux [
     libseccomp
     libmanette
     wayland
@@ -182,34 +201,34 @@ stdenv.mkDerivation (finalAttrs: {
     libsoup
   ];
 
-  cmakeFlags = let
-    cmakeBool = x: if x then "ON" else "OFF";
-  in [
-    "-DENABLE_INTROSPECTION=ON"
-    "-DPORT=GTK"
-    "-DUSE_LIBHYPHEN=OFF"
-    "-DUSE_SOUP2=${cmakeBool (lib.versions.major libsoup.version == "2")}"
-    "-DUSE_LIBSECRET=${cmakeBool withLibsecret}"
-    "-DENABLE_EXPERIMENTAL_FEATURES=${cmakeBool enableExperimental}"
-  ] ++ lib.optionals stdenv.isLinux [
-    # Have to be explicitly specified when cross.
-    # https://github.com/WebKit/WebKit/commit/a84036c6d1d66d723f217a4c29eee76f2039a353
-    "-DBWRAP_EXECUTABLE=${lib.getExe bubblewrap}"
-    "-DDBUS_PROXY_EXECUTABLE=${lib.getExe xdg-dbus-proxy}"
-    "-DWAYLAND_SCANNER=${buildPackages.wayland-scanner}/bin/wayland-scanner"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DENABLE_GAMEPAD=OFF"
-    "-DENABLE_GTKDOC=OFF"
-    "-DENABLE_MINIBROWSER=OFF"
-    "-DENABLE_QUARTZ_TARGET=ON"
-    "-DENABLE_X11_TARGET=OFF"
-    "-DUSE_APPLE_ICU=OFF"
-    "-DUSE_OPENGL_OR_ES=OFF"
-  ] ++ lib.optionals (lib.versionOlder gtk3.version "4.0") [
-    "-DUSE_GTK4=OFF"
-  ] ++ lib.optionals (!systemdSupport) [
-    "-DENABLE_JOURNALD_LOG=OFF"
-  ];
+  cmakeFlags =
+    let
+      cmakeBool = x: if x then "ON" else "OFF";
+    in
+    [
+      "-DENABLE_INTROSPECTION=ON"
+      "-DPORT=GTK"
+      "-DUSE_SOUP2=${cmakeBool (lib.versions.major libsoup.version == "2")}"
+      "-DUSE_LIBSECRET=${cmakeBool withLibsecret}"
+      "-DENABLE_EXPERIMENTAL_FEATURES=${cmakeBool enableExperimental}"
+    ] ++ lib.optionals stdenv.hostPlatform.isLinux [
+      # Have to be explicitly specified when cross.
+      # https://github.com/WebKit/WebKit/commit/a84036c6d1d66d723f217a4c29eee76f2039a353
+      "-DBWRAP_EXECUTABLE=${lib.getExe bubblewrap}"
+      "-DDBUS_PROXY_EXECUTABLE=${lib.getExe xdg-dbus-proxy}"
+    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+      "-DENABLE_GAMEPAD=OFF"
+      "-DENABLE_GTKDOC=OFF"
+      "-DENABLE_MINIBROWSER=OFF"
+      "-DENABLE_QUARTZ_TARGET=ON"
+      "-DENABLE_X11_TARGET=OFF"
+      "-DUSE_APPLE_ICU=OFF"
+      "-DUSE_OPENGL_OR_ES=OFF"
+    ] ++ lib.optionals (lib.versionOlder gtk3.version "4.0") [
+      "-DUSE_GTK4=OFF"
+    ] ++ lib.optionals (!systemdSupport) [
+      "-DENABLE_JOURNALD_LOG=OFF"
+    ];
 
   postPatch = ''
     patchShebangs .
@@ -236,6 +255,6 @@ stdenv.mkDerivation (finalAttrs: {
     ];
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = teams.gnome.members;
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 })
diff --git a/pkgs/development/libraries/webrtc-audio-processing/0.3.nix b/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
index 3ac5e2bd4adc9..a3efc646d3195 100644
--- a/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
+++ b/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     ./enable-powerpc.patch
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices ]);
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices ]);
 
   patchPhase = lib.optionalString stdenv.hostPlatform.isMusl ''
     substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1
diff --git a/pkgs/development/libraries/webrtc-audio-processing/default.nix b/pkgs/development/libraries/webrtc-audio-processing/default.nix
index b25ea77b44b46..1a34ade3cee05 100644
--- a/pkgs/development/libraries/webrtc-audio-processing/default.nix
+++ b/pkgs/development/libraries/webrtc-audio-processing/default.nix
@@ -42,9 +42,9 @@ stdenv.mkDerivation rec {
     abseil-cpp
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices Foundation ]);
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices Foundation ]);
 
-  env = lib.optionalAttrs stdenv.isx86_32 {
+  env = lib.optionalAttrs stdenv.hostPlatform.isx86_32 {
     # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/5
     NIX_CFLAGS_COMPILE = "-msse2";
   };
diff --git a/pkgs/development/libraries/wfa2-lib/default.nix b/pkgs/development/libraries/wfa2-lib/default.nix
index 49db133382b01..519343ff5a207 100644
--- a/pkgs/development/libraries/wfa2-lib/default.nix
+++ b/pkgs/development/libraries/wfa2-lib/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     description = "Wavefront alignment algorithm library v2";
     homepage = "https://github.com/smarco/WFA2-lib";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix
index 0e9011778d2de..7f6213c7df187 100644
--- a/pkgs/development/libraries/wlroots/default.nix
+++ b/pkgs/development/libraries/wlroots/default.nix
@@ -15,15 +15,16 @@
 , mesa
 , xorg
 , libpng
-, ffmpeg_4
 , ffmpeg
 , hwdata
 , seatd
 , vulkan-loader
 , glslang
-, libliftoff_0_4
+, libliftoff
 , libdisplay-info
+, lcms2
 , nixosTests
+, testers
 
 , enableXWayland ? true
 , xwayland ? null
@@ -94,7 +95,12 @@ let
       '';
 
       # Test via TinyWL (the "minimum viable product" Wayland compositor based on wlroots):
-      passthru.tests.tinywl = nixosTests.tinywl;
+      passthru.tests = {
+        tinywl = nixosTests.tinywl;
+        pkg-config = testers.hasPkgConfigModules {
+          package = finalAttrs.finalPackage;
+        };
+      };
 
       meta = {
         description = "Modular Wayland compositor library";
@@ -107,35 +113,42 @@ let
         license = lib.licenses.mit;
         platforms = lib.platforms.linux;
         maintainers = with lib.maintainers; [ primeos synthetica rewine ];
+        pkgConfigModules = [
+          (if lib.versionOlder finalAttrs.version "0.18"
+           then "wlroots"
+           else "wlroots-${lib.versions.majorMinor finalAttrs.version}")
+        ];
       };
     });
 
 in
 rec {
-  wlroots_0_16 = generic {
-    version = "0.16.2";
-    hash = "sha256-JeDDYinio14BOl6CbzAPnJDOnrk4vgGNMN++rcy2ItQ=";
-    postPatch = ''
-      substituteInPlace backend/drm/meson.build \
-        --replace /usr/share/hwdata/ ${hwdata}/share/hwdata/
-    '';
+  wlroots_0_17 = generic {
+    version = "0.17.4";
+    hash = "sha256-AzmXf+HMX/6VAr0LpfHwfmDB9dRrrLQHt7l35K98MVo=";
+    extraNativeBuildInputs = [
+      hwdata
+    ];
     extraBuildInputs = [
-      ffmpeg_4
+      ffmpeg
+      libliftoff
+      libdisplay-info
     ];
   };
 
-  wlroots_0_17 = generic {
-    version = "0.17.4";
-    hash = "sha256-AzmXf+HMX/6VAr0LpfHwfmDB9dRrrLQHt7l35K98MVo=";
+  wlroots_0_18 = generic {
+    version = "0.18.1";
+    hash = "sha256-BlI3EUoGEHdO6IBh99o/Aadct2dd7Xjc4PG0Sv+flqI=";
     extraNativeBuildInputs = [
       hwdata
     ];
     extraBuildInputs = [
       ffmpeg
-      libliftoff_0_4
+      libliftoff
       libdisplay-info
+      lcms2
     ];
   };
 
-  wlroots = wlroots_0_17;
+  wlroots = wlroots_0_18;
 }
diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix
index cfd6b99412a14..aeef5a8c47057 100644
--- a/pkgs/development/libraries/wolfssl/default.nix
+++ b/pkgs/development/libraries/wolfssl/default.nix
@@ -10,17 +10,17 @@
 # requiring to build a special variant for that software. Example: 'haproxy'
 , variant ? "all"
 , extraConfigureFlags ? []
-, enableLto ? !(stdenv.isDarwin || stdenv.hostPlatform.isStatic || stdenv.cc.isClang)
+, enableLto ? !(stdenv.hostPlatform.isStatic || stdenv.cc.isClang)
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "wolfssl-${variant}";
-  version = "5.7.0";
+  version = "5.7.2";
 
   src = fetchFromGitHub {
     owner = "wolfSSL";
     repo = "wolfssl";
     rev = "refs/tags/v${finalAttrs.version}-stable";
-    hash = "sha256-4j1GqeZJn5UWx56DjGjge05jlzBbIGn4IXxcaIBxON4=";
+    hash = "sha256-VTMVgBSDL6pw1eEKnxGzTdyQYWVbMd3mAnOnpAOKVhk=";
   };
 
   postPatch = ''
@@ -54,12 +54,15 @@ stdenv.mkDerivation (finalAttrs: {
     # Enable AVX/AVX2/AES-NI instructions, gated by runtime detection via CPUID.
     "--enable-intelasm"
     "--enable-aesni"
-  ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [
+  ] ++ lib.optionals (stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isDarwin) [
     # No runtime detection under ARM and no platform function checks like for X86.
     # However, all ARM macOS systems have the supported extensions autodetected in the configure script.
     "--enable-armasm=inline"
   ] ++ extraConfigureFlags;
 
+  # Breaks tls13 tests on aarch64-darwin.
+  hardeningDisable = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ "zerocallusedregs" ];
+
   # LTO should help with the C implementations.
   env.NIX_CFLAGS_COMPILE = lib.optionalString enableLto "-flto";
   env.NIX_LDFLAGS_COMPILE = lib.optionalString enableLto "-flto";
@@ -71,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
     "out"
   ];
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [
+  propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
     Security
   ];
 
diff --git a/pkgs/development/libraries/wxSVG/default.nix b/pkgs/development/libraries/wxSVG/default.nix
index d14a77a67004e..5182cc2ff9553 100644
--- a/pkgs/development/libraries/wxSVG/default.nix
+++ b/pkgs/development/libraries/wxSVG/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     libexif
     pango
     wxGTK
-  ] ++ lib.optional stdenv.isDarwin Cocoa;
+  ] ++ lib.optional stdenv.hostPlatform.isDarwin Cocoa;
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/wxsqlite3/default.nix b/pkgs/development/libraries/wxsqlite3/default.nix
index b968af23c0dad..7ad997e6d6da9 100644
--- a/pkgs/development/libraries/wxsqlite3/default.nix
+++ b/pkgs/development/libraries/wxsqlite3/default.nix
@@ -24,13 +24,13 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   buildInputs = [ sqlite wxGTK ]
-    ++ lib.optionals (stdenv.isDarwin) [ Cocoa setfile rez derez ];
+    ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ Cocoa setfile rez derez ];
 
   meta = with lib; {
     homepage = "https://utelle.github.io/wxsqlite3/";
     description = "C++ wrapper around the public domain SQLite 3.x for wxWidgets";
     platforms = platforms.unix;
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = [ ];
     license = with licenses; [ lgpl3Plus gpl3Plus ];
   };
 }
diff --git a/pkgs/development/libraries/wxsqliteplus/default.nix b/pkgs/development/libraries/wxsqliteplus/default.nix
index aece1eb09cfff..2d980c69cbe63 100644
--- a/pkgs/development/libraries/wxsqliteplus/default.nix
+++ b/pkgs/development/libraries/wxsqliteplus/default.nix
@@ -15,23 +15,23 @@ stdenv.mkDerivation rec {
     sed -i '/WX_CLEAR_ARRAY/s/$/;/' src/{createtable,sqlite3table}.cpp
   '';
 
-  buildInputs = [ wxGTK wxsqlite3 sqlite ] ++ lib.optional stdenv.isDarwin Cocoa;
+  buildInputs = [ wxGTK wxsqlite3 sqlite ] ++ lib.optional stdenv.hostPlatform.isDarwin Cocoa;
 
   makeFlags = [
     "LDFLAGS=-L${wxsqlite3}/lib"
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "SETFILE=${setfile}/bin/SetFile"
   ];
 
   preBuild = ''
     sed -ie 's|all: $(LIBPREFIX)wxsqlite$(LIBEXT)|all: |g' Makefile
     sed -ie 's|wxsqliteplus$(EXEEXT): $(WXSQLITEPLUS_OBJECTS) $(LIBPREFIX)wxsqlite$(LIBEXT)|wxsqliteplus$(EXEEXT):  $(WXSQLITEPLUS_OBJECTS) |g' Makefile
-    sed -ie 's|-lwxsqlite |-lwxcode_${if stdenv.isDarwin then "osx_cocoau_wxsqlite3-3.2.0" else "gtk3u_wxsqlite3-3.2"} |g' Makefile
+    sed -ie 's|-lwxsqlite |-lwxcode_${if stdenv.hostPlatform.isDarwin then "osx_cocoau_wxsqlite3-3.2.0" else "gtk3u_wxsqlite3-3.2"} |g' Makefile
   '';
 
   installPhase = ''
-    install -D ${lib.optionalString stdenv.isDarwin "wxsqliteplus.app/Contents/MacOS/"}wxsqliteplus $out/bin/wxsqliteplus
-  '' + lib.optionalString stdenv.isDarwin ''
+    install -D ${lib.optionalString stdenv.hostPlatform.isDarwin "wxsqliteplus.app/Contents/MacOS/"}wxsqliteplus $out/bin/wxsqliteplus
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     mkdir -p $out/Applications
     mv wxsqliteplus.app $out/Applications/
   '';
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     mainProgram = "wxsqliteplus";
     homepage = "https://github.com/guanlisheng/wxsqliteplus";
     license = licenses.gpl3Plus;
-    maintainers = [ maintainers.vrthra ];
+    maintainers = [ ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/wxwidgets/wxGTK31.nix b/pkgs/development/libraries/wxwidgets/wxGTK31.nix
index be0c45c701dc8..21333afe5e8ee 100644
--- a/pkgs/development/libraries/wxwidgets/wxGTK31.nix
+++ b/pkgs/development/libraries/wxwidgets/wxGTK31.nix
@@ -18,8 +18,8 @@
 , withCurl ? false
 , withPrivateFonts ? false
 , withEGL ? true
-, withMesa ? !stdenv.isDarwin
-, withWebKit ? stdenv.isDarwin
+, withMesa ? !stdenv.hostPlatform.isDarwin
+, withWebKit ? stdenv.hostPlatform.isDarwin
 , webkitgtk
 , setfile
 , AGL
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gst_all_1.gst-plugins-base
     gst_all_1.gstreamer
-  ] ++ lib.optionals (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     gtk3
     libSM
     libXinerama
@@ -64,9 +64,9 @@ stdenv.mkDerivation rec {
   ]
   ++ lib.optional withCurl curl
   ++ lib.optional withMesa libGLU
-  ++ lib.optional (withWebKit && !stdenv.isDarwin) webkitgtk
-  ++ lib.optional (withWebKit && stdenv.isDarwin) WebKit
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optional (withWebKit && !stdenv.hostPlatform.isDarwin) webkitgtk
+  ++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     setfile
     Carbon
     Cocoa
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
     WebKit
   ];
 
-  propagatedBuildInputs = lib.optional stdenv.isDarwin AGL;
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isDarwin AGL;
 
   configureFlags = [
     "--disable-precomp-headers"
@@ -92,7 +92,7 @@ stdenv.mkDerivation rec {
   ++ lib.optional withCurl "--enable-webrequest"
   ++ lib.optional withPrivateFonts "--enable-privatefonts"
   ++ lib.optional withMesa "--with-opengl"
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--with-osx_cocoa"
     "--with-libiconv"
   ] ++ lib.optionals withWebKit [
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
     "--enable-webviewwebkit"
   ];
 
-  SEARCH_LIB = lib.optionalString (!stdenv.isDarwin) "${libGLU.out}/lib ${libGL.out}/lib ";
+  SEARCH_LIB = lib.optionalString (!stdenv.hostPlatform.isDarwin) "${libGLU.out}/lib ${libGL.out}/lib ";
 
   preConfigure = ''
     substituteInPlace configure --replace \
@@ -109,7 +109,7 @@ stdenv.mkDerivation rec {
       'SEARCH_LIB=' 'DUMMY_SEARCH_LIB='
     substituteInPlace configure --replace \
       /usr /no-such-path
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace configure --replace \
       'ac_cv_prog_SETFILE="/Developer/Tools/SetFile"' \
       'ac_cv_prog_SETFILE="${setfile}/bin/SetFile"'
diff --git a/pkgs/development/libraries/wxwidgets/wxGTK32.nix b/pkgs/development/libraries/wxwidgets/wxGTK32.nix
index 1eb1ede66cb09..055000cfa68c7 100644
--- a/pkgs/development/libraries/wxwidgets/wxGTK32.nix
+++ b/pkgs/development/libraries/wxwidgets/wxGTK32.nix
@@ -20,7 +20,7 @@
 , compat28 ? false
 , compat30 ? true
 , unicode ? true
-, withMesa ? !stdenv.isDarwin
+, withMesa ? !stdenv.hostPlatform.isDarwin
 , withWebKit ? true
 , webkitgtk
 , setfile
@@ -32,7 +32,6 @@
 , AVFoundation
 , AVKit
 , WebKit
-, fetchpatch
 }:
 let
   catch = fetchFromGitHub {
@@ -70,7 +69,7 @@ stdenv.mkDerivation rec {
     libjpeg_turbo
     zlib
     pcre2
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     gtk3
     libSM
     libXinerama
@@ -79,9 +78,9 @@ stdenv.mkDerivation rec {
     xorgproto
   ]
   ++ lib.optional withMesa libGLU
-  ++ lib.optional (withWebKit && stdenv.isLinux) webkitgtk
-  ++ lib.optional (withWebKit && stdenv.isDarwin) WebKit
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optional (withWebKit && stdenv.hostPlatform.isLinux) webkitgtk
+  ++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     expat
     setfile
     Carbon
@@ -93,7 +92,7 @@ stdenv.mkDerivation rec {
     WebKit
   ];
 
-  propagatedBuildInputs = lib.optional stdenv.isDarwin AGL;
+  propagatedBuildInputs = lib.optional stdenv.hostPlatform.isDarwin AGL;
 
   configureFlags = [
     "--disable-precomp-headers"
@@ -107,7 +106,7 @@ stdenv.mkDerivation rec {
     (if compat30 then "--enable-compat30" else "--disable-compat30")
   ] ++ lib.optional unicode "--enable-unicode"
   ++ lib.optional withMesa "--with-opengl"
-  ++ lib.optionals stdenv.isDarwin [
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "--with-osx_cocoa"
     "--with-libiconv"
   ] ++ lib.optionals withWebKit [
@@ -115,12 +114,12 @@ stdenv.mkDerivation rec {
     "--enable-webviewwebkit"
   ];
 
-  SEARCH_LIB = lib.optionalString (!stdenv.isDarwin) "${libGLU.out}/lib ${libGL.out}/lib";
+  SEARCH_LIB = lib.optionalString (!stdenv.hostPlatform.isDarwin) "${libGLU.out}/lib ${libGL.out}/lib";
 
   preConfigure = ''
     cp -r ${catch}/* 3rdparty/catch/
     cp -r ${nanosvg}/* 3rdparty/nanosvg/
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace configure \
       --replace 'ac_cv_prog_SETFILE="/Developer/Tools/SetFile"' 'ac_cv_prog_SETFILE="${setfile}/bin/SetFile"'
     substituteInPlace configure \
diff --git a/pkgs/development/libraries/x264/default.nix b/pkgs/development/libraries/x264/default.nix
index 91e8a435db804..de4a3d8d78435 100644
--- a/pkgs/development/libraries/x264/default.nix
+++ b/pkgs/development/libraries/x264/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     ./disable-arm-neon-default.patch
   ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace Makefile --replace '$(if $(STRIP), $(STRIP) -x $@)' '$(if $(STRIP), $(STRIP) -S $@)'
   '';
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = lib.optional enableShared "--enable-shared"
-    ++ lib.optional (!stdenv.isi686) "--enable-pic"
+    ++ lib.optional (!stdenv.hostPlatform.isi686) "--enable-pic"
     ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "--cross-prefix=${stdenv.cc.targetPrefix}";
 
   makeFlags = [
@@ -56,6 +56,6 @@ stdenv.mkDerivation rec {
     homepage = "http://www.videolan.org/developers/x264.html";
     license = licenses.gpl2Plus;
     platforms = platforms.unix ++ platforms.windows;
-    maintainers = with maintainers; [ tadeokondrak ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/x265/darwin-__rdtsc.patch b/pkgs/development/libraries/x265/darwin-__rdtsc.patch
new file mode 100644
index 0000000000000..a052f818af10d
--- /dev/null
+++ b/pkgs/development/libraries/x265/darwin-__rdtsc.patch
@@ -0,0 +1,29 @@
+From 5ad351f7d271d0be0611797542c831898b2f531c Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Sun, 11 Aug 2024 22:09:34 +0100
+Subject: [PATCH] source/test/testharness.h: don't redefine `__rdtsc()` builtin
+
+On darwin clang-16 provides `__rdtsc()` builtin. As a result the build
+fails in `nixpkgs` as:
+
+    source/test/testharness.h:78:24: error: static declaration of '__rdtsc' follows non-static declaration
+    static inline uint32_t __rdtsc(void)
+                           ^
+    x265_3.6/source/test/testharness.h:78:24: note: '__rdtsc' is a builtin with type 2
+
+The change avoid redefinition on targets that define `__rdtsc()` builtin.
+---
+ source/test/testharness.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/test/testharness.h
++++ b/test/testharness.h
+@@ -69,6 +69,8 @@ protected:
+ #include <intrin.h>
+ #elif HAVE_RDTSC
+ #include <intrin.h>
++#elif defined(__has_builtin) && __has_builtin(__rdtsc)
++/* compiler-provided builtin */
+ #elif (!defined(__APPLE__) && (defined (__GNUC__) && (defined(__x86_64__) || defined(__i386__))))
+ #include <x86intrin.h>
+ #elif ( !defined(__APPLE__) && defined (__GNUC__) && defined(__ARM_NEON__))
diff --git a/pkgs/development/libraries/x265/default.nix b/pkgs/development/libraries/x265/default.nix
index 7f44834d48672..a436a59aead79 100644
--- a/pkgs/development/libraries/x265/default.nix
+++ b/pkgs/development/libraries/x265/default.nix
@@ -1,7 +1,7 @@
 { lib
+, gccStdenv
 , stdenv
 , fetchurl
-, fetchpatch
 , cmake
 , nasm
 
@@ -10,14 +10,14 @@
 , numactl
 
   # Multi bit-depth support (8bit+10bit+12bit):
-, multibitdepthSupport ? (stdenv.is64bit && !(stdenv.isAarch64 && stdenv.isLinux))
+, multibitdepthSupport ? (stdenv.hostPlatform.is64bit && !(stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux))
 
   # Other options:
 , cliSupport ? true # Build standalone CLI application
 , custatsSupport ? false # Internal profiling of encoder work
 , debugSupport ? false # Run-time sanity checks (debugging)
 , ppaSupport ? false # PPA profiling instrumentation
-, unittestsSupport ? stdenv.isx86_64 # Unit tests - only testing x64 assembly
+, unittestsSupport ? stdenv.hostPlatform.isx86_64 # Unit tests - only testing x64 assembly
 , vtuneSupport ? false # Vtune profiling instrumentation
 , werrorSupport ? false # Warnings as errors
 }:
@@ -30,7 +30,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "x265";
-  version = "3.5";
+  version = "3.6";
 
   outputs = [ "out" "dev" ];
 
@@ -38,36 +38,15 @@ stdenv.mkDerivation rec {
   # whether we fetch a source tarball or a tag from the git repo
   src = fetchurl {
     url = "https://bitbucket.org/multicoreware/x265_git/downloads/x265_${version}.tar.gz";
-    hash = "sha256-5wozNcrKy7oLOiDsb+zWeDkyKI68gWOtdLzJYGR3yug=";
+    hash = "sha256-ZjUx80HFOJ9GDXMOYuEKT8yjQoyiyhCWk4Z7xf4uKAc=";
   };
 
-  sourceRoot = "x265_${version}/source";
-
   patches = [
-    # More aliases for ARM platforms + do not force CLFAGS for ARM :
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/x265/files/arm-r1.patch?id=1d1de341e1404a46b15ae3e84bc400d474cf1a2c";
-      sha256 = "1hgzq5vxkwh0nyikxjfz8gz3jvx2nq3yy12mz3fn13qvzdlb5ilp";
-    })
-    # use proper check to avoid undefined symbols when enabling assembly on ARM :
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/x265/files/neon.patch?id=1d1de341e1404a46b15ae3e84bc400d474cf1a2c";
-      sha256 = "1mmshpbyldrfqxfmdajqal4l647zvlrwdai8pxw99qg4v8gajfii";
-    })
-    # More complete PPC64 matches :
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/x265/files/x265-3.3-ppc64.patch?id=1d1de341e1404a46b15ae3e84bc400d474cf1a2c";
-      sha256 = "1mvw678xfm0vr59n5jilq56qzcgk1gmcip2afyafkqiv21nbms8c";
-    })
-    # Namespace functions for multi-bitdepth builds so that libraries are self-contained (and tests succeeds) :
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/x265/files/test-ns.patch?id=1d1de341e1404a46b15ae3e84bc400d474cf1a2c";
-      sha256 = "0zg3g53l07yh7ar5c241x50y5zp7g8nh8rh63ad4bdpchpc2f52d";
-    })
-    # Fix detection of NEON (and armv6 build) :
-    ./fix-neon-detection.patch
+    ./darwin-__rdtsc.patch
   ];
 
+  sourceRoot = "x265_${version}/source";
+
   postPatch = ''
     substituteInPlace cmake/Version.cmake \
       --replace "unknown" "${version}" \
@@ -89,7 +68,9 @@ stdenv.mkDerivation rec {
     (mkFlag ppaSupport "ENABLE_PPA")
     (mkFlag vtuneSupport "ENABLE_VTUNE")
     (mkFlag werrorSupport "WARNINGS_AS_ERRORS")
-  ];
+  ]
+    # Clang does not support the endfunc directive so use GCC.
+    ++ lib.optional (stdenv.cc.isClang && !stdenv.targetPlatform.isDarwin) "-DCMAKE_ASM_COMPILER=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}gcc";
 
   cmakeStaticLibFlags = [
     "-DHIGH_BIT_DEPTH=ON"
@@ -98,6 +79,9 @@ stdenv.mkDerivation rec {
     "-DEXPORT_C_API=OFF"
   ] ++ lib.optionals stdenv.hostPlatform.isPower [
     "-DENABLE_ALTIVEC=OFF" # https://bitbucket.org/multicoreware/x265_git/issues/320/fail-to-build-on-power8-le
+  ] ++ lib.optionals isCross [
+    (mkFlag stdenv.hostPlatform.isAarch32 "CROSS_COMPILE_ARM")
+    (mkFlag stdenv.hostPlatform.isAarch64 "CROSS_COMPILE_ARM64")
   ];
 
   preConfigure = lib.optionalString multibitdepthSupport ''
@@ -115,7 +99,6 @@ stdenv.mkDerivation rec {
       ${mkFlag (!stdenv.hostPlatform.isStatic) "ENABLE_SHARED"}
       -DHIGH_BIT_DEPTH=OFF
       -DENABLE_HDR10_PLUS=ON
-      ${mkFlag (isCross && stdenv.hostPlatform.isAarch) "CROSS_COMPILE_ARM"}
       ${mkFlag cliSupport "ENABLE_CLI"}
       ${mkFlag unittestsSupport "ENABLE_TESTS"}
     )
diff --git a/pkgs/development/libraries/x265/fix-clang-asm.patch b/pkgs/development/libraries/x265/fix-clang-asm.patch
new file mode 100644
index 0000000000000..6aa5fe2f0a0e1
--- /dev/null
+++ b/pkgs/development/libraries/x265/fix-clang-asm.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a407271b4..593628e0f 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -310,7 +310,7 @@ if(GCC)
+     endif()
+     check_cxx_compiler_flag(-mstackrealign CC_HAS_STACK_REALIGN) 
+     if (CC_HAS_STACK_REALIGN)
+-        add_definitions(-mstackrealign)
++        add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-mstackrealign>)
+     endif()
+     # Disable exceptions. Reduce executable size, increase compability.
+     check_cxx_compiler_flag(-fno-exceptions CC_HAS_FNO_EXCEPTIONS_FLAG)
+@@ -545,7 +545,7 @@ if((MSVC_IDE OR XCODE OR GCC) AND ENABLE_ASSEMBLY)
+             list(APPEND ASM_OBJS ${ASM}.${SUFFIX})
+             add_custom_command(
+                 OUTPUT ${ASM}.${SUFFIX}
+-                COMMAND ${CMAKE_CXX_COMPILER}
++                COMMAND ${CMAKE_ASM_COMPILER}
+                 ARGS ${ARM_ARGS} -c ${ASM_SRC} -o ${ASM}.${SUFFIX}
+                 DEPENDS ${ASM_SRC})
+         endforeach()
+diff --git a/common/CMakeLists.txt b/common/CMakeLists.txt
+index 12b643ad5..876f3543d 100644
+--- a/common/CMakeLists.txt
++++ b/common/CMakeLists.txt
+@@ -16,6 +16,7 @@ endif(EXTRA_LIB)
+ if(ENABLE_ASSEMBLY)
+     set_source_files_properties(threading.cpp primitives.cpp pixel.cpp PROPERTIES COMPILE_FLAGS -DENABLE_ASSEMBLY=1)
+     list(APPEND VFLAGS "-DENABLE_ASSEMBLY=1")
++    enable_language(ASM)
+ endif(ENABLE_ASSEMBLY)
+ 
+ if(ENABLE_ASSEMBLY AND X86)
diff --git a/pkgs/development/libraries/x265/fix-neon-detection.patch b/pkgs/development/libraries/x265/fix-neon-detection.patch
deleted file mode 100644
index dbb826e546684..0000000000000
--- a/pkgs/development/libraries/x265/fix-neon-detection.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-commit 72489cd0a1c229258abe4f20e4fdfd414dfa88da
-Author: rnhmjoj <rnhmjoj@inventati.org>
-Date:   Sun Oct 2 00:15:24 2022 +0200
-
-    Fix NEON detection
-
-diff --git a/cmake/FindNeon.cmake b/cmake/FindNeon.cmake
-index 0062449..9c436d9 100644
---- a/cmake/FindNeon.cmake
-+++ b/cmake/FindNeon.cmake
-@@ -1,10 +1,11 @@
- include(FindPackageHandleStandardArgs)
- 
- # Check the version of neon supported by the ARM CPU
--execute_process(COMMAND cat /proc/cpuinfo | grep Features | grep neon
--                OUTPUT_VARIABLE neon_version
--                ERROR_QUIET
--                OUTPUT_STRIP_TRAILING_WHITESPACE)
--if(neon_version)
--    set(CPU_HAS_NEON 1)
-+message(STATUS "Detecting NEON support")
-+execute_process(COMMAND sed -n "/Features.* neon/q 1" /proc/cpuinfo
-+                RESULT_VARIABLE CPU_HAS_NEON)
-+if(CPU_HAS_NEON)
-+    message(STATUS "Detecting NEON support - supported")
-+else()
-+    message(STATUS "Detecting NEON support - not supported" )
- endif()
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index 7a06951f8422f..c8a28166a7a45 100644
--- a/pkgs/development/libraries/xapian/default.nix
+++ b/pkgs/development/libraries/xapian/default.nix
@@ -7,6 +7,9 @@
 
 # tests
 , mu
+, perlPackages
+, python3
+, xapian-omega
 }:
 
 let
@@ -31,19 +34,21 @@ let
 
     env = {
       AUTOMATED_TESTING = true; # https://trac.xapian.org/changeset/8be35f5e1/git
-    } // lib.optionalAttrs stdenv.is32bit {
+    } // lib.optionalAttrs stdenv.hostPlatform.is32bit {
       NIX_CFLAGS_COMPILE = "-fpermissive";
     };
 
     # the configure script thinks that Darwin has ___exp10
     # but it’s not available on my systems (or hydra apparently)
-    postConfigure = lib.optionalString stdenv.isDarwin ''
+    postConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
       substituteInPlace config.h \
         --replace "#define HAVE___EXP10 1" "#undef HAVE___EXP10"
     '';
 
     passthru.tests = {
-      inherit mu;
+      inherit mu xapian-omega;
+      inherit (perlPackages) SearchXapian;
+      python-xapian = python3.pkgs.xapian;
     };
 
     meta = with lib; {
@@ -59,5 +64,5 @@ in {
   # Don't forget to change the hashes in xapian-omega and
   # python3Packages.xapian. They inherit the version from this package, and
   # should always be built with the equivalent xapian version.
-  xapian_1_4 = generic "1.4.25" "sha256-DJnf3YF1cctWibxBKn4CFAeTgxPzjqOnD6O/hkEGCO4=";
+  xapian_1_4 = generic "1.4.26" "sha256-nmp5A4BpZtFs4iC0k3fJyPrWZ8jw/8sjo0QpRiaTY6c=";
 }
diff --git a/pkgs/development/libraries/xapian/tools/omega/default.nix b/pkgs/development/libraries/xapian/tools/omega/default.nix
index e8c238a24b115..0bfb9c6326aab 100644
--- a/pkgs/development/libraries/xapian/tools/omega/default.nix
+++ b/pkgs/development/libraries/xapian/tools/omega/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://oligarchy.co.uk/xapian/${version}/xapian-omega-${version}.tar.xz";
-    hash = "sha256-L8C1BeYG1eHc3h8iNitvAjfZ6Ef8m2r1OPmbyavR/Ms=";
+    hash = "sha256-pbI4bhsE34TRFJqenFvPxeRyammmnaZBuGxo15ln2uQ=";
   };
 
   buildInputs = [ xapian perl pcre2 zlib libmagic ];
diff --git a/pkgs/development/libraries/xavs/default.nix b/pkgs/development/libraries/xavs/default.nix
index 2d0960e3ff52a..14c4b0a7e5886 100644
--- a/pkgs/development/libraries/xavs/default.nix
+++ b/pkgs/development/libraries/xavs/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     patchShebangs tools/patcheck
     patchShebangs tools/regression-test.pl
     patchShebangs tools/xavs-format
-    '' + lib.optionalString stdenv.isDarwin ''
+    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     substituteInPlace config.guess --replace 'uname -p' 'uname -m'
     substituteInPlace configure \
       --replace '-O4' '-O3' \
diff --git a/pkgs/development/libraries/xdg-dbus-proxy/default.nix b/pkgs/development/libraries/xdg-dbus-proxy/default.nix
index 845a8fcfdc49a..ef5a3abd97309 100644
--- a/pkgs/development/libraries/xdg-dbus-proxy/default.nix
+++ b/pkgs/development/libraries/xdg-dbus-proxy/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "xdg-dbus-proxy";
-  version = "0.1.5";
+  version = "0.1.6";
 
   src = fetchurl {
     url = "https://github.com/flatpak/xdg-dbus-proxy/releases/download/${finalAttrs.version}/xdg-dbus-proxy-${finalAttrs.version}.tar.xz";
-    hash = "sha256-Bh3Pr4oGUOX9nVQy3+iL2nSeoNB53BNjBL/s+84GYfs=";
+    hash = "sha256-Exv1n858fufsvF2RBtZ1D09Ze/5gmWZXMkD35JUpc6E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
index 00af282c5277b..15e09d69b6f63 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
@@ -1,22 +1,23 @@
 { stdenv
 , lib
 , fetchurl
-, meson
-, ninja
-, pkg-config
-, wrapGAppsHook4
 , fontconfig
 , glib
+, gnome
+, gnome-desktop
 , gsettings-desktop-schemas
 , gtk4
 , libadwaita
-, gnome-desktop
-, xdg-desktop-portal
-, wayland
-, gnome
 , libjxl
 , librsvg
+, meson
+, ninja
+, pkg-config
+, wayland
+, wayland-scanner
 , webp-pixbuf-loader
+, wrapGAppsHook4
+, xdg-desktop-portal
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -32,6 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
+    wayland-scanner
     wrapGAppsHook4
   ];
 
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index e1a51284927a3..a1d01682f22e9 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , xdg-desktop-portal
 , gtk3
-, gnome
+, gnome-settings-daemon
 , gnome-desktop
 , glib
 , wrapGAppsHook3
@@ -39,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ lib.optionals buildPortalsInGnome [
     gsettings-desktop-schemas # settings exposed by settings portal
     gnome-desktop
-    gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s, just mouse and xsettings)
+    gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s, just mouse and xsettings)
   ];
 
   mesonFlags = lib.optionals (!buildPortalsInGnome) [
diff --git a/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix b/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
index 8675bab269c08..7180e6992e91c 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
@@ -4,38 +4,36 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook3
-, cinnamon
+, wrapGAppsNoGuiHook
+, cinnamon-desktop
 , glib
 , gsettings-desktop-schemas
-, gtk3
 , mate
 , xdg-desktop-portal
 }:
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-xapp";
-  version = "1.0.7";
+  version = "1.0.9";
 
   src = fetchFromGitHub {
     owner = "linuxmint";
     repo = "xdg-desktop-portal-xapp";
     rev = version;
-    hash = "sha256-1Q00aEWl/mk37NcBJPgg443V1IXmNaJcSlilzvAJ1QQ=";
+    hash = "sha256-4U8d9lQxMHQ2XYXnNCQjrNup8z14Q8Ke1Bkf09AVM6k=";
   };
 
   nativeBuildInputs = [
     meson
     ninja
     pkg-config
-    wrapGAppsHook3
+    wrapGAppsNoGuiHook
   ];
 
   buildInputs = [
-    cinnamon.cinnamon-desktop # org.cinnamon.desktop.background
+    cinnamon-desktop # org.cinnamon.desktop.background
     glib
     gsettings-desktop-schemas # org.gnome.system.location
-    gtk3
     mate.mate-desktop # org.mate.background
     xdg-desktop-portal
   ];
diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix
index a8477e370da0e..f1dea3ab641cd 100644
--- a/pkgs/development/libraries/xdg-desktop-portal/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix
@@ -60,8 +60,17 @@ stdenv.mkDerivation (finalAttrs: {
     # While upstream has `XDG_DESKTOP_PORTAL_DIR`, it is meant for tests and actually blocks
     # any configs from being loaded from anywhere else.
     ./nix-pkgdatadir-env.patch
+
+    # test tries to read /proc/cmdline, which is not intended to be accessible in the sandbox
+    ./trash-test.patch
   ];
 
+  # until/unless bubblewrap ships a pkg-config file, meson has no way to find it when cross-compiling.
+  postPatch = ''
+    substituteInPlace meson.build \
+      --replace-fail "find_program('bwrap'"  "find_program('${lib.getExe bubblewrap}'"
+  '';
+
   nativeBuildInputs = [
     docbook_xml_dtd_412
     docbook_xml_dtd_43
@@ -114,8 +123,12 @@ stdenv.mkDerivation (finalAttrs: {
     (lib.mesonEnable "systemd" enableSystemd)
   ] ++ lib.optionals (!enableGeoLocation) [
     "-Dgeoclue=disabled"
+  ] ++ lib.optionals (!finalAttrs.finalPackage.doCheck) [
+    "-Dpytest=disabled"
   ];
 
+  strictDeps = true;
+
   doCheck = true;
 
   preCheck = ''
diff --git a/pkgs/development/libraries/xdg-desktop-portal/trash-test.patch b/pkgs/development/libraries/xdg-desktop-portal/trash-test.patch
new file mode 100644
index 0000000000000..3bfa885972813
--- /dev/null
+++ b/pkgs/development/libraries/xdg-desktop-portal/trash-test.patch
@@ -0,0 +1,18 @@
+diff --git a/tests/test_trash.py b/tests/test_trash.py
+index d745cd2..173e3e5 100644
+--- a/tests/test_trash.py
++++ b/tests/test_trash.py
+@@ -24,13 +24,6 @@ class TestTrash:
+     def test_version(self, portal_mock):
+         portal_mock.check_version(1)
+ 
+-    def test_trash_file_fails(self, portal_mock):
+-        trash_intf = portal_mock.get_dbus_interface()
+-        with open("/proc/cmdline") as fd:
+-            result = trash_intf.TrashFile(fd.fileno())
+-
+-        assert result == 0
+-
+     def test_trash_file(self, portal_mock):
+         trash_intf = portal_mock.get_dbus_interface()
+ 
diff --git a/pkgs/development/libraries/xed/default.nix b/pkgs/development/libraries/xed/default.nix
index 1fb634a80b90e..2918ae7f3fe82 100644
--- a/pkgs/development/libraries/xed/default.nix
+++ b/pkgs/development/libraries/xed/default.nix
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
     sha256 = "sha256-LF4iJ1/Z3OifCiir/kU3ufZqtiRLeaJeAwuBqP2BCF4=";
   };
 
-  nativeBuildInputs = [ mbuild ] ++ lib.optionals stdenv.isDarwin [ llvmPackages.bintools ];
+  nativeBuildInputs = [ mbuild ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ llvmPackages.bintools ];
 
   buildPhase = ''
     patchShebangs mfile.py
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
   dontInstall = true; # already installed during buildPhase
 
   meta = with lib; {
-    broken = stdenv.isAarch64;
+    broken = stdenv.hostPlatform.isAarch64;
     description = "Intel X86 Encoder Decoder (Intel XED)";
     homepage    = "https://intelxed.github.io/";
     license     = licenses.asl20;
diff --git a/pkgs/development/libraries/xgboost/default.nix b/pkgs/development/libraries/xgboost/default.nix
index e5432430cac3e..c294551eef50a 100644
--- a/pkgs/development/libraries/xgboost/default.nix
+++ b/pkgs/development/libraries/xgboost/default.nix
@@ -22,7 +22,7 @@ assert ncclSupport -> (cudaSupport && !cudaPackages.nccl.meta.unsupported);
 # 2) the R package creates a different binary shared
 # object that isn't compatible with the regular CLI
 # tests.
-assert rLibrary -> doCheck != true;
+assert rLibrary -> !doCheck;
 
 let
   # This ensures xgboost gets the correct libstdc++ when
@@ -67,7 +67,7 @@ effectiveStdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ cmake ]
-    ++ lib.optionals effectiveStdenv.isDarwin [ llvmPackages.openmp ]
+    ++ lib.optionals effectiveStdenv.hostPlatform.isDarwin [ llvmPackages.openmp ]
     ++ lib.optionals cudaSupport [ autoAddDriverRunpath ]
     ++ lib.optionals rLibrary [ R ];
 
diff --git a/pkgs/development/libraries/xml-security-c/default.nix b/pkgs/development/libraries/xml-security-c/default.nix
index c9e4c5874aefa..d36804c6bce81 100644
--- a/pkgs/development/libraries/xml-security-c/default.nix
+++ b/pkgs/development/libraries/xml-security-c/default.nix
@@ -1,7 +1,8 @@
 {
   lib,
   stdenv,
-  fetchurl,
+  fetchgit,
+  autoreconfHook,
   pkg-config,
   xalanc,
   xercesc,
@@ -16,9 +17,10 @@ stdenv.mkDerivation (finalAttrs: {
   pname = "xml-security-c";
   version = "2.0.4";
 
-  src = fetchurl {
-    url = "mirror://apache/santuario/c-library/xml-security-c-${finalAttrs.version}.tar.gz";
-    hash = "sha256-p42mcg9sK6FBANJCYTHg0z6sWi26XMEb3QSXS364kAM=";
+  src = fetchgit {
+    url = "https://git.shibboleth.net/git/cpp-xml-security";
+    rev = finalAttrs.version;
+    hash = "sha256-60A6LqUUGmoZMmIvhuZWjrZl6utp7WLhPe738oNd/AA=";
   };
 
   configureFlags = [
@@ -27,7 +29,10 @@ stdenv.mkDerivation (finalAttrs: {
     "--with-xalan"
   ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
 
   buildInputs =
     [
@@ -35,16 +40,16 @@ stdenv.mkDerivation (finalAttrs: {
       xercesc
       openssl
     ]
-    ++ lib.optionals stdenv.isDarwin [
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [
       CoreFoundation
       CoreServices
       SystemConfiguration
     ];
 
   meta = {
-    homepage = "https://santuario.apache.org/";
+    homepage = "https://shibboleth.atlassian.net/wiki/spaces/DEV/pages/3726671873/Santuario";
     description = "C++ Implementation of W3C security standards for XML";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.asl20;
     platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.jagajaga ];
   };
diff --git a/pkgs/development/libraries/xmlrpc-c/default.nix b/pkgs/development/libraries/xmlrpc-c/default.nix
index af73a81fcb20d..04dea6f59fcea 100644
--- a/pkgs/development/libraries/xmlrpc-c/default.nix
+++ b/pkgs/development/libraries/xmlrpc-c/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xmlrpc-c";
-  version = "1.51.07";
+  version = "1.59.03";
 
   src = fetchurl {
     url = "mirror://sourceforge/xmlrpc-c/${pname}-${version}.tgz";
-    sha256 = "sha256-hNIK4z+SdYL4IdYcC5GUrvvx15JFkKE/qdpa4WmK3tk=";
+    hash = "sha256-vbcdtCqwvlFZFVWIXRFoKwRMEDTUoylkAb+SHsCyM/4=";
   };
 
   buildInputs = [ curl libxml2 ];
@@ -20,7 +20,10 @@ stdenv.mkDerivation rec {
     (cd tools/xmlrpc && make && make install)
   '';
 
-  hardeningDisable = [ "format" ];
+  enableParallelBuilding = true;
+
+  # ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=implicit-function-declaration";
 
   meta = with lib; {
     description = "Lightweight RPC library based on XML and HTTP";
diff --git a/pkgs/development/libraries/xmlsec/default.nix b/pkgs/development/libraries/xmlsec/default.nix
index 2cf0cc3ef8df9..8040cf25813c0 100644
--- a/pkgs/development/libraries/xmlsec/default.nix
+++ b/pkgs/development/libraries/xmlsec/default.nix
@@ -1,25 +1,21 @@
-{ stdenv, fetchurl, fetchpatch, libxml2, gnutls, libxslt, pkg-config, libgcrypt, libtool
+{ stdenv, fetchurl, libxml2, gnutls, libxslt, pkg-config, libgcrypt, libtool
 , openssl, nss, lib, runCommandCC, writeText }:
 
 lib.fix (self:
 stdenv.mkDerivation rec {
   pname = "xmlsec";
-  version = "1.2.34";
+  version = "1.3.5";
 
   src = fetchurl {
     url = "https://www.aleksey.com/xmlsec/download/xmlsec1-${version}.tar.gz";
-    sha256 = "sha256-Us7UlD81vX0IGKOCmMFSjKSsilRED9cRNKB9LRNwomI=";
+    sha256 = "sha256-L/1K0fhg7JPkemgDEKsryUlovQdWbnGXa9lhM9lQSRc=";
   };
 
   patches = [
     ./lt_dladdsearchdir.patch
+    ./remove_bsd_base64_decode_flag.patch
+  ];
 
-    # Fix build with libxml2 2.12
-    (fetchpatch {
-      url = "https://github.com/lsh123/xmlsec/commit/ffb327376f5bb69e8dfe7f805529e45a40118c2b.patch";
-      hash = "sha256-o8CLemOiGIHJsYfVQtNzJNVyk03fdmCbvgA8c3OYxo4=";
-    })
-  ] ++ lib.optionals stdenv.isDarwin [ ./remove_bsd_base64_decode_flag.patch ];
   postPatch = ''
     substituteAllInPlace src/dl.c
   '';
@@ -39,9 +35,8 @@ stdenv.mkDerivation rec {
   doCheck = true;
   nativeCheckInputs = [ nss.tools ];
   preCheck = ''
-    substituteInPlace tests/testrun.sh \
-      --replace 'timestamp=`date +%Y%m%d_%H%M%S`' 'timestamp=19700101_000000' \
-      --replace 'TMPFOLDER=/tmp' '$(mktemp -d)'
+    export TMPFOLDER=$(mktemp -d)
+    substituteInPlace tests/testrun.sh --replace 'timestamp=`date +%Y%m%d_%H%M%S`' 'timestamp=19700101_000000'
   '';
 
   # enable deprecated soap headers required by lasso
@@ -84,7 +79,7 @@ stdenv.mkDerivation rec {
     downloadPage = "https://www.aleksey.com/xmlsec/download.html";
     license = licenses.mit;
     mainProgram = "xmlsec1";
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/xmlsec/remove_bsd_base64_decode_flag.patch b/pkgs/development/libraries/xmlsec/remove_bsd_base64_decode_flag.patch
index 700fad7e3dd48..ba75343029b53 100644
--- a/pkgs/development/libraries/xmlsec/remove_bsd_base64_decode_flag.patch
+++ b/pkgs/development/libraries/xmlsec/remove_bsd_base64_decode_flag.patch
@@ -1,11 +1,11 @@
---- a/tests/testEnc.sh	2020-04-20 14:30:32.000000000 -0400
-+++ b/tests/testEnc.sh	2020-10-21 22:09:25.000000000 -0400
-@@ -405,9 +405,6 @@
+--- a/tests/testEnc.sh
++++ b/tests/testEnc.sh
+@@ -1181,9 +1181,6 @@ for aesgcm_k_l in $aesgcm_key_lengths ; do
              else
                  # generate binary file out of base64
                  DECODE="-d"
 -                if [ "`uname`" = "Darwin" ]; then
--		    DECODE="-D"
+-		            DECODE="-D"
 -                fi
                  cat "$topfolder/$base_test_name.data" | base64 $DECODE > $tmpfile.3
                  execEncTest "$res_success" \
diff --git a/pkgs/development/libraries/xsimd/default.nix b/pkgs/development/libraries/xsimd/default.nix
deleted file mode 100644
index 019b3afbefc84..0000000000000
--- a/pkgs/development/libraries/xsimd/default.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, cmake
-, doctest
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "xsimd";
-  version = "13.0.0";
-  src = fetchFromGitHub {
-    owner = "xtensor-stack";
-    repo = "xsimd";
-    rev = finalAttrs.version;
-    hash = "sha256-qElJYW5QDj3s59L3NgZj5zkhnUMzIP2mBa1sPks3/CE=";
-  };
-  patches = [
-    # Fix of https://github.com/xtensor-stack/xsimd/pull/1024 for
-    # https://github.com/xtensor-stack/xsimd/issues/456 and
-    # https://github.com/xtensor-stack/xsimd/issues/807,
-    (fetchpatch {
-      url = "https://github.com/xtensor-stack/xsimd/commit/c8a87ed6e04b6782f48f94713adfb0cad6c11ddf.patch";
-      hash = "sha256-2/FvBGdqTPcayD7rdHPSzL+F8IYKAfMW0WBJ0cW9EZ0=";
-    })
-  ] ++ lib.optionals stdenv.isDarwin [
-    # https://github.com/xtensor-stack/xsimd/issues/1030
-    ./disable-test_error_gamma.patch
-  ];
-
-  nativeBuildInputs = [
-    cmake
-  ];
-
-  cmakeFlags = [
-    # Always build the tests, even if not running them, because testing whether
-    # they can be built is a test in itself.
-    "-DBUILD_TESTS=ON"
-  ];
-
-  doCheck = true;
-  nativeCheckInputs = [
-    doctest
-  ];
-  checkTarget = "xtest";
-
-  meta = with lib; {
-    description = "C++ wrappers for SIMD intrinsics";
-    homepage = "https://github.com/xtensor-stack/xsimd";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ tobim doronbehar ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch b/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch
deleted file mode 100644
index 49957ea62ed74..0000000000000
--- a/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git i/test/test_error_gamma.cpp w/test/test_error_gamma.cpp
-index 214cbb5..299e5b8 100644
---- i/test/test_error_gamma.cpp
-+++ w/test/test_error_gamma.cpp
-@@ -131,25 +131,6 @@ struct error_gamma_test
-             INFO("lgamma");
-             CHECK_EQ(diff, 0);
-         }
--#if !(XSIMD_WITH_AVX && !XSIMD_WITH_AVX2)
--
--        // tgamma (negative input)
--        {
--            std::transform(gamma_neg_input.cbegin(), gamma_neg_input.cend(), expected.begin(),
--                           [](const value_type& v)
--                           { return std::lgamma(v); });
--            batch_type in, out;
--            for (size_t i = 0; i < nb_input; i += size)
--            {
--                detail::load_batch(in, gamma_neg_input, i);
--                out = lgamma(in);
--                detail::store_batch(out, res, i);
--            }
--            size_t diff = detail::get_nb_diff(res, expected);
--            INFO("lgamma (negative input)");
--            CHECK_EQ(diff, 0);
--        }
--#endif
-     }
- };
- 
diff --git a/pkgs/development/libraries/xtensor/default.nix b/pkgs/development/libraries/xtensor/default.nix
index da85a37ab5bc0..03ac854187101 100644
--- a/pkgs/development/libraries/xtensor/default.nix
+++ b/pkgs/development/libraries/xtensor/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , doctest
 , enableAssertions ? false
diff --git a/pkgs/development/libraries/xtl/default.nix b/pkgs/development/libraries/xtl/default.nix
index 87f480ea29fe2..208aceb3e35b4 100644
--- a/pkgs/development/libraries/xtl/default.nix
+++ b/pkgs/development/libraries/xtl/default.nix
@@ -3,7 +3,6 @@
 , fetchFromGitHub
 , cmake
 , doctest
-, gtest
 }:
 stdenv.mkDerivation rec {
   pname = "xtl";
diff --git a/pkgs/development/libraries/xvidcore/default.nix b/pkgs/development/libraries/xvidcore/default.nix
index 5ec3d44dfb625..9a3c150b3d254 100644
--- a/pkgs/development/libraries/xvidcore/default.nix
+++ b/pkgs/development/libraries/xvidcore/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     # Configure script is not in the root of the source directory
     cd build/generic
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
     # Undocumented darwin hack
     substituteInPlace configure --replace "-no-cpp-precomp" ""
   '';
@@ -20,18 +20,18 @@ stdenv.mkDerivation rec {
   configureFlags = [ ]
     # Undocumented darwin hack (assembly is probably disabled due to an
     # issue with nasm, however yasm is now used)
-    ++ lib.optional stdenv.isDarwin "--enable-macosx_module --disable-assembly";
+    ++ lib.optional stdenv.hostPlatform.isDarwin "--enable-macosx_module --disable-assembly";
 
   nativeBuildInputs = [ ]
-    ++ lib.optional (!stdenv.isDarwin) yasm;
+    ++ lib.optional (!stdenv.hostPlatform.isDarwin) yasm;
 
   buildInputs = [ ]
     # Undocumented darwin hack
-    ++ lib.optionals stdenv.isDarwin [ autoconf automake libtool ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ autoconf automake libtool ];
 
   # Don't remove static libraries (e.g. 'libs/*.a') on darwin.  They're needed to
   # compile ffmpeg (and perhaps other things).
-  postInstall = lib.optionalString (!stdenv.isDarwin) ''
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
     rm $out/lib/*.a
   '';
 
diff --git a/pkgs/development/libraries/xxHash/default.nix b/pkgs/development/libraries/xxHash/default.nix
index c78fc302afe49..f7461c878c236 100644
--- a/pkgs/development/libraries/xxHash/default.nix
+++ b/pkgs/development/libraries/xxHash/default.nix
@@ -22,10 +22,6 @@ stdenv.mkDerivation rec {
   # Using unofficial CMake build script to install CMake module files.
   cmakeDir = "../cmake_unofficial";
 
-  cmakeFlags = [
-    "-DBUILD_SHARED_LIBS=${if stdenv.hostPlatform.isStatic then "OFF" else "ON"}"
-  ];
-
   meta = with lib; {
     description = "Extremely fast hash algorithm";
     longDescription = ''
@@ -40,5 +36,8 @@ stdenv.mkDerivation rec {
     mainProgram = "xxhsum";
     maintainers = with maintainers; [ orivej ];
     platforms = platforms.all;
+    pkgConfigModules = [
+      "libxxhash"
+    ];
   };
 }
diff --git a/pkgs/development/libraries/yaml-cpp/default.nix b/pkgs/development/libraries/yaml-cpp/default.nix
index 3ee2dcf770411..f87849b58c722 100644
--- a/pkgs/development/libraries/yaml-cpp/default.nix
+++ b/pkgs/development/libraries/yaml-cpp/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , gitUpdater
 , cmake
+, static ? stdenv.hostPlatform.isStatic
 }:
 
 stdenv.mkDerivation rec {
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [
     "-DYAML_CPP_BUILD_TOOLS=false"
-    "-DYAML_BUILD_SHARED_LIBS=${lib.boolToString (!stdenv.hostPlatform.isStatic)}"
+    (lib.cmakeBool "YAML_BUILD_SHARED_LIBS" (!static))
     "-DINSTALL_GTEST=false"
   ];
 
diff --git a/pkgs/development/libraries/yas/default.nix b/pkgs/development/libraries/yas/default.nix
index b06d995007fa2..0dad3fbf76dd0 100644
--- a/pkgs/development/libraries/yas/default.nix
+++ b/pkgs/development/libraries/yas/default.nix
@@ -22,7 +22,7 @@ stdenvNoCC.mkDerivation rec {
     homepage = "https://github.com/niXman/yas";
     description = "Yet Another Serialization";
     license = licenses.boost;
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/yubico-pam/default.nix b/pkgs/development/libraries/yubico-pam/default.nix
index bcd6a245bb4f7..e60008994b031 100644
--- a/pkgs/development/libraries/yubico-pam/default.nix
+++ b/pkgs/development/libraries/yubico-pam/default.nix
@@ -26,13 +26,13 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config asciidoc libxslt docbook_xsl ];
   buildInputs = [ pam yubikey-personalization libyubikey libykclient ]
-    ++ lib.optionals stdenv.isDarwin [ CoreServices SystemConfiguration ];
+    ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices SystemConfiguration ];
 
   meta = with lib; {
     description = "Yubico PAM module";
     mainProgram = "ykpamcfg";
     homepage = "https://developers.yubico.com/yubico-pam";
     license = licenses.bsd2;
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/libraries/yyjson/default.nix b/pkgs/development/libraries/yyjson/default.nix
index 96e075c02f4b9..f60329028ead5 100644
--- a/pkgs/development/libraries/yyjson/default.nix
+++ b/pkgs/development/libraries/yyjson/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "yyjson";
-  version = "0.9.0";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "ibireme";
     repo = "yyjson";
     rev = finalAttrs.version;
-    hash = "sha256-iRMjiaVnsTclcdzHjlFOTmJvX3VP4omJLC8AWA/EOZk=";
+    hash = "sha256-mp9Oz08qTyhj3P6F1d81SX96vamUY/JWpD2DTYR+v04=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/zchunk/default.nix b/pkgs/development/libraries/zchunk/default.nix
deleted file mode 100644
index dd35961d085f0..0000000000000
--- a/pkgs/development/libraries/zchunk/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, argp-standalone
-, curl
-, meson
-, ninja
-, pkg-config
-, zstd
-}:
-
-stdenv.mkDerivation rec {
-  pname = "zchunk";
-  version = "1.4.0";
-
-  src = fetchFromGitHub {
-    owner = "zchunk";
-    repo = pname;
-    rev = version;
-    hash = "sha256-GiZM8Jh+v0US8xr90rySY0Ud3eAAl8UqLi162zDR3qw=";
-  };
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkg-config
-  ];
-
-  buildInputs = [
-    curl
-    zstd
-  ] ++ lib.optional stdenv.isDarwin argp-standalone;
-
-  outputs = [ "out" "lib" "dev" ];
-
-  meta = with lib; {
-    homepage = "https://github.com/zchunk/zchunk";
-    description = "File format designed for highly efficient deltas while maintaining good compression";
-    longDescription = ''
-      zchunk is a compressed file format that splits the file into independent
-      chunks. This allows you to only download changed chunks when downloading a
-      new version of the file, and also makes zchunk files efficient over rsync.
-
-      zchunk files are protected with strong checksums to verify that the file
-      you downloaded is, in fact, the file you wanted.
-    '';
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/zeroc-ice/default.nix b/pkgs/development/libraries/zeroc-ice/default.nix
index b41ec7f511745..5c6a0ba9bbe12 100644
--- a/pkgs/development/libraries/zeroc-ice/default.nix
+++ b/pkgs/development/libraries/zeroc-ice/default.nix
@@ -50,19 +50,19 @@ in stdenv.mkDerivation rec {
 
   doCheck = true;
   nativeCheckInputs = with python3.pkgs; [ passlib ];
-  checkPhase = with lib; let
+  checkPhase = let
     # these tests require network access so we need to skip them.
-    brokenTests = map escapeRegex [
+    brokenTests = map lib.escapeRegex [
       "Ice/udp" "Glacier2" "IceGrid/simple" "IceStorm" "IceDiscovery/simple"
 
       # FIXME: certificate expired, remove for next release?
       "IceSSL/configuration"
     ];
     # matches CONFIGS flag in makeFlagsArray
-    configFlag = optionalString cpp11 "--config=cpp11-shared";
+    configFlag = lib.optionalString cpp11 "--config=cpp11-shared";
   in ''
     runHook preCheck
-    ${python3.interpreter} ./cpp/allTests.py ${configFlag} --rfilter='${concatStringsSep "|" brokenTests}'
+    ${python3.interpreter} ./cpp/allTests.py ${configFlag} --rfilter='${lib.concatStringsSep "|" brokenTests}'
     runHook postCheck
   '';
 
@@ -78,6 +78,6 @@ in stdenv.mkDerivation rec {
     license = licenses.gpl2Only;
     platforms = platforms.unix;
     maintainers = with maintainers; [ abbradar ];
-    broken = stdenv.isDarwin;
+    broken = stdenv.hostPlatform.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/zimlib/default.nix b/pkgs/development/libraries/zimlib/default.nix
index fdcad63a279f6..a118c51ff136f 100644
--- a/pkgs/development/libraries/zimlib/default.nix
+++ b/pkgs/development/libraries/zimlib/default.nix
@@ -64,6 +64,6 @@ stdenv.mkDerivation rec {
     homepage =  "https://www.openzim.org/wiki/Zimlib";
     license = licenses.gpl2;
     maintainers = with maintainers; [ greg ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/zlib-ng/default.nix b/pkgs/development/libraries/zlib-ng/default.nix
index c4d2aa2c53344..6abb1b160cc6b 100644
--- a/pkgs/development/libraries/zlib-ng/default.nix
+++ b/pkgs/development/libraries/zlib-ng/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zlib-ng";
-  version = "2.1.6";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "zlib-ng";
     repo = "zlib-ng";
     rev = version;
-    hash = "sha256-Auu7DS4qNm9/8t/nCjEJBaXfPPxA18oZr2qqybVY4Es=";
+    hash = "sha256-XTu4Wo9wQOvXrjDxo3KTpCiy0NsqVnYtCuYsCHP5LFc=";
   };
 
   outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/zmusic/default.nix b/pkgs/development/libraries/zmusic/default.nix
index e950c6ed3d7f8..1b504515f9e6e 100644
--- a/pkgs/development/libraries/zmusic/default.nix
+++ b/pkgs/development/libraries/zmusic/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zmusic";
-  version = "1.1.12";
+  version = "1.1.13";
 
   src = fetchFromGitHub {
     owner = "ZDoom";
     repo = "ZMusic";
     rev = version;
-    hash = "sha256-waxgn4Dg8One2Hv7J2efMoYo5mmaMSMiPQSNq57kbvE=";
+    hash = "sha256-rvvMS5KciHEvoY4hSfgAEyWJiDMqBto4o09oIpQIGTQ=";
   };
 
   outputs = [ "out" "dev" ];
@@ -29,15 +29,15 @@ stdenv.mkDerivation rec {
   patches = [
     (fetchpatch {
       name = "system-fluidsynth.patch";
-      url = "https://git.alpinelinux.org/aports/plain/testing/zmusic/system-fluidsynth.patch?id=59bac94da374cb01bc2a0e49d9e9287812fa1ac0";
+      url = "https://git.alpinelinux.org/aports/plain/community/zmusic/system-fluidsynth.patch?id=ca353107ef4f2e5c55c3cc824b0840e2838fb894";
       hash = "sha256-xKaqiNk1Kt9yNLB22IVmSEtGeOtxrCi7YtFCmhNr0MI=";
     })
   ];
 
   postPatch = ''
     substituteInPlace source/mididevices/music_fluidsynth_mididevice.cpp \
-      --replace "/usr/share/sounds/sf2" "${soundfont-fluid}/share/soundfonts" \
-      --replace "FluidR3_GM.sf2" "FluidR3_GM2-2.sf2"
+      --replace-fail "/usr/share/sounds/sf2" "${soundfont-fluid}/share/soundfonts" \
+      --replace-fail "FluidR3_GM.sf2" "FluidR3_GM2-2.sf2"
   '';
 
   nativeBuildInputs = [
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
       lgpl21Plus
       lgpl3Plus
     ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ azahi lassulus ];
   };
 }
diff --git a/pkgs/development/libraries/zxing-cpp/default.nix b/pkgs/development/libraries/zxing-cpp/default.nix
deleted file mode 100644
index cd5d105511920..0000000000000
--- a/pkgs/development/libraries/zxing-cpp/default.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-, python3
-, gitUpdater
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "zxing-cpp";
-  version = "2.2.1";
-
-  src = fetchFromGitHub {
-    owner = "zxing-cpp";
-    repo = "zxing-cpp";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-teFspdATn9M7Z1vSr/7PdJx/xAv+TVai8rIekxqpBZk=";
-  };
-
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-  ];
-
-  cmakeFlags = [
-    "-DBUILD_EXAMPLES=OFF"
-    "-DBUILD_BLACKBOX_TESTS=OFF"
-  ];
-
-  passthru = {
-    tests = {
-      inherit (python3.pkgs) zxing-cpp;
-    };
-    updateScript = gitUpdater {
-      rev-prefix = "v";
-    };
-  };
-
-  meta = {
-    homepage = "https://github.com/zxing-cpp/zxing-cpp";
-    description = "C++ port of zxing (a Java barcode image processing library)";
-    longDescription = ''
-      ZXing-C++ ("zebra crossing") is an open-source, multi-format 1D/2D barcode
-      image processing library implemented in C++.
-
-      It was originally ported from the Java ZXing Library but has been
-      developed further and now includes many improvements in terms of quality
-      and performance. It can both read and write barcodes in a number of
-      formats.
-    '';
-    license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ AndersonTorres lukegb ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/development/libraries/zydis/default.nix b/pkgs/development/libraries/zydis/default.nix
deleted file mode 100644
index 16379f63c9b2e..0000000000000
--- a/pkgs/development/libraries/zydis/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, callPackage
-, cmake
-, python3
-}:
-
-let
-  zycore = callPackage ./zycore.nix {
-    inherit stdenv fetchFromGitHub cmake;
-  };
-in
-stdenv.mkDerivation rec {
-  pname = "zydis";
-  version = "4.1.0";
-
-  src = fetchFromGitHub {
-    owner = "zyantific";
-    repo = "zydis";
-    rev = "v${version}";
-    hash = "sha256-akusu0T7q5RX4KGtjRqqOFpW5i9Bd1L4RVZt8Rg3PJY=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ zycore ];
-  cmakeFlags = [
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DCMAKE_INSTALL_INCLUDEDIR=include"
-  ];
-
-  doCheck = true;
-  nativeCheckInputs = [ python3 ];
-  passthru = { inherit zycore; };
-
-  meta = with lib; {
-    homepage = "https://zydis.re/";
-    description = "Fast and lightweight x86/x86-64 disassembler library";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jbcrail AndersonTorres athre0z ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/zydis/zycore.nix b/pkgs/development/libraries/zydis/zycore.nix
deleted file mode 100644
index a070f761677d3..0000000000000
--- a/pkgs/development/libraries/zydis/zycore.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv
-, fetchFromGitHub
-, cmake
-}:
-
-stdenv.mkDerivation rec {
-  pname = "zycore";
-  version = "1.5.0";
-
-  src = fetchFromGitHub {
-    owner = "zyantific";
-    repo = "zycore-c";
-    rev = "v${version}";
-    hash = "sha256-Kz51EIaw4RwrOKXhuDXAFieGF1mS+HL06gEuj+cVJmk=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  # The absolute paths set by the Nix CMake build manager confuse
-  # Zycore's config generation (which appends them to the package path).
-  cmakeFlags = [
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DCMAKE_INSTALL_INCLUDEDIR=include"
-  ];
-}
diff --git a/pkgs/development/libraries/zziplib/default.nix b/pkgs/development/libraries/zziplib/default.nix
deleted file mode 100644
index cae01170f290b..0000000000000
--- a/pkgs/development/libraries/zziplib/default.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, perl
-, pkg-config
-, python3
-, xmlto
-, zip
-, zlib
-}:
-
-stdenv.mkDerivation rec {
-  pname = "zziplib";
-  version = "0.13.74";
-
-  src = fetchFromGitHub {
-    owner = "gdraheim";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-MjqGHzb+dsAq2PrcBhU3sv4eMX3afkgFWUbhDp+5o/s=";
-  };
-
-  nativeBuildInputs = [
-    cmake
-    perl
-    pkg-config
-    python3
-    xmlto
-    zip
-  ];
-  buildInputs = [
-    zlib
-  ];
-
-  # test/zziptests.py requires network access
-  # (https://github.com/gdraheim/zziplib/issues/24)
-  cmakeFlags = [
-    "-DZZIP_TESTCVE=OFF"
-    "-DBUILD_SHARED_LIBS=True"
-    "-DBUILD_STATIC_LIBS=False"
-    "-DBUILD_TESTS=OFF"
-    "-DMSVC_STATIC_RUNTIME=OFF"
-    "-DZZIPSDL=OFF"
-    "-DZZIPTEST=OFF"
-    "-DZZIPWRAP=OFF"
-    "-DBUILDTESTS=OFF"
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/gdraheim/zziplib";
-    description = "Library to extract data from files archived in a zip file";
-    longDescription = ''
-      The zziplib library is intentionally lightweight, it offers the ability to
-      easily extract data from files archived in a single zip file.
-      Applications can bundle files into a single zip archive and access them.
-      The implementation is based only on the (free) subset of compression with
-      the zlib algorithm which is actually used by the zip/unzip tools.
-    '';
-    license = with licenses; [ lgpl2Plus mpl11 ];
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-}