about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-09-12 08:14:37 +0000
committerAlyssa Ross <hi@alyssa.is>2023-09-12 08:14:37 +0000
commit7d648ac22d941d0c7efdd987315ae0ddf9932ba0 (patch)
tree51a3e8126722c5a52a9a1e7e40b4eeaf4610db0b /nixpkgs/pkgs/development/libraries
parentaa4353b499e6950b7333578f936455a628145c31 (diff)
parentdb9208ab987cdeeedf78ad9b4cf3c55f5ebd269b (diff)
downloadnixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar.gz
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar.bz2
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar.lz
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar.xz
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.tar.zst
nixlib-7d648ac22d941d0c7efdd987315ae0ddf9932ba0.zip
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Diffstat (limited to 'nixpkgs/pkgs/development/libraries')
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch26
-rw-r--r--nixpkgs/pkgs/development/libraries/aubio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/lilv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/ntk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/raul/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/suil/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/zix/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/bctoolbox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belle-sip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/boost/1.83.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/boost/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/boost/generic.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/bzrtp/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/cm256cc/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/discord-gamesdk/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/drogon/default.nix28
-rw-r--r--nixpkgs/pkgs/development/libraries/dssi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/elementary-cmake-modules/default.nix29
-rw-r--r--nixpkgs/pkgs/development/libraries/elementary-cmake-modules/setup-hook.sh4
-rw-r--r--nixpkgs/pkgs/development/libraries/exempi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/exiv2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/fortify-headers/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/ganv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/geos/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/gf2x/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/glpk/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gmime/3.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/rs/Cargo.lock1360
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/rs/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/hax11/default.nix50
-rw-r--r--nixpkgs/pkgs/development/libraries/httplib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/imgui/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/java/commons/lang/default.nix25
-rw-r--r--nixpkgs/pkgs/development/libraries/jellyfin-ffmpeg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ldb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libblockdev/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libdeltachat/Cargo.lock42
-rw-r--r--nixpkgs/pkgs/development/libraries/libdeltachat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libfprint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgit2/default.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/libjreen/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/liblinphone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmbim/default.nix19
-rw-r--r--nixpkgs/pkgs/development/libraries/libowlevelzs/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libquotient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libredwg/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libsndfile/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/libuev/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/libunarr/default.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/libxcrypt/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/lime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mediastreamer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mongoc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ndn-cxx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/netcdf/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/nghttp3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ngtcp2/gnutls.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/nss/latest.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ntrack/default.nix34
-rw-r--r--nixpkgs/pkgs/development/libraries/ntrack/libnl-fix.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/odpic/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ppl/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/prison/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/3.24.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/qimageblitz/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/qimageblitz/qimageblitz-9999-exec-stack.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/qscintilla-qt4/default.nix67
-rw-r--r--nixpkgs/pkgs/development/libraries/qscintilla-qt4/fix-qt4-build.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/clang-5-darwin.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix239
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff74
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-gtkstyle.diff37
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch12
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/kill-legacy-darwin-apis.patch330
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/libressl.patch64
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/parallel-configure.patch22
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/patch-qthread-stacksize.diff54
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh21
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qsettings-recursive-global-mutex.patch17
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-4.8.7-unixmake-darwin.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl-iconv-no-bom.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl.patch14
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-gcc6.patch33
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-openssl-1.1.patch398
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-6/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-mobility/default.nix54
-rw-r--r--nixpkgs/pkgs/development/libraries/qtstyleplugin-kvantum-qt4/default.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/quarto/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/qwt/6_qt4.nix42
-rw-r--r--nixpkgs/pkgs/development/libraries/restinio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/rubiks/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/smokegen/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/smokeqt/default.nix27
-rw-r--r--nixpkgs/pkgs/development/libraries/tagparser/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/talloc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/tdb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/tevent/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/tpm2-tss/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker-miners/default.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/valhalla/default.nix14
107 files changed, 1289 insertions, 2539 deletions
diff --git a/nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix b/nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix
index 764a39219980..e75e0c9c5cc0 100644
--- a/nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL2_mixer/2_0.nix
@@ -1,4 +1,5 @@
 { fetchurl
+, fetchpatch
 , lzwolf
 , SDL2_mixer
 , timidity
@@ -12,6 +13,17 @@ SDL2_mixer.overrideAttrs(oa: rec {
     sha256 = "0694vsz5bjkcdgfdra6x9fq8vpzrl8m6q96gh58df7065hw5mkxl";
   };
 
+  patches = [
+    # These patches fix incompatible function pointer conversion errors with clang 16.
+    (fetchpatch {
+      url = "https://github.com/libsdl-org/SDL_mixer/commit/4119ec3fe838d38d2433f4432cd18926bda5d093.patch";
+      stripLen = 2;
+      hash = "sha256-Ug1EEZIRcV8+e1MeMsGHuTW7Zn6j4szqujP8IkIq2VM=";
+    })
+    # Based on https://github.com/libsdl-org/SDL_mixer/commit/64ab759111ddb1b033bcce64e1a04e0cba6e498f
+    ./SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
+  ];
+
   # fix default path to timidity.cfg so MIDI files could be played
   postPatch = ''
     substituteInPlace timidity/options.h \
diff --git a/nixpkgs/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch b/nixpkgs/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
new file mode 100644
index 000000000000..76fff3fa63e2
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
@@ -0,0 +1,26 @@
+--- a/music_mpg123.c	2018-10-31 10:59:00.000000000 -0400
++++ b/music_mpg123.c	2023-09-05 21:31:51.529191521 -0400
+@@ -48,7 +48,11 @@
+     int (*mpg123_open_handle)(mpg123_handle *mh, void *iohandle);
+     const char* (*mpg123_plain_strerror)(int errcode);
+     void (*mpg123_rates)(const long **list, size_t *number);
++#if (MPG123_API_VERSION >= 45) /* api (but not abi) change as of mpg123-1.26.0 */
++    int (*mpg123_read)(mpg123_handle *mh, void *outmemory, size_t outmemsize, size_t *done );
++#else
+     int (*mpg123_read)(mpg123_handle *mh, unsigned char *outmemory, size_t outmemsize, size_t *done );
++#endif
+     int (*mpg123_replace_reader_handle)( mpg123_handle *mh, ssize_t (*r_read) (void *, void *, size_t), off_t (*r_lseek)(void *, off_t, int), void (*cleanup)(void*) );
+     off_t (*mpg123_seek)( mpg123_handle *mh, off_t sampleoff, int whence );
+     const char* (*mpg123_strerror)(mpg123_handle *mh);
+@@ -95,7 +99,11 @@
+         FUNCTION_LOADER(mpg123_open_handle, int (*)(mpg123_handle *mh, void *iohandle))
+         FUNCTION_LOADER(mpg123_plain_strerror, const char* (*)(int errcode))
+         FUNCTION_LOADER(mpg123_rates, void (*)(const long **list, size_t *number));
++#if (MPG123_API_VERSION >= 45) /* api (but not abi) change as of mpg123-1.26.0 */
++        FUNCTION_LOADER(mpg123_read, int (*)(mpg123_handle *mh, void *outmemory, size_t outmemsize, size_t *done ))
++#else
+         FUNCTION_LOADER(mpg123_read, int (*)(mpg123_handle *mh, unsigned char *outmemory, size_t outmemsize, size_t *done ))
++#endif
+         FUNCTION_LOADER(mpg123_replace_reader_handle, int (*)( mpg123_handle *mh, ssize_t (*r_read) (void *, void *, size_t), off_t (*r_lseek)(void *, off_t, int), void (*cleanup)(void*) ))
+         FUNCTION_LOADER(mpg123_seek, off_t (*)( mpg123_handle *mh, off_t sampleoff, int whence ))
+         FUNCTION_LOADER(mpg123_strerror, const char* (*)(mpg123_handle *mh))
diff --git a/nixpkgs/pkgs/development/libraries/aubio/default.nix b/nixpkgs/pkgs/development/libraries/aubio/default.nix
index 2e8bdc50ca63..673064db7a5d 100644
--- a/nixpkgs/pkgs/development/libraries/aubio/default.nix
+++ b/nixpkgs/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, python3, waf
 }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1npks71ljc48w6858l9bq30kaf5nph8z0v61jkfb70xb9np850nl";
   };
 
-  nativeBuildInputs = [ pkg-config python3 wafHook ];
+  nativeBuildInputs = [ pkg-config python3 waf.hook ];
   buildInputs = [ alsa-lib fftw libjack2 libsamplerate libsndfile ];
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix b/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix
index 14b0d4c5e46f..b51a608c9695 100644
--- a/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/lilv/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, lv2, pkg-config, python3, serd, sord, sratom, wafHook
+{ lib, stdenv, fetchurl, lv2, pkg-config, python3, serd, sord, sratom, waf
 
 # test derivations
 , pipewire
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./lilv-pkgconfig.patch ];
 
-  nativeBuildInputs = [ pkg-config python3 wafHook ];
+  nativeBuildInputs = [ pkg-config python3 waf.hook ];
   buildInputs = [ serd sord sratom ];
   propagatedBuildInputs = [ lv2 ];
   dontAddWafCrossFlags = true;
diff --git a/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix b/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix
index 9822640f8d67..af784d80a3aa 100644
--- a/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/lvtk/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, boost, gtkmm2, lv2, pkg-config, python3, wafHook }:
+{ lib, stdenv, fetchFromGitHub, boost, gtkmm2, lv2, pkg-config, python3, waf }:
 
 stdenv.mkDerivation rec {
   pname = "lvtk";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-6IoyhBig3Nvc4Y8F0w8b1up6sn8O2RmoUVaBQ//+Aaw=";
   };
 
-  nativeBuildInputs = [ pkg-config python3 wafHook ];
+  nativeBuildInputs = [ pkg-config python3 waf.hook ];
   buildInputs = [ boost gtkmm2 lv2 ];
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix b/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix
index d101e2a960c6..3b8ecb807aa6 100644
--- a/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/ntk/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cairo, libjpeg, libXft, pkg-config, python3, wafHook }:
+{ lib, stdenv, fetchFromGitHub, cairo, libjpeg, libXft, pkg-config, python3, waf }:
 
 stdenv.mkDerivation rec {
   pname = "ntk";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-NyEdg6e+9CI9V+TIgdpPyH1ei+Vq8pUxD3wPzWY5fEU=";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook ];
+  nativeBuildInputs = [ pkg-config waf.hook ];
   buildInputs = [
     cairo libjpeg libXft python3
   ];
diff --git a/nixpkgs/pkgs/development/libraries/audio/raul/default.nix b/nixpkgs/pkgs/development/libraries/audio/raul/default.nix
index c200d4ab79c5..b8e21e36bba4 100644
--- a/nixpkgs/pkgs/development/libraries/audio/raul/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/raul/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, boost, gtk2, pkg-config, python3, wafHook }:
+{ lib, stdenv, fetchgit, boost, gtk2, pkg-config, python3, waf }:
 
 stdenv.mkDerivation rec {
   pname = "raul";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "1z37jb6ghc13b8nv8a8hcg669gl8vh4ni9djvfgga9vcz8rmcg8l";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 ];
+  nativeBuildInputs = [ pkg-config waf.hook python3 ];
   buildInputs = [ boost gtk2 ];
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/development/libraries/audio/suil/default.nix b/nixpkgs/pkgs/development/libraries/audio/suil/default.nix
index 3dc3bb5dacdc..f037b61e3bcf 100644
--- a/nixpkgs/pkgs/development/libraries/audio/suil/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/suil/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, gtk2, lv2, pkg-config, python3, serd, sord, sratom
-, wafHook
+, waf
 , withQt5 ? true, qt5 ? null
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0z4v01pjw4wh65x38w6icn28wdwxz13ayl8hvn4p1g9kmamp1z06";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 ];
+  nativeBuildInputs = [ pkg-config waf.hook python3 ];
   buildInputs = [ gtk2 lv2 serd sord sratom ]
     ++ lib.optionals withQt5 (with qt5; [ qtbase qttools ]);
 
diff --git a/nixpkgs/pkgs/development/libraries/audio/zix/default.nix b/nixpkgs/pkgs/development/libraries/audio/zix/default.nix
index dcd0b328a052..44b8812b29e4 100644
--- a/nixpkgs/pkgs/development/libraries/audio/zix/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/zix/default.nix
@@ -35,8 +35,8 @@ stdenv.mkDerivation rec {
     license = licenses.isc;
     platforms = platforms.unix;
     maintainers = with maintainers; [
+      fogti
       yuu
-      zseri
     ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
index 97072fc4ad33..f3b138d27487 100644
--- a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bctoolbox";
-  version = "5.2.16";
+  version = "5.2.98";
 
   nativeBuildInputs = [
     cmake
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    hash = "sha256-M2apFibqSKp8ojXl82W+vQb7CUxdbWsmw8PLL/ByYuM=";
+    hash = "sha256-j1vVd9UcwmP3tGGN6NApiMyOql8vYljTqj3CKor1Ckk=";
   };
 
   # Do not build static libraries
diff --git a/nixpkgs/pkgs/development/libraries/belle-sip/default.nix b/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
index 72231cf6d3c3..338b0082be5e 100644
--- a/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belle-sip/default.nix
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belle-sip";
-  version = "5.2.64";
+  version = "5.2.98";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5GTKunm6q5nTlfsA5vZZ0MCaSiit+JIdWHcb2t+MLEA=";
+    hash = "sha256-PZnAB+LOlwkiJO0ICqYqn0TgqQY2KdUbgGJRFSzGxdE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/belr/default.nix b/nixpkgs/pkgs/development/libraries/belr/default.nix
index 13d20d36bd5c..7296a9d95275 100644
--- a/nixpkgs/pkgs/development/libraries/belr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belr/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belr";
-  version = "5.1.55";
+  version = "5.2.98";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-0JDwNKqPkzbXqDhgMV+okPMHPFJwmLwLsDrdD55Jcs4=";
+    hash = "sha256-4keVUAsTs1DAhOfV71VD28I0PEHnyvW95blplY690LY=";
   };
 
   buildInputs = [ bctoolbox ];
diff --git a/nixpkgs/pkgs/development/libraries/boost/1.83.nix b/nixpkgs/pkgs/development/libraries/boost/1.83.nix
new file mode 100644
index 000000000000..df5c5a5bbd31
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/boost/1.83.nix
@@ -0,0 +1,14 @@
+{ callPackage, fetchurl, fetchpatch, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "1.83.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_83_0.html
+    sha256 = "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e";
+  };
+})
diff --git a/nixpkgs/pkgs/development/libraries/boost/default.nix b/nixpkgs/pkgs/development/libraries/boost/default.nix
index 7a8902bc395d..7f6422515ace 100644
--- a/nixpkgs/pkgs/development/libraries/boost/default.nix
+++ b/nixpkgs/pkgs/development/libraries/boost/default.nix
@@ -23,4 +23,5 @@ in {
   boost180 = makeBoost ./1.80.nix;
   boost181 = makeBoost ./1.81.nix;
   boost182 = makeBoost ./1.82.nix;
+  boost183 = makeBoost ./1.83.nix;
 }
diff --git a/nixpkgs/pkgs/development/libraries/boost/generic.nix b/nixpkgs/pkgs/development/libraries/boost/generic.nix
index 5de26ef5ce2b..e46c03ed8087 100644
--- a/nixpkgs/pkgs/development/libraries/boost/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/boost/generic.nix
@@ -113,6 +113,13 @@ stdenv.mkDerivation {
     relative = "include";
     sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4=";
   })
+  # Fixes ABI detection
+  ++ lib.optional (version == "1.83.0") (fetchpatch {
+    url = "https://github.com/boostorg/context/commit/6fa6d5c50d120e69b2d8a1c0d2256ee933e94b3b.patch";
+    stripLen = 1;
+    extraPrefix = "libs/context/";
+    sha256 = "sha256-bCfLL7bD1Rn4Ie/P3X+nIcgTkbXdCX6FW7B9lHsmVW8=";
+  })
   # This fixes another issue regarding ill-formed constant expressions, which is a default error
   # in clang 16 and will be a hard error in clang 17.
   ++ lib.optional (lib.versionOlder version "1.80") (fetchpatch {
@@ -149,13 +156,11 @@ stdenv.mkDerivation {
     description = "Collection of C++ libraries";
     license = licenses.boost;
     platforms = platforms.unix ++ platforms.windows;
+    # boost-context lacks support for the N32 ABI on mips64.  The build
+    # will succeed, but packages depending on boost-context will fail with
+    # a very cryptic error message.
+    badPlatforms = [ lib.systems.inspect.patterns.isMips64n32 ];
     maintainers = with maintainers; [ hjones2199 ];
-
-    broken =
-      # boost-context lacks support for the N32 ABI on mips64.  The build
-      # will succeed, but packages depending on boost-context will fail with
-      # a very cryptic error message.
-      stdenv.hostPlatform.isMips64n32;
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/bzrtp/default.nix b/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
index 46ea599cefcc..10cc9b72f77f 100644
--- a/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bzrtp/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bzrtp";
-  version = "5.2.16";
+  version = "5.2.98";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -16,18 +16,19 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    hash = "sha256-nrnGmJxAeobejS6zdn5Z/kOFOxyepZcxW/G4nXAt2DY=";
+    hash = "sha256-p3r8GVhxShTanEI/tS8Dq59I7VKMDX1blz6S236XFqQ=";
   };
 
   buildInputs = [ bctoolbox sqlite ];
   nativeBuildInputs = [ cmake ];
 
   # Do not build static libraries
-  cmakeFlags = [ "-DENABLE_STATIC=NO" "-DCMAKE_C_FLAGS=-Wno-error=cast-function-type" ];
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
 
   env.NIX_CFLAGS_COMPILE = toString [
     # Needed with GCC 12
     "-Wno-error=stringop-overflow"
+    "-Wno-error=unused-parameter"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/cm256cc/default.nix b/nixpkgs/pkgs/development/libraries/cm256cc/default.nix
index 4b49bcbbcc99..0e8b03aa7236 100644
--- a/nixpkgs/pkgs/development/libraries/cm256cc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cm256cc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, boost } :
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, boost } :
 
 stdenv.mkDerivation rec {
   pname = "cm256cc";
@@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-T7ZUVVYGdzAialse//MoqWCVNBpbZvzWMAKc0cw7O9k=";
   };
 
+  patches = [
+    # Pull fix pending upstream inclusion for gcc-13 support:
+    #   https://github.com/f4exb/cm256cc/pull/18
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url = "https://github.com/f4exb/cm256cc/commit/a7f142bcdae8be1c646d67176ba0ba0f7e8dcd68.patch";
+      hash = "sha256-J7bm44sqnGsdPhJxQrE8LDxZ6tkTzLslHQnnKmtgrtM=";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
   buildInputs = [ boost ];
 
diff --git a/nixpkgs/pkgs/development/libraries/discord-gamesdk/default.nix b/nixpkgs/pkgs/development/libraries/discord-gamesdk/default.nix
index 513eebe7124f..86e1a70accde 100644
--- a/nixpkgs/pkgs/development/libraries/discord-gamesdk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/discord-gamesdk/default.nix
@@ -14,9 +14,11 @@ stdenv.mkDerivation rec {
     stripRoot = false;
   };
 
-  nativeBuildInputs = [
-    autoPatchelfHook
-  ];
+  outputs = [ "out" "dev" ];
+
+  buildInputs = [ (stdenv.cc.cc.libgcc or null) ];
+
+  nativeBuildInputs = [ autoPatchelfHook ];
 
   installPhase =
     let
@@ -28,6 +30,8 @@ stdenv.mkDerivation rec {
 
       install -Dm555 lib/${processor}/discord_game_sdk${sharedLibrary} $out/lib/discord_game_sdk${sharedLibrary}
 
+      install -Dm444 c/discord_game_sdk.h $dev/lib/include/discord_game_sdk.h
+
       runHook postInstall
     '';
 
@@ -36,6 +40,7 @@ stdenv.mkDerivation rec {
     description = "Library to allow other programs to interact with the Discord desktop application";
     license = licenses.unfree;
     maintainers = with maintainers; [ tomodachi94 ];
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" "x86_64-windows" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/drogon/default.nix b/nixpkgs/pkgs/development/libraries/drogon/default.nix
index 0eca838dfce8..4c2ec82b0f3c 100644
--- a/nixpkgs/pkgs/development/libraries/drogon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/drogon/default.nix
@@ -7,22 +7,22 @@
 , redisSupport ? false, hiredis
 , mysqlSupport ? false, libmysqlclient, mariadb }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "drogon";
-  version = "1.8.3";
+  version = "1.8.6";
 
   src = fetchFromGitHub {
     owner = "drogonframework";
     repo = "drogon";
-    rev = "v${version}";
-    sha256 = "sha256-I3f/8TMGm1G4CFMJJLyiVYso9yTHjeLefS5eaGySvC4=";
+    rev = "v${finalAttrs.version}";
+    sha256 = "sha256-BYZoMesDquXaphZvnf2Vd/RuOC9jsOjZsGNbDmQ3u+c=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = [
-    "-DBUILD_TESTING=${if doInstallCheck then "ON" else "OFF"}"
+    "-DBUILD_TESTING=${if finalAttrs.finalPackage.doInstallCheck then "ON" else "OFF"}"
     "-DBUILD_EXAMPLES=OFF"
   ];
 
@@ -43,21 +43,19 @@ stdenv.mkDerivation rec {
     # this part of the test would normally fail because it attempts to configure a CMake project that uses find_package on itself
     # this patch makes drogon and trantor visible to the test
     ./fix_find_package.patch
-
-    # see https://github.com/drogonframework/drogon/issues/1491
-    (fetchpatch {
-      url = "https://github.com/drogonframework/drogon/commit/7d87d7e0b264ce53aa5ee006fb022d3516c9d666.patch";
-      sha256 = "sha256-C4zH9oNMfhkaeVNvZuBuzu1v2vNgg/t+YPitbrmHg+Y=";
-    })
   ];
 
   # modifying PATH here makes drogon_ctl visible to the test
   installCheckPhase = ''
-    cd ..
-    PATH=$PATH:$out/bin bash test.sh
+    (
+      cd ..
+      PATH=$PATH:$out/bin $SHELL test.sh
+    )
   '';
 
-  doInstallCheck = true;
+  # this excludes you, pkgsStatic (cmake wants to run built binaries
+  # in the buildPhase)
+  doInstallCheck = stdenv.buildPlatform == stdenv.hostPlatform;
 
   meta = with lib; {
     homepage = "https://github.com/drogonframework/drogon";
@@ -66,4 +64,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ urlordjames ];
     platforms = platforms.all;
   };
-}
+})
diff --git a/nixpkgs/pkgs/development/libraries/dssi/default.nix b/nixpkgs/pkgs/development/libraries/dssi/default.nix
index 697ff1a857b3..322c689ba11a 100644
--- a/nixpkgs/pkgs/development/libraries/dssi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dssi/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ladspaH, libjack2, liblo, alsa-lib, qt4, libX11, libsndfile, libSM
+{ lib, stdenv, fetchurl, ladspaH, libjack2, liblo, alsa-lib, libX11, libsndfile, libSM
 , libsamplerate, libtool, autoconf, automake, xorgproto, libICE, pkg-config
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoconf automake pkg-config ];
   buildInputs =
-    [ ladspaH libjack2 liblo alsa-lib qt4 libX11 libsndfile libSM
+    [ ladspaH libjack2 liblo alsa-lib libX11 libsndfile libSM
       libsamplerate libtool xorgproto libICE
     ];
 
diff --git a/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/default.nix b/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/default.nix
deleted file mode 100644
index 9f340545584f..000000000000
--- a/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkg-config }:
-
-stdenv.mkDerivation {
-  pname = "elementary-cmake-modules";
-  version = "0.1.0";
-
-  src = fetchFromGitHub {
-    owner = "elementary";
-    repo = "cmake-modules";
-    rev = "319ec5336e9f05f3f22b886cc2053ef3d4b6599e";
-    sha256 = "191hhvdxyqvh9axzndaqld7vrmv7xkn0czks908zhb2zpjhv9rby";
-  };
-
-  prePatch = ''
-    substituteInPlace CMakeLists.txt  \
-      --replace ' ''${CMAKE_ROOT}/Modules' " $out/lib/cmake"
-  '';
-
-  propagatedBuildInputs = [ cmake pkg-config ];
-
-  setupHook = ./setup-hook.sh;
-
-  meta = with lib; {
-    platforms = platforms.linux ++ platforms.darwin;
-    homepage = "https://github.com/elementary/cmake-modules";
-    license = licenses.gpl3Plus;
-    maintainers = [ maintainers.samdroid-apps ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/setup-hook.sh b/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/setup-hook.sh
deleted file mode 100644
index 6408ac471577..000000000000
--- a/nixpkgs/pkgs/development/libraries/elementary-cmake-modules/setup-hook.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-_elementaryCMakeEnvHook() {
-  cmakeFlagsArray+=(-DCMAKE_MODULE_PATH=@out@/lib/cmake)
-}
-addEnvHooks "$targetOffset" _elementaryCMakeEnvHook
diff --git a/nixpkgs/pkgs/development/libraries/exempi/default.nix b/nixpkgs/pkgs/development/libraries/exempi/default.nix
index 54bab95992c0..ac45084a74f9 100644
--- a/nixpkgs/pkgs/development/libraries/exempi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/exempi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "exempi";
-  version = "2.6.3";
+  version = "2.6.4";
 
   src = fetchurl {
     url = "https://libopenraw.freedesktop.org/download/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-sHSdsYqeeM93FzeVSoOM3NsdVBWIi6wbqcr4y6d8ZWw=";
+    sha256 = "sha256-p1FJyWth45zcsEb9XlbYjP7qtuCPiU4V6//ZlECSv9A=";
   };
 
   configureFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/exiv2/default.nix b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
index d1cd4894f1f5..0c4c339c6390 100644
--- a/nixpkgs/pkgs/development/libraries/exiv2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
@@ -88,6 +88,12 @@ stdenv.mkDerivation rec {
      ''}
   '' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
     export LC_ALL=C
+  '' + lib.optionalString stdenv.isAarch32 ''
+    # these tests are fixed in 0.28, remove when updating to 0.28
+    rm -f ../tests/bugfixes/github/test_issue_1503.py
+    rm -f ../tests/bugfixes/github/test_pr1475_AVIF.py
+    rm -f ../tests/bugfixes/github/test_pr1475_HEIC.py
+    rm -f ../tests/bugfixes/github/test_pr1475_HIF.py
   '';
 
   # With CMake we have to enable samples or there won't be
diff --git a/nixpkgs/pkgs/development/libraries/fortify-headers/default.nix b/nixpkgs/pkgs/development/libraries/fortify-headers/default.nix
index befead87e6a1..2c24665456b7 100644
--- a/nixpkgs/pkgs/development/libraries/fortify-headers/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fortify-headers/default.nix
@@ -5,14 +5,14 @@
 
 stdenv.mkDerivation {
   pname = "fortify-headers";
-  version = "1.1alpine1";
+  version = "1.1alpine3";
 
   # upstream only accessible via git - unusable during bootstrap, hence
   # extract from the alpine package
   src = fetchurl {
-    url = "https://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/fortify-headers-1.1-r1.apk";
+    url = "https://dl-cdn.alpinelinux.org/alpine/v3.18/main/x86_64/fortify-headers-1.1-r3.apk";
     name = "fortify-headers.tar.gz";  # ensure it's extracted as a .tar.gz
-    hash = "sha256-A67NzUv+dldARY+MTaoVnezTg+Es8ZK/b7XOxA6KzpI=";
+    hash = "sha256-8A8JcKHIBgXpUuIP4zs3Q1yBs5jCGd5F3H2E8UN/S2g=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/development/libraries/ganv/default.nix b/nixpkgs/pkgs/development/libraries/ganv/default.nix
index d53206ca667b..9818afa9412a 100644
--- a/nixpkgs/pkgs/development/libraries/ganv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ganv/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, graphviz, gtk2, gtkmm2, pkg-config, python3, wafHook }:
+{ lib, stdenv, fetchgit, graphviz, gtk2, gtkmm2, pkg-config, python3, waf }:
 
 stdenv.mkDerivation rec {
   pname = "ganv";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "01znnalirbqxpz62fbw2c14c8xn117jc92xv6dhb3hln92k9x37f";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook python3 gtk2 ];
+  nativeBuildInputs = [ pkg-config waf.hook python3 gtk2 ];
   buildInputs = [ graphviz gtkmm2 ];
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/development/libraries/geos/default.nix b/nixpkgs/pkgs/development/libraries/geos/default.nix
index 49dc54c20fd5..5c2369cf4410 100644
--- a/nixpkgs/pkgs/development/libraries/geos/default.nix
+++ b/nixpkgs/pkgs/development/libraries/geos/default.nix
@@ -1,5 +1,6 @@
 { lib
 , fetchurl
+, fetchpatch
 , stdenv
 , testers
 , cmake
@@ -14,6 +15,16 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-sfB3ZpSBxaPmKv/EnpbrBvKBmHpdNv2rIlIX5bgl5Mw=";
   };
 
+  patches = [
+    # Pull upstream fix of `gcc-13` build failure:
+    #   https://github.com/libgeos/geos/pull/805
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url = "https://github.com/libgeos/geos/commit/bea3188be44075034fd349f5bb117c943bdb7fb1.patch";
+      hash = "sha256-dQT3Hf9YJchgjon/r46TLIXXbE6C0ZnewyvfYJea4jM=";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/libraries/gf2x/default.nix b/nixpkgs/pkgs/development/libraries/gf2x/default.nix
index 5060f1b65c69..70d06c107fd5 100644
--- a/nixpkgs/pkgs/development/libraries/gf2x/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gf2x/default.nix
@@ -1,6 +1,6 @@
 { stdenv
 , lib
-, fetchgit
+, fetchFromGitLab
 , autoreconfHook
 , buildPackages
 , optimize ? false # impure hardware optimizations
@@ -9,11 +9,11 @@ stdenv.mkDerivation rec {
   pname = "gf2x";
   version = "1.3.0";
 
-  # upstream has plans to move to gitlab:
-  # https://github.com/NixOS/nixpkgs/pull/45299#issuecomment-564477936
-  src = fetchgit {
-    url = "https://scm.gforge.inria.fr/anonscm/git/gf2x/gf2x.git";
-    rev = "gf2x-${version}";
+  src = fetchFromGitLab {
+    domain = "gitlab.inria.fr";
+    owner = "gf2x";
+    repo = pname;
+    rev = "${pname}-${version}";
     sha256 = "04g5jg0i4vz46b4w2dvbmahwzi3k6b8g515mfw7im1inc78s14id";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/glpk/default.nix b/nixpkgs/pkgs/development/libraries/glpk/default.nix
index e8b01d6d2e7d..a78170909caa 100644
--- a/nixpkgs/pkgs/development/libraries/glpk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glpk/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     # https://trac.sagemath.org/ticket/20710#comment:18
     (fetchpatch {
       name = "error_recovery.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/glpk/patches/error_recovery.patch?id=d3c1f607e32f964bf0cab877a63767c86fd00266";
+      url = "https://raw.githubusercontent.com/sagemath/sage/d3c1f607e32f964bf0cab877a63767c86fd00266/build/pkgs/glpk/patches/error_recovery.patch";
       sha256 = "sha256-2hNtUEoGTFt3JgUvLH3tPWnz+DZcXNhjXzS+/V89toA=";
     })
   ];
diff --git a/nixpkgs/pkgs/development/libraries/gmime/3.nix b/nixpkgs/pkgs/development/libraries/gmime/3.nix
index e5a70f234872..8f20d756c1f9 100644
--- a/nixpkgs/pkgs/development/libraries/gmime/3.nix
+++ b/nixpkgs/pkgs/development/libraries/gmime/3.nix
@@ -2,12 +2,12 @@
 , vala }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.12";
+  version = "3.2.14";
   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-OPm3aBgjQsSExBIobbjVgRaX/4FiQ3wFea3w0G4icFs=";
+    sha256 = "sha256-pes91nX3LlRci8HNEhB+Sq0ursGQXre0ATzbH75eIxc=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/rs/Cargo.lock b/nixpkgs/pkgs/development/libraries/gstreamer/rs/Cargo.lock
index 976126eecb53..6a3ecc43d739 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/rs/Cargo.lock
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/rs/Cargo.lock
@@ -61,21 +61,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "ahash"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
-dependencies = [
- "getrandom",
- "once_cell",
- "version_check",
-]
-
-[[package]]
 name = "aho-corasick"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
+checksum = "86b8f9420f797f2d9e935edf629310eb938a0d839f984e25327f3c7eed22300c"
 dependencies = [
  "memchr",
 ]
@@ -136,9 +125,9 @@ dependencies = [
 
 [[package]]
 name = "anstyle-wincon"
-version = "1.0.1"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188"
+checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c"
 dependencies = [
  "anstyle",
  "windows-sys",
@@ -197,7 +186,29 @@ checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
+]
+
+[[package]]
+name = "async-stream"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51"
+dependencies = [
+ "async-stream-impl",
+ "futures-core",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "async-stream-impl"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -208,20 +219,20 @@ checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae"
 
 [[package]]
 name = "async-trait"
-version = "0.1.71"
+version = "0.1.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a564d521dd56509c4c47480d00b80ee55f7e385ae48db5744c67ad50c92d2ebf"
+checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
 name = "async-tungstenite"
-version = "0.22.2"
+version = "0.23.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce01ac37fdc85f10a43c43bc582cbd566720357011578a935761075f898baf58"
+checksum = "a1e9efbe14612da0a19fb983059a0b621e9cf6225d7018ecab4f9988215540dc"
 dependencies = [
  "futures-io",
  "futures-util",
@@ -230,7 +241,7 @@ dependencies = [
  "pin-project-lite",
  "tokio",
  "tokio-native-tls",
- "tungstenite",
+ "tungstenite 0.20.0",
 ]
 
 [[package]]
@@ -274,9 +285,9 @@ dependencies = [
 
 [[package]]
 name = "aws-config"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcdcf0d683fe9c23d32cf5b53c9918ea0a500375a9fb20109802552658e576c9"
+checksum = "de3d533e0263bf453cc80af4c8bcc4d64e2aca293bd16f81633a36f1bf4a97cb"
 dependencies = [
  "aws-credential-types",
  "aws-http",
@@ -290,12 +301,12 @@ dependencies = [
  "aws-smithy-types",
  "aws-types",
  "bytes",
- "fastrand 1.9.0",
+ "fastrand",
  "hex",
  "http",
  "hyper",
  "ring",
- "time 0.3.20",
+ "time 0.3.25",
  "tokio",
  "tower",
  "tracing",
@@ -304,69 +315,124 @@ dependencies = [
 
 [[package]]
 name = "aws-credential-types"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fcdb2f7acbc076ff5ad05e7864bdb191ca70a6fd07668dc3a1a8bcd051de5ae"
+checksum = "e4834ba01c5ad1ed9740aa222de62190e3c565d11ab7e72cc68314a258994567"
 dependencies = [
  "aws-smithy-async",
  "aws-smithy-types",
- "fastrand 1.9.0",
+ "fastrand",
  "tokio",
  "tracing",
  "zeroize",
 ]
 
 [[package]]
-name = "aws-endpoint"
-version = "0.55.3"
+name = "aws-http"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cce1c41a6cfaa726adee9ebb9a56fcd2bbfd8be49fd8a04c5e20fd968330b04"
+checksum = "72badf9de83cc7d66b21b004f09241836823b8302afb25a24708769e576a8d8f"
 dependencies = [
+ "aws-credential-types",
  "aws-smithy-http",
  "aws-smithy-types",
  "aws-types",
+ "bytes",
+ "http",
+ "http-body",
+ "lazy_static",
+ "percent-encoding",
+ "pin-project-lite",
+ "tracing",
+]
+
+[[package]]
+name = "aws-runtime"
+version = "0.56.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf832f522111225c02547e1e1c28137e840e4b082399d93a236e4b29193a4667"
+dependencies = [
+ "aws-credential-types",
+ "aws-http",
+ "aws-sigv4",
+ "aws-smithy-async",
+ "aws-smithy-eventstream",
+ "aws-smithy-http",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
+ "aws-types",
+ "fastrand",
+ "http",
+ "percent-encoding",
+ "tracing",
+ "uuid",
+]
+
+[[package]]
+name = "aws-sdk-kinesisvideo"
+version = "0.29.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d12ca8af73af5453ecde2a4cc3df43eb6d623552bd3899692bfc92c6ddd1463"
+dependencies = [
+ "aws-credential-types",
+ "aws-http",
+ "aws-runtime",
+ "aws-smithy-async",
+ "aws-smithy-client",
+ "aws-smithy-http",
+ "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
+ "aws-types",
+ "bytes",
  "http",
  "regex",
+ "tokio-stream",
  "tracing",
 ]
 
 [[package]]
-name = "aws-http"
-version = "0.55.3"
+name = "aws-sdk-kinesisvideosignaling"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aadbc44e7a8f3e71c8b374e03ecd972869eb91dd2bc89ed018954a52ba84bc44"
+checksum = "e4d880336d747d5207a74b656d8a229401142598fa36cab9163ac221946d517d"
 dependencies = [
  "aws-credential-types",
+ "aws-http",
+ "aws-runtime",
+ "aws-smithy-async",
+ "aws-smithy-client",
  "aws-smithy-http",
+ "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
  "bytes",
  "http",
- "http-body",
- "lazy_static",
- "percent-encoding",
- "pin-project-lite",
+ "regex",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sdk-s3"
-version = "0.28.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fba197193cbb4bcb6aad8d99796b2291f36fa89562ded5d4501363055b0de89f"
+checksum = "1e30370b61599168d38190ad272bb91842cd81870a6ca035c05dd5726d22832c"
 dependencies = [
  "aws-credential-types",
- "aws-endpoint",
  "aws-http",
- "aws-sig-auth",
+ "aws-runtime",
  "aws-sigv4",
  "aws-smithy-async",
  "aws-smithy-checksums",
  "aws-smithy-client",
  "aws-smithy-eventstream",
  "aws-smithy-http",
- "aws-smithy-http-tower",
  "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-smithy-xml",
  "aws-types",
@@ -377,96 +443,118 @@ dependencies = [
  "percent-encoding",
  "regex",
  "tokio-stream",
- "tower",
  "tracing",
  "url",
 ]
 
 [[package]]
 name = "aws-sdk-sso"
-version = "0.28.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8b812340d86d4a766b2ca73f740dfd47a97c2dff0c06c8517a16d88241957e4"
+checksum = "f41bf2c28d32dbb9894a8fcfcb148265d034d3f4a170552a47553a09de890895"
 dependencies = [
  "aws-credential-types",
- "aws-endpoint",
  "aws-http",
- "aws-sig-auth",
+ "aws-runtime",
  "aws-smithy-async",
  "aws-smithy-client",
  "aws-smithy-http",
- "aws-smithy-http-tower",
  "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
  "bytes",
  "http",
  "regex",
  "tokio-stream",
- "tower",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sdk-sts"
-version = "0.28.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "265fac131fbfc188e5c3d96652ea90ecc676a934e3174eaaee523c6cec040b3b"
+checksum = "79e21aa1a5b0853969a1ef96ccfaa8ff5d57c761549786a4d5f86c1902b2586a"
 dependencies = [
  "aws-credential-types",
- "aws-endpoint",
  "aws-http",
- "aws-sig-auth",
+ "aws-runtime",
  "aws-smithy-async",
  "aws-smithy-client",
  "aws-smithy-http",
- "aws-smithy-http-tower",
  "aws-smithy-json",
  "aws-smithy-query",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-smithy-xml",
  "aws-types",
+ "http",
+ "regex",
+ "tracing",
+]
+
+[[package]]
+name = "aws-sdk-transcribestreaming"
+version = "0.29.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12669c64c03c04e207ff14994791a3a508ae4dc55b0b73f31182171d19b04989"
+dependencies = [
+ "aws-credential-types",
+ "aws-http",
+ "aws-runtime",
+ "aws-sigv4",
+ "aws-smithy-async",
+ "aws-smithy-client",
+ "aws-smithy-eventstream",
+ "aws-smithy-http",
+ "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
+ "aws-types",
  "bytes",
  "http",
+ "hyper",
  "regex",
- "tower",
  "tracing",
 ]
 
 [[package]]
-name = "aws-sdk-transcribe"
-version = "0.28.0"
+name = "aws-sdk-translate"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6b561d56e7989062837c92f3cee6802f1b9cdb81b248bcc47790e38de1b96ab"
+checksum = "336147dbb8f9d406dea0bbe5ef057ec4761d4134e7c8eb915db503d7081c6da7"
 dependencies = [
  "aws-credential-types",
- "aws-endpoint",
  "aws-http",
- "aws-sig-auth",
+ "aws-runtime",
  "aws-smithy-async",
  "aws-smithy-client",
  "aws-smithy-http",
- "aws-smithy-http-tower",
  "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
  "bytes",
+ "fastrand",
  "http",
  "regex",
  "tokio-stream",
- "tower",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sig-auth"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b94acb10af0c879ecd5c7bdf51cda6679a0a4f4643ce630905a77673bfa3c61"
+checksum = "d861c220cd86e3d3e84b8fabddd6b7c29fbd8234715ebb71e063a64689d66bc0"
 dependencies = [
  "aws-credential-types",
  "aws-sigv4",
- "aws-smithy-eventstream",
+ "aws-smithy-async",
  "aws-smithy-http",
  "aws-types",
  "http",
@@ -475,9 +563,9 @@ dependencies = [
 
 [[package]]
 name = "aws-sigv4"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d2ce6f507be68e968a33485ced670111d1cbad161ddbbab1e313c03d37d8f4c"
+checksum = "2cb40a93429794065f41f0581734fc56a345f6a38d8e2e3c25c7448d930cd132"
 dependencies = [
  "aws-smithy-eventstream",
  "aws-smithy-http",
@@ -490,15 +578,15 @@ dependencies = [
  "percent-encoding",
  "regex",
  "sha2",
- "time 0.3.20",
+ "time 0.3.25",
  "tracing",
 ]
 
 [[package]]
 name = "aws-smithy-async"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13bda3996044c202d75b91afeb11a9afae9db9a721c6a7a427410018e286b880"
+checksum = "6ee6d17d487c8b579423067718b3580c0908d0f01d7461813f94ec4323bad623"
 dependencies = [
  "futures-util",
  "pin-project-lite",
@@ -508,9 +596,9 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-checksums"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07ed8b96d95402f3f6b8b57eb4e0e45ee365f78b1a924faf20ff6e97abf1eae6"
+checksum = "0d1849fd5916904513fb0862543b36f8faab43c07984dbc476132b7da1aed056"
 dependencies = [
  "aws-smithy-http",
  "aws-smithy-types",
@@ -529,16 +617,16 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-client"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a86aa6e21e86c4252ad6a0e3e74da9617295d8d6e374d552be7d3059c41cedd"
+checksum = "bdbe0a3ad15283cc5f863a68cb6adc8e256e7c109c43c01bdd09be407219a1e9"
 dependencies = [
  "aws-smithy-async",
  "aws-smithy-http",
  "aws-smithy-http-tower",
  "aws-smithy-types",
  "bytes",
- "fastrand 1.9.0",
+ "fastrand",
  "http",
  "http-body",
  "hyper",
@@ -553,9 +641,9 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-eventstream"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "460c8da5110835e3d9a717c61f5556b20d03c32a1dec57f8fc559b360f733bb8"
+checksum = "a56afef1aa766f512b4970b4c3150b9bf2df8035939723830df4b30267e2d7cb"
 dependencies = [
  "aws-smithy-types",
  "bytes",
@@ -564,9 +652,9 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-http"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b3b693869133551f135e1f2c77cb0b8277d9e3e17feaf2213f735857c4f0d28"
+checksum = "34dc313472d727f5ef44fdda93e668ebfe17380c99dee512c403e3ca51863bb9"
 dependencies = [
  "aws-smithy-eventstream",
  "aws-smithy-types",
@@ -587,9 +675,9 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-http-tower"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ae4f6c5798a247fac98a867698197d9ac22643596dc3777f0c76b91917616b9"
+checksum = "1dd50fca5a4ea4ec3771689ee93bf06b32de02a80af01ed93a8f8a4ed90e8483"
 dependencies = [
  "aws-smithy-http",
  "aws-smithy-types",
@@ -603,50 +691,88 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-json"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23f9f42fbfa96d095194a632fbac19f60077748eba536eb0b9fecc28659807f8"
+checksum = "3591dd7c2fe01ab8025e4847a0a0f6d0c2b2269714688ffb856f9cf6c6d465cf"
 dependencies = [
  "aws-smithy-types",
 ]
 
 [[package]]
 name = "aws-smithy-query"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98819eb0b04020a1c791903533b638534ae6c12e2aceda3e6e6fba015608d51d"
+checksum = "dbabb1145e65dd57ae72d91a2619d3f5fba40b68a5f40ba009c30571dfd60aff"
 dependencies = [
  "aws-smithy-types",
  "urlencoding",
 ]
 
 [[package]]
+name = "aws-smithy-runtime"
+version = "0.56.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3687fb838d4ad1c883b62eb59115bc9fb02c4f308aac49a7df89627067f6eb0d"
+dependencies = [
+ "aws-smithy-async",
+ "aws-smithy-client",
+ "aws-smithy-http",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
+ "bytes",
+ "fastrand",
+ "http",
+ "http-body",
+ "once_cell",
+ "pin-project-lite",
+ "pin-utils",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
+name = "aws-smithy-runtime-api"
+version = "0.56.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cfbf1e5c2108b41f5ca607cde40dd5109fecc448f5d30c8e614b61f36dce704"
+dependencies = [
+ "aws-smithy-async",
+ "aws-smithy-http",
+ "aws-smithy-types",
+ "bytes",
+ "http",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
 name = "aws-smithy-types"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16a3d0bf4f324f4ef9793b86a1701d9700fbcdbd12a846da45eed104c634c6e8"
+checksum = "eed0a94eefd845a2a78677f1b72f02fa75802d38f7f59be675add140279aa8bf"
 dependencies = [
  "base64-simd",
  "itoa",
  "num-integer",
  "ryu",
- "time 0.3.20",
+ "serde",
+ "time 0.3.25",
 ]
 
 [[package]]
 name = "aws-smithy-xml"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1b9d12875731bd07e767be7baad95700c3137b56730ec9ddeedb52a5e5ca63b"
+checksum = "c88052c812f696143ad7ba729c63535209ff0e0f49e31a6d2b1205208ea6ea79"
 dependencies = [
  "xmlparser",
 ]
 
 [[package]]
 name = "aws-types"
-version = "0.55.3"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6dd209616cc8d7bfb82f87811a5c655dc97537f592689b18743bddf5dc5c4829"
+checksum = "6bceb8cf724ad057ad7f327d0d256d7147b3eac777b39849a26189e003dc9782"
 dependencies = [
  "aws-credential-types",
  "aws-smithy-async",
@@ -659,20 +785,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "backoff"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
-dependencies = [
- "futures-core",
- "getrandom",
- "instant",
- "pin-project-lite",
- "rand",
- "tokio",
-]
-
-[[package]]
 name = "backtrace"
 version = "0.3.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -706,6 +818,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d"
 
 [[package]]
+name = "base64-serde"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba368df5de76a5bea49aaf0cf1b39ccfbbef176924d1ba5db3e4135216cbe3c7"
+dependencies = [
+ "base64 0.21.2",
+ "serde",
+]
+
+[[package]]
 name = "base64-simd"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -817,10 +939,10 @@ dependencies = [
 
 [[package]]
 name = "cairo-rs"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.3.3",
  "cairo-sys-rs",
  "glib",
  "libc",
@@ -830,8 +952,8 @@ dependencies = [
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -852,11 +974,12 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.79"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
+checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01"
 dependencies = [
  "jobserver",
+ "libc",
 ]
 
 [[package]]
@@ -876,10 +999,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "cea708-types"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a23ec736ab2aafb861ef6f22c662cbc18c85e73945f86bd9e936a20be7cc958"
+dependencies = [
+ "once_cell",
+ "tracing",
+ "tracing-subscriber",
+]
+
+[[package]]
 name = "cfg-expr"
-version = "0.15.3"
+version = "0.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "215c0072ecc28f92eeb0eea38ba63ddfcb65c2828c46311d646f1a3ff5f9841c"
+checksum = "b40ccee03b5175c18cde8f37e7d2a33bcef6f8ec8f7cc0d81090d1bb380949c9"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -901,6 +1035,7 @@ dependencies = [
  "iana-time-zone",
  "js-sys",
  "num-traits",
+ "serde",
  "time 0.1.45",
  "wasm-bindgen",
  "winapi",
@@ -917,9 +1052,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.3.16"
+version = "4.3.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74bb1b4028935821b2d6b439bba2e970bdcf740832732437ead910c632e30d7d"
+checksum = "c27cdf28c0f604ba3f512b0c9a409f8de8513e4816705deb0498b627e7c3a3fd"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -928,9 +1063,9 @@ dependencies = [
 
 [[package]]
 name = "clap_builder"
-version = "4.3.16"
+version = "4.3.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ae467cbb0111869b765e13882a1dbbd6cb52f58203d8b80c44f667d4dd19843"
+checksum = "08a9f1ab5e9f01a9b81f202e8562eb9a10de70abf9eaeac1be465c28b75aa4aa"
 dependencies = [
  "anstream",
  "anstyle",
@@ -947,7 +1082,7 @@ dependencies = [
  "heck",
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -1004,7 +1139,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb"
 dependencies = [
  "percent-encoding",
- "time 0.3.20",
+ "time 0.3.25",
  "version_check",
 ]
 
@@ -1021,7 +1156,7 @@ dependencies = [
  "serde",
  "serde_derive",
  "serde_json",
- "time 0.3.20",
+ "time 0.3.25",
  "url",
 ]
 
@@ -1060,25 +1195,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "crc"
-version = "3.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe"
-dependencies = [
- "crc-catalog",
-]
-
-[[package]]
-name = "crc-catalog"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484"
-
-[[package]]
 name = "crc32c"
-version = "0.6.3"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dfea2db42e9927a3845fb268a10a72faed6d416065f77873f05e411457c363e"
+checksum = "d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74"
 dependencies = [
  "rustc_version",
 ]
@@ -1187,6 +1307,63 @@ dependencies = [
 ]
 
 [[package]]
+name = "darling"
+version = "0.20.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e"
+dependencies = [
+ "darling_core",
+ "darling_macro",
+]
+
+[[package]]
+name = "darling_core"
+version = "0.20.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim",
+ "syn 2.0.28",
+]
+
+[[package]]
+name = "darling_macro"
+version = "0.20.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
+dependencies = [
+ "darling_core",
+ "quote",
+ "syn 2.0.28",
+]
+
+[[package]]
+name = "dash-mpd"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d0c74b03285fe95649f588140b6009dc10bc4f747bd774818ed8e9cc6b5cbb6"
+dependencies = [
+ "base64 0.21.2",
+ "base64-serde",
+ "chrono",
+ "fs-err",
+ "iso8601",
+ "log",
+ "num-traits",
+ "quick-xml",
+ "regex",
+ "serde",
+ "serde_with",
+ "thiserror",
+ "tokio",
+ "xattr",
+]
+
+[[package]]
 name = "dasp_frame"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1228,6 +1405,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "deranged"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7684a49fb1af197853ef7b2ee694bc1f5b4179556f1e5710e1760c5db6f5e929"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "diff"
 version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1288,9 +1474,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
 
 [[package]]
 name = "encoding_rs"
@@ -1334,9 +1520,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.1"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
+checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
 dependencies = [
  "errno-dragonfly",
  "libc",
@@ -1355,15 +1541,6 @@ dependencies = [
 
 [[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.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
@@ -1382,7 +1559,7 @@ name = "ffv1"
 version = "0.0.0"
 source = "git+https://github.com/rust-av/ffv1.git?rev=2afb025a327173ce891954c052e804d0f880368a#2afb025a327173ce891954c052e804d0f880368a"
 dependencies = [
- "crc 1.8.1",
+ "crc",
  "num-traits",
  "thiserror",
 ]
@@ -1465,6 +1642,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "fs-err"
+version = "2.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0845fa252299212f0389d64ba26f34fa32cfe41588355f21ed507c59a0f64541"
+
+[[package]]
 name = "fst"
 version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1526,7 +1709,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -1561,10 +1744,9 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
  "gdk-pixbuf-sys",
  "gio",
  "glib",
@@ -1574,8 +1756,8 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -1586,10 +1768,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
- "bitflags 1.3.2",
  "cairo-rs",
  "gdk-pixbuf",
  "gdk4-sys",
@@ -1601,8 +1782,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1617,8 +1798,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "gdk4",
  "gdk4-wayland-sys",
@@ -1629,8 +1810,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1639,8 +1820,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "gdk4",
  "gdk4-win32-sys",
@@ -1653,8 +1834,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "gdk-pixbuf-sys",
  "gdk4-sys",
@@ -1665,8 +1846,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "gdk4",
  "gdk4-x11-sys",
@@ -1677,8 +1858,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -1736,10 +1917,9 @@ checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
 
 [[package]]
 name = "gio"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
  "futures-channel",
  "futures-core",
  "futures-io",
@@ -1755,8 +1935,8 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -1767,10 +1947,10 @@ dependencies = [
 
 [[package]]
 name = "glib"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.3.3",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -1789,22 +1969,21 @@ dependencies = [
 
 [[package]]
 name = "glib-macros"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "anyhow",
  "heck",
  "proc-macro-crate",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.28",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "libc",
  "system-deps",
@@ -1818,8 +1997,8 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "gobject-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1828,8 +2007,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -1838,8 +2017,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1849,10 +2028,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
- "bitflags 1.3.2",
  "cairo-rs",
  "gdk4",
  "glib",
@@ -1864,8 +2042,8 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -1879,7 +2057,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-audiofx"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -1894,31 +2072,27 @@ dependencies = [
  "hrtf",
  "nnnoiseless",
  "num-traits",
- "once_cell",
  "rayon",
  "smallvec",
 ]
 
 [[package]]
 name = "gst-plugin-aws"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
- "async-tungstenite",
- "atomic_refcell",
+ "async-stream",
  "aws-config",
  "aws-credential-types",
  "aws-sdk-s3",
- "aws-sdk-transcribe",
+ "aws-sdk-transcribestreaming",
+ "aws-sdk-translate",
  "aws-sig-auth",
  "aws-smithy-http",
  "aws-smithy-types",
  "aws-types",
- "backoff",
  "base32",
- "byteorder",
  "bytes",
  "chrono",
- "crc 3.0.1",
  "env_logger 0.10.0",
  "futures",
  "gio",
@@ -1928,8 +2102,6 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-check",
  "http",
- "nom",
- "once_cell",
  "percent-encoding",
  "rand",
  "serde",
@@ -1942,7 +2114,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-cdg"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "cdg",
  "cdg_renderer",
@@ -1953,12 +2125,11 @@ dependencies = [
  "gstreamer-video",
  "image",
  "muldiv",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-claxon"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -1972,13 +2143,14 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-closedcaption"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "atomic_refcell",
  "byteorder",
  "cairo-rs",
  "cc",
+ "cea708-types",
  "chrono",
  "either",
  "gst-plugin-version-helper",
@@ -1987,7 +2159,6 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "nom",
- "once_cell",
  "pango",
  "pangocairo",
  "pretty_assertions",
@@ -1999,7 +2170,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-csound"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "byte-slice-cast",
  "csound",
@@ -2008,12 +2179,11 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-base",
  "gstreamer-check",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-dav1d"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "dav1d",
  "gst-plugin-version-helper",
@@ -2021,12 +2191,11 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "num_cpus",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-fallbackswitch"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2038,13 +2207,12 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "gtk4",
- "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-ffv1"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "byte-slice-cast",
  "ffv1",
@@ -2052,23 +2220,21 @@ dependencies = [
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-file"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-base",
- "once_cell",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-flavors"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "byteorder",
  "flavors",
@@ -2079,16 +2245,16 @@ dependencies = [
  "muldiv",
  "nom",
  "num-rational",
- "once_cell",
  "smallvec",
 ]
 
 [[package]]
 name = "gst-plugin-fmp4"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "chrono",
+ "dash-mpd",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-app",
@@ -2098,12 +2264,13 @@ dependencies = [
  "gstreamer-pbutils",
  "gstreamer-video",
  "m3u8-rs",
- "once_cell",
+ "quick-xml",
+ "serde",
 ]
 
 [[package]]
 name = "gst-plugin-gif"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "gif",
@@ -2116,7 +2283,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-gtk4"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gdk4-wayland",
  "gdk4-win32",
@@ -2130,13 +2297,12 @@ dependencies = [
  "gstreamer-gl-x11",
  "gstreamer-video",
  "gtk4",
- "once_cell",
  "windows-sys",
 ]
 
 [[package]]
 name = "gst-plugin-hlssink3"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gio",
  "glib",
@@ -2152,7 +2318,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-hsv"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2162,24 +2328,22 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "num-traits",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-json"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
- "once_cell",
  "serde",
  "serde_json",
 ]
 
 [[package]]
 name = "gst-plugin-lewton"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2188,12 +2352,11 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-check",
  "lewton",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-livesync"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2204,13 +2367,12 @@ dependencies = [
  "gtk4",
  "muldiv",
  "num-rational",
- "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-mp4"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "gst-plugin-version-helper",
@@ -2219,14 +2381,13 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-pbutils",
  "gstreamer-video",
- "once_cell",
  "tempfile",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-ndi"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2238,12 +2399,11 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "libloading",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-onvif"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "cairo-rs",
  "chrono",
@@ -2252,7 +2412,6 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-rtp",
  "gstreamer-video",
- "once_cell",
  "pango",
  "pangocairo",
  "xmlparser",
@@ -2261,7 +2420,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-png"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2274,45 +2433,42 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-raptorq"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-base",
  "gstreamer-check",
  "gstreamer-rtp",
- "once_cell",
  "rand",
  "raptorq",
 ]
 
 [[package]]
 name = "gst-plugin-rav1e"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
- "once_cell",
  "rav1e",
 ]
 
 [[package]]
 name = "gst-plugin-regex"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
- "once_cell",
  "regex",
 ]
 
 [[package]]
 name = "gst-plugin-reqwest"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "futures",
  "gst-plugin-version-helper",
@@ -2321,7 +2477,6 @@ dependencies = [
  "headers",
  "hyper",
  "mime",
- "once_cell",
  "reqwest",
  "tokio",
  "url",
@@ -2329,7 +2484,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-rtp"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "bitstream-io",
  "chrono",
@@ -2337,12 +2492,11 @@ dependencies = [
  "gstreamer",
  "gstreamer-check",
  "gstreamer-rtp",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-sodium"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "clap",
  "gst-plugin-version-helper",
@@ -2362,7 +2516,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-spotify"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "futures",
@@ -2370,35 +2524,32 @@ dependencies = [
  "gstreamer",
  "gstreamer-base",
  "librespot",
- "once_cell",
  "tokio",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-textahead"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-textwrap"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "hyphenation",
- "once_cell",
  "textwrap",
 ]
 
 [[package]]
 name = "gst-plugin-threadshare"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "async-task",
  "cc",
@@ -2428,7 +2579,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-togglerecord"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "either",
  "gio",
@@ -2436,27 +2587,26 @@ dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-audio",
+ "gstreamer-check",
  "gstreamer-video",
  "gtk4",
- "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-tracers"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "gst-plugin-version-helper",
  "gstreamer",
- "once_cell",
  "regex",
  "signal-hook",
 ]
 
 [[package]]
 name = "gst-plugin-tutorial"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2465,12 +2615,11 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "num-traits",
- "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-uriplaylistbin"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "clap",
@@ -2478,7 +2627,6 @@ dependencies = [
  "gstreamer",
  "gstreamer-app",
  "more-asserts",
- "once_cell",
  "thiserror",
  "url",
 ]
@@ -2492,7 +2640,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-videofx"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "atomic_refcell",
  "cairo-rs",
@@ -2506,31 +2654,40 @@ dependencies = [
  "gstreamer-video",
  "image",
  "image_hasher",
- "once_cell",
  "rgb",
 ]
 
 [[package]]
 name = "gst-plugin-webp"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
  "libwebp-sys2",
- "once_cell",
  "pretty_assertions",
 ]
 
 [[package]]
 name = "gst-plugin-webrtc"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
+ "async-recursion",
  "async-tungstenite",
+ "aws-config",
+ "aws-credential-types",
+ "aws-sdk-kinesisvideo",
+ "aws-sdk-kinesisvideosignaling",
+ "aws-sig-auth",
+ "aws-smithy-http",
+ "aws-smithy-types",
+ "aws-types",
+ "chrono",
  "clap",
- "fastrand 2.0.0",
+ "data-encoding",
+ "fastrand",
  "futures",
  "gst-plugin-version-helper",
  "gst-plugin-webrtc-signalling-protocol",
@@ -2542,8 +2699,13 @@ dependencies = [
  "gstreamer-utils",
  "gstreamer-video",
  "gstreamer-webrtc",
+ "http",
  "human_bytes",
- "once_cell",
+ "livekit-api",
+ "livekit-protocol",
+ "parse_link_header",
+ "regex",
+ "reqwest",
  "serde",
  "serde_json",
  "thiserror",
@@ -2554,19 +2716,19 @@ dependencies = [
  "tracing-log",
  "tracing-subscriber",
  "url",
+ "url-escape",
  "uuid",
 ]
 
 [[package]]
 name = "gst-plugin-webrtc-signalling"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "anyhow",
  "async-tungstenite",
  "clap",
  "futures",
  "gst-plugin-webrtc-signalling-protocol",
- "once_cell",
  "pin-project-lite",
  "serde",
  "serde_json",
@@ -2582,7 +2744,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtc-signalling-protocol"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "serde",
  "serde_json",
@@ -2590,7 +2752,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtchttp"
-version = "0.10.11"
+version = "0.11.0"
 dependencies = [
  "async-recursion",
  "bytes",
@@ -2599,7 +2761,6 @@ dependencies = [
  "gstreamer",
  "gstreamer-sdp",
  "gstreamer-webrtc",
- "once_cell",
  "parse_link_header",
  "reqwest",
  "tokio",
@@ -2607,21 +2768,20 @@ dependencies = [
 
 [[package]]
 name = "gstreamer"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "cfg-if",
  "futures-channel",
  "futures-core",
  "futures-util",
  "glib",
  "gstreamer-sys",
+ "itertools 0.11.0",
  "libc",
  "muldiv",
  "num-integer",
  "num-rational",
- "once_cell",
  "option-operations",
  "paste",
  "pretty-hex",
@@ -2633,10 +2793,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-app"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "futures-core",
  "futures-sink",
  "glib",
@@ -2644,13 +2803,12 @@ dependencies = [
  "gstreamer-app-sys",
  "gstreamer-base",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-app-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -2661,23 +2819,21 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-audio"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "cfg-if",
  "glib",
  "gstreamer",
  "gstreamer-audio-sys",
  "gstreamer-base",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-audio-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2689,23 +2845,21 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "atomic_refcell",
- "bitflags 1.3.2",
  "cfg-if",
  "glib",
  "gstreamer",
  "gstreamer-base-sys",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-base-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2716,10 +2870,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "glib",
  "gstreamer",
  "gstreamer-check-sys",
@@ -2727,8 +2880,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2739,23 +2892,21 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "glib",
  "gstreamer",
  "gstreamer-base",
  "gstreamer-gl-sys",
  "gstreamer-video",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-gl-egl"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2766,8 +2917,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-egl-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2777,8 +2928,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2791,8 +2942,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2803,8 +2954,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2814,8 +2965,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2826,8 +2977,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2837,8 +2988,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "gio",
  "glib",
@@ -2848,8 +2999,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -2860,10 +3011,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "glib",
  "gstreamer",
  "gstreamer-audio",
@@ -2875,8 +3025,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2889,21 +3039,19 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-rtp"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "glib",
  "gstreamer",
  "gstreamer-rtp-sys",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-rtp-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -2914,8 +3062,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2924,8 +3072,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-sys",
@@ -2935,8 +3083,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2946,22 +3094,20 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-utils"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "gstreamer",
  "gstreamer-app",
  "gstreamer-video",
- "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "gstreamer-video"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
- "bitflags 1.3.2",
  "cfg-if",
  "futures-channel",
  "glib",
@@ -2969,14 +3115,13 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video-sys",
  "libc",
- "once_cell",
  "serde",
 ]
 
 [[package]]
 name = "gstreamer-video-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2988,8 +3133,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3000,8 +3145,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc-sys"
-version = "0.20.7"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.20#37edd497cc778a3b70af5073e6383c9a8d9e5891"
+version = "0.21.0"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
 dependencies = [
  "glib-sys",
  "gstreamer-sdp-sys",
@@ -3012,10 +3157,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
- "bitflags 1.3.2",
  "cairo-rs",
  "field-offset",
  "futures-channel",
@@ -3028,14 +3172,13 @@ dependencies = [
  "gtk4-macros",
  "gtk4-sys",
  "libc",
- "once_cell",
  "pango",
 ]
 
 [[package]]
 name = "gtk4-macros"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "anyhow",
  "proc-macro-crate",
@@ -3047,8 +3190,8 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.6.6"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.6#484447e0f3614466591534783979677fb089a740"
+version = "0.7.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -3087,9 +3230,6 @@ name = "hashbrown"
 version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
-dependencies = [
- "ahash",
-]
 
 [[package]]
 name = "hashbrown"
@@ -3277,10 +3417,11 @@ dependencies = [
 
 [[package]]
 name = "hyper-rustls"
-version = "0.23.2"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c"
+checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97"
 dependencies = [
+ "futures-util",
  "http",
  "hyper",
  "log",
@@ -3350,6 +3491,12 @@ dependencies = [
 ]
 
 [[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.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3392,9 +3539,9 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.24.6"
+version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "527909aa81e20ac3a44803521443a765550f09b5130c2c2fa1ea59c2f8f50a3a"
+checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
 dependencies = [
  "bytemuck",
  "byteorder",
@@ -3430,6 +3577,7 @@ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
  "hashbrown 0.12.3",
+ "serde",
 ]
 
 [[package]]
@@ -3440,15 +3588,7 @@ checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
 dependencies = [
  "equivalent",
  "hashbrown 0.14.0",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
+ "serde",
 ]
 
 [[package]]
@@ -3463,17 +3603,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "io-lifetimes"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-dependencies = [
- "hermit-abi 0.3.2",
- "libc",
- "windows-sys",
-]
-
-[[package]]
 name = "ipnet"
 version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3486,11 +3615,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
 dependencies = [
  "hermit-abi 0.3.2",
- "rustix 0.38.4",
+ "rustix",
  "windows-sys",
 ]
 
 [[package]]
+name = "iso8601"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "924e5d73ea28f59011fec52a0d12185d496a9b075d360657aed2a5707f701153"
+dependencies = [
+ "nom",
+]
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3533,10 +3671,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "jsonwebtoken"
+version = "8.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378"
+dependencies = [
+ "base64 0.21.2",
+ "ring",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "khronos-egl"
-version = "4.1.0"
+version = "5.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3"
+checksum = "d1382b16c04aeb821453d6215a3c80ba78f24c6595c5aa85653378aabe0c83e3"
 dependencies = [
  "libc",
 ]
@@ -3813,15 +3963,44 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.3.8"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
+checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
 
 [[package]]
-name = "linux-raw-sys"
-version = "0.4.3"
+name = "livekit-api"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e0d4c5d731bb0da7b313c982ee32300e7caf1ee0595c0d1e57d00f43248c0c47"
+dependencies = [
+ "futures-util",
+ "jsonwebtoken",
+ "livekit-protocol",
+ "log",
+ "parking_lot",
+ "prost",
+ "reqwest",
+ "serde",
+ "serde_json",
+ "sha2",
+ "thiserror",
+ "tokio",
+ "tokio-tungstenite",
+ "url",
+]
+
+[[package]]
+name = "livekit-protocol"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
+checksum = "81bd731959a8dccc17248499b9952693f593bee4bb79186bf60d180b4097be59"
+dependencies = [
+ "futures-util",
+ "parking_lot",
+ "prost",
+ "prost-types",
+ "tokio",
+]
 
 [[package]]
 name = "lock_api"
@@ -4098,7 +4277,7 @@ checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -4126,9 +4305,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.15"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
 dependencies = [
  "autocfg",
  "libm",
@@ -4176,9 +4355,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
 name = "openssl"
-version = "0.10.55"
+version = "0.10.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d"
+checksum = "729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e"
 dependencies = [
  "bitflags 1.3.2",
  "cfg-if",
@@ -4197,7 +4376,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -4208,9 +4387,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.90"
+version = "0.9.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6"
+checksum = "866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac"
 dependencies = [
  "cc",
  "libc",
@@ -4241,10 +4420,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
 name = "pango"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
  "gio",
  "glib",
  "libc",
@@ -4254,8 +4432,8 @@ dependencies = [
 
 [[package]]
 name = "pango-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -4265,10 +4443,9 @@ dependencies = [
 
 [[package]]
 name = "pangocairo"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
- "bitflags 1.3.2",
  "cairo-rs",
  "glib",
  "libc",
@@ -4278,8 +4455,8 @@ dependencies = [
 
 [[package]]
 name = "pangocairo-sys"
-version = "0.17.10"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.17#6b109fb807237b5d07aff9a541ca68e9c2191abd"
+version = "0.18.1"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
 dependencies = [
  "cairo-sys-rs",
  "glib-sys",
@@ -4360,29 +4537,29 @@ dependencies = [
 
 [[package]]
 name = "pin-project"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "030ad2bc4db10a8944cb0d837f158bdfec4d4a4873ab701a95046770d11f8842"
+checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422"
 dependencies = [
  "pin-project-internal",
 ]
 
 [[package]]
 name = "pin-project-internal"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec2e072ecce94ec471b13398d5402c188e76ac03cf74dd1a975161b23a3f6d9c"
+checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.10"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57"
+checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05"
 
 [[package]]
 name = "pin-utils"
@@ -4516,6 +4693,38 @@ dependencies = [
 ]
 
 [[package]]
+name = "prost"
+version = "0.11.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
+dependencies = [
+ "bytes",
+ "prost-derive",
+]
+
+[[package]]
+name = "prost-derive"
+version = "0.11.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
+dependencies = [
+ "anyhow",
+ "itertools 0.10.5",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "prost-types"
+version = "0.11.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13"
+dependencies = [
+ "prost",
+]
+
+[[package]]
 name = "protobuf"
 version = "2.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4557,10 +4766,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "quick-xml"
+version = "0.30.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956"
+dependencies = [
+ "memchr",
+ "serde",
+]
+
+[[package]]
 name = "quote"
-version = "1.0.31"
+version = "1.0.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fe8a65d69dd0808184ebb5f836ab526bb259db23c657efa38711b1072ee47f0"
+checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
 dependencies = [
  "proc-macro2",
 ]
@@ -4699,13 +4918,13 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.9.1"
+version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
+checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.3.3",
+ "regex-automata 0.3.6",
  "regex-syntax 0.7.4",
 ]
 
@@ -4720,9 +4939,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.3.3"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310"
+checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -4894,41 +5113,27 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.37.23"
+version = "0.38.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06"
-dependencies = [
- "bitflags 1.3.2",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5"
+checksum = "172891ebdceb05aa0005f533a6cbfca599ddd7d966f6f5d4d9b2e70478e70399"
 dependencies = [
  "bitflags 2.3.3",
  "errno",
  "libc",
- "linux-raw-sys 0.4.3",
+ "linux-raw-sys",
  "windows-sys",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.20.8"
+version = "0.21.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f"
+checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb"
 dependencies = [
  "log",
  "ring",
+ "rustls-webpki",
  "sct",
- "webpki",
 ]
 
 [[package]]
@@ -4953,6 +5158,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls-webpki"
+version = "0.101.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "261e9e0888cba427c3316e6322805653c9425240b6fd96cee7cb671ab70ab8d0"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
 name = "ryu"
 version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4994,9 +5209,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "2.9.1"
+version = "2.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8"
+checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -5007,9 +5222,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.9.0"
+version = "2.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f51d0c0d83bec45f16480d0ce0058397a69e48fcdc52d1dc8855fb68acbd31a7"
+checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -5026,9 +5241,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.171"
+version = "1.0.183"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9"
+checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
 dependencies = [
  "serde_derive",
 ]
@@ -5044,20 +5259,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.171"
+version = "1.0.183"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682"
+checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.103"
+version = "1.0.104"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d03b412469450d4404fe8499a268edd7f8b79fecb074b0d812ad64ca21f4031b"
+checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c"
 dependencies = [
  "itoa",
  "ryu",
@@ -5086,6 +5301,35 @@ dependencies = [
 ]
 
 [[package]]
+name = "serde_with"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1402f54f9a3b9e2efe71c1cea24e648acce55887983553eeb858cf3115acfd49"
+dependencies = [
+ "base64 0.21.2",
+ "chrono",
+ "hex",
+ "indexmap 1.9.3",
+ "indexmap 2.0.0",
+ "serde",
+ "serde_json",
+ "serde_with_macros",
+ "time 0.3.25",
+]
+
+[[package]]
+name = "serde_with_macros"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9197f1ad0e3c173a0222d3c4404fb04c3afe87e962bcb327af73e8301fa203c7"
+dependencies = [
+ "darling",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.28",
+]
+
+[[package]]
 name = "sha-1"
 version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5171,9 +5415,9 @@ checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
 
 [[package]]
 name = "simd-adler32"
-version = "0.3.5"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "238abfbb77c1915110ad968465608b68e869e0772622c9656714e73e5a1a522f"
+checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
 
 [[package]]
 name = "simd_helpers"
@@ -5283,9 +5527,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.26"
+version = "2.0.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45c3457aacde3c65315de5031ec191ce46604304d2446e803d71ade03308d970"
+checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5307,21 +5551,20 @@ dependencies = [
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.10"
+version = "0.12.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2faeef5759ab89935255b1a4cd98e0baf99d1085e37d36599c625dac49ae8e"
+checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a"
 
 [[package]]
 name = "tempfile"
-version = "3.6.0"
+version = "3.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6"
+checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651"
 dependencies = [
- "autocfg",
  "cfg-if",
- "fastrand 1.9.0",
+ "fastrand",
  "redox_syscall 0.3.5",
- "rustix 0.37.23",
+ "rustix",
  "windows-sys",
 ]
 
@@ -5347,15 +5590,15 @@ dependencies = [
 
 [[package]]
 name = "test-with"
-version = "0.9.7"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3e3e1275a1442b99772321d4a35e0622f7abc04f6af49bd801c7119645bc9e"
+checksum = "5ea821854cf861c2bd28c19253b5b036fa4a6990745897bdb18a511b787c0187"
 dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -5372,22 +5615,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.43"
+version = "1.0.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a35fc5b8971143ca348fa6df4f024d4d55264f3468c71ad1c2f365b0a4d58c42"
+checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.43"
+version = "1.0.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "463fe12d7993d3b327787537ce8dd4dfa058de32fc2b195ef3cde03dc4771e8f"
+checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -5424,10 +5667,11 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.3.20"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
+checksum = "b0fdd63d58b18d663fbdf70e049f00a22c8e42be082203be7f26589213cd75ea"
 dependencies = [
+ "deranged",
  "itoa",
  "serde",
  "time-core",
@@ -5436,15 +5680,15 @@ dependencies = [
 
 [[package]]
 name = "time-core"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
+checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
 
 [[package]]
 name = "time-macros"
-version = "0.2.8"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
+checksum = "eb71511c991639bb078fd5bf97757e03914361c48100d52878b8e52b46fb92cd"
 dependencies = [
  "time-core",
 ]
@@ -5466,11 +5710,10 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.29.1"
+version = "1.30.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da"
+checksum = "2d3ce25f50619af8b0aec2eb23deebe84249e19e2ddd393a6e16e3300a6dadfd"
 dependencies = [
- "autocfg",
  "backtrace",
  "bytes",
  "libc",
@@ -5479,7 +5722,7 @@ dependencies = [
  "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.4.9",
+ "socket2 0.5.3",
  "tokio-macros",
  "windows-sys",
 ]
@@ -5492,7 +5735,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -5507,13 +5750,12 @@ dependencies = [
 
 [[package]]
 name = "tokio-rustls"
-version = "0.23.4"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59"
+checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
  "rustls",
  "tokio",
- "webpki",
 ]
 
 [[package]]
@@ -5528,6 +5770,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "tokio-tungstenite"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec509ac96e9a0c43427c74f003127d953a265737636129424288d27cb5c4b12c"
+dependencies = [
+ "futures-util",
+ "log",
+ "native-tls",
+ "tokio",
+ "tokio-native-tls",
+ "tungstenite 0.19.0",
+]
+
+[[package]]
 name = "tokio-util"
 version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5633,7 +5889,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
 ]
 
 [[package]]
@@ -5712,6 +5968,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "tungstenite"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e862a1c4128df0112ab625f55cd5c934bcb4312ba80b39ae4b4835a3fd58e649"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "native-tls",
+ "rand",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
 name = "typenum"
 version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5731,13 +6007,9 @@ checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
 
 [[package]]
 name = "unicode-linebreak"
-version = "0.1.4"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5faade31a542b8b35855fff6e8def199853b2da8da256da52f52f1316ee3137"
-dependencies = [
- "hashbrown 0.12.3",
- "regex",
-]
+checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
 
 [[package]]
 name = "unicode-normalization"
@@ -5772,10 +6044,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "url-escape"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44e0ce4d1246d075ca5abec4b41d33e87a6054d08e2366b63205665e950db218"
+dependencies = [
+ "percent-encoding",
+]
+
+[[package]]
 name = "urlencoding"
-version = "2.1.2"
+version = "2.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8db7427f936968176eaa7cdf81b7f98b980b18495ec28f1b5791ac3bfe3eea9"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
 
 [[package]]
 name = "utf-8"
@@ -5800,9 +6081,9 @@ dependencies = [
 
 [[package]]
 name = "v_frame"
-version = "0.3.5"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec8189c996a12ac77c50065f9c9f64961e56eb940d0ae1a4ccc7bea238bb4bc"
+checksum = "85db69f33d00031c1b07f7292e56317d5aa9475bdbd3d27ef18f3633438a697e"
 dependencies = [
  "cfg-if",
  "noop_proc_macro",
@@ -5916,7 +6197,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
  "wasm-bindgen-shared",
 ]
 
@@ -5950,7 +6231,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.28",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -5972,16 +6253,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "webpki"
-version = "0.22.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
 name = "weezl"
 version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6095,9 +6366,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
 
 [[package]]
 name = "winnow"
-version = "0.5.0"
+version = "0.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81fac9742fd1ad1bd9643b991319f72dd031016d44b77039a26977eb667141e7"
+checksum = "acaaa1190073b2b101e15083c38ee8ec891b5e05cbee516521e94ec008f61e64"
 dependencies = [
  "memchr",
 ]
@@ -6112,10 +6383,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "xattr"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985"
+dependencies = [
+ "libc",
+]
+
+[[package]]
 name = "xml-rs"
-version = "0.8.15"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a56c84a8ccd4258aed21c92f70c0f6dea75356b6892ae27c24139da456f9336"
+checksum = "47430998a7b5d499ccee752b41567bc3afc57e1327dc855b1a2aa44ce29b5fa1"
 
 [[package]]
 name = "xmlparser"
@@ -6140,9 +6420,9 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
 
 [[package]]
 name = "zerocopy"
-version = "0.6.1"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332f188cc1bcf1fe1064b8c58d150f497e697f49774aa846f2dc949d9a25f236"
+checksum = "f3b9c234616391070b0b173963ebc65a9195068e7ed3731c6edac2ec45ebe106"
 dependencies = [
  "byteorder",
  "zerocopy-derive",
@@ -6150,13 +6430,13 @@ dependencies = [
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.3.2"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6505e6815af7de1746a08f69c69606bb45695a17149517680f3b2149713b19a3"
+checksum = "8f7f3a471f98d0a61c34322fbbfd10c384b07687f680d4119813713f72308d91"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.28",
 ]
 
 [[package]]
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/rs/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/rs/default.nix
index c16118926ce8..50c2308d0811 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/rs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/rs/default.nix
@@ -103,7 +103,7 @@ let
       "threadshare" # tests cannot bind to localhost on darwin
       "webp" # not supported on darwin (upstream crate issue)
     ] ++ lib.optionals (!gst-plugins-base.glEnabled) [
-      # these require gstreamer-gl which requires darwin sdk bump
+      # these require gstreamer-gl
       "gtk4"
       "livesync"
       "fallbackswitch"
@@ -130,7 +130,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-rs";
-  version = "0.10.11";
+  version = "0.11.0+fixup";
 
   outputs = [ "out" "dev" ];
 
@@ -139,7 +139,7 @@ stdenv.mkDerivation rec {
     owner = "gstreamer";
     repo = "gst-plugins-rs";
     rev = version;
-    hash = "sha256-oOoUGzbg/ib1pA0T81hxgLlHnTRlNCWH5qZUNAutn8U=";
+    hash = "sha256-nvDvcY/WyVhcxitcoqgEUT8A1synZqxG2e51ct7Fgss=";
     # 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'
@@ -164,12 +164,12 @@ stdenv.mkDerivation rec {
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "cairo-rs-0.17.10" = "sha256-g7d1ccSbGIPVMu73mb5QvWVSN8XAB1xLZuWfgdd1cfU=";
+      "cairo-rs-0.18.1" = "sha256-k+YIAZXxejbxPQqbUU91qbx2AR98gTrseknLHtNZDEE=";
       "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.6.6" = "sha256-1WPXxsZJoYEQxVuP/CSpGs2XEZSJD//JJz4Ka2hxXHM=";
-      "gstreamer-0.20.7" = "sha256-o4o4mPFAZOshNNkCkykjG/b+UtT2z6TNLOEzJsfs+Mk=";
+      "gdk4-0.7.1" = "sha256-UMGmZivVdvmKRAjIGlj6pjDxwfNJyz8/6C0eYH1OOw4=";
+      "gstreamer-0.21.0" = "sha256-2uilK8wYG8e59fdL3q+kmixc1zw+EBwqvGs/EgfCGhk=";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/hax11/default.nix b/nixpkgs/pkgs/development/libraries/hax11/default.nix
new file mode 100644
index 000000000000..20533ff91315
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/hax11/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, multiStdenv
+, fetchFromGitHub
+, libX11
+, libXxf86vm
+, xorgproto
+, unstableGitUpdater
+}:
+
+multiStdenv.mkDerivation (finalAttrs: {
+  pname = "hax11";
+  version = "unstable-2022-12-10";
+
+  src = fetchFromGitHub {
+    owner = "CyberShadow";
+    repo = "hax11";
+    rev = "dce456f2b209f1be18d91064be257b66b69b7d9f";
+    hash = "sha256-e3jYvbglQ5Nzoz/B+WEkCw48Tu+i73t+PNq51mjzmjY=";
+  };
+
+  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 ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/nixpkgs/pkgs/development/libraries/httplib/default.nix b/nixpkgs/pkgs/development/libraries/httplib/default.nix
index 4315b827b22d..df3c295d4d9a 100644
--- a/nixpkgs/pkgs/development/libraries/httplib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/httplib/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "httplib";
-  version = "0.13.3";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "yhirose";
     repo = "cpp-httplib";
     rev = "v${version}";
-    hash = "sha256-ESaH0+n7ycpOKM+Mnv/UgT16UEx86eFMQDHB3RVmgBw=";
+    hash = "sha256-NtjgK/8XApEs4iSo9DzyK4Cc/FQJRAEwCwJbD24FP34=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix b/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
index 753c1922e759..91118946a182 100644
--- a/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
+++ b/nixpkgs/pkgs/development/libraries/hunspell/dictionaries.nix
@@ -915,13 +915,23 @@ rec {
     license = with lib.licenses; [ gpl2Plus lgpl2Plus mpl10 asl20 cc-by-sa-25 ];
   };
 
-  # Portugese
+  /* PORTUGUESE */
+
   pt_BR = pt-br;
   pt-br = mkDictFromLibreOffice {
     shortName = "pt-br";
     dictFileName = "pt_BR";
-    shortDescription = "Brazillian Portugese (Brazil)";
+    shortDescription = "Portuguese (Brazil)";
     readmeFile = "README_pt_BR.txt";
     license = with lib.licenses; [ lgpl3 ];
   };
+
+  pt_PT = pt-pt;
+  pt-pt = mkDictFromLibreOffice {
+    shortName = "pt-pt";
+    dictFileName = "pt_PT";
+    shortDescription = "Portuguese (Portugal)";
+    readmeFile = "README_pt_PT.txt";
+    license = with lib.licenses; [ gpl2 lgpl21 mpl11 ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/libraries/imgui/default.nix b/nixpkgs/pkgs/development/libraries/imgui/default.nix
index 4ed5cc06cf0a..ca7a47d36385 100644
--- a/nixpkgs/pkgs/development/libraries/imgui/default.nix
+++ b/nixpkgs/pkgs/development/libraries/imgui/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "imgui";
-  version = "1.89.8";
+  version = "1.89.9";
 
   src = fetchFromGitHub {
     owner = "ocornut";
     repo = "imgui";
     rev = "v${version}";
-    sha256 = "sha256-pkEm7+ZBYAYgAbMvXhmJyxm6DfyQWkECTXcTHTgfvuo=";
+    sha256 = "sha256-0k9jKrJUrG9piHNFQaBBY3zgNIKM23ZA879NY+MNYTU=";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/development/libraries/java/commons/lang/default.nix b/nixpkgs/pkgs/development/libraries/java/commons/lang/default.nix
index b9ccfef8382c..9eca9e3070b2 100644
--- a/nixpkgs/pkgs/development/libraries/java/commons/lang/default.nix
+++ b/nixpkgs/pkgs/development/libraries/java/commons/lang/default.nix
@@ -1,26 +1,31 @@
-{ lib, stdenv, fetchurl }:
+{ lib
+, stdenv
+, fetchurl
+}:
 
-stdenv.mkDerivation rec {
-  version = "3.12.0";
+stdenv.mkDerivation (finalAttrs: {
+  version = "3.13.0";
   pname = "commons-lang";
 
   src = fetchurl {
-    url    = "mirror://apache/commons/lang/binaries/commons-lang3-${version}-bin.tar.gz";
-    sha256 = "sha256-MwEkZd/Lf3kKyjM+CevxBeKl+5XCxjiz33kNPvqQjig=";
+    url = "mirror://apache/commons/lang/binaries/commons-lang3-${finalAttrs.version}-bin.tar.gz";
+    hash = "sha256-yDEbe1wqyfxuJe2DK55YnNLKLh7JcsHAgp2OohWBwWU=";
   };
 
   installPhase = ''
-    tar xf ${src}
+    runHook preInstall
+    tar xf ${finalAttrs.src}
     mkdir -p $out/share/java
     cp *.jar $out/share/java/
+    runHook postInstall
   '';
 
   meta = {
-    homepage    = "https://commons.apache.org/proper/commons-lang";
     description = "Provides additional methods to manipulate standard Java library classes";
+    homepage = "https://commons.apache.org/proper/commons-lang";
+    license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ copumpkin ];
-    sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
-    license     = lib.licenses.asl20;
     platforms = with lib.platforms; unix;
+    sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
   };
-}
+})
diff --git a/nixpkgs/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/nixpkgs/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index d9064ee85d17..a14a220f5199 100644
--- a/nixpkgs/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -9,13 +9,13 @@
   nv-codec-headers-11 = nv-codec-headers-12;
 }).overrideAttrs (old: rec {
   pname = "jellyfin-ffmpeg";
-  version = "6.0-5";
+  version = "6.0-6";
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin-ffmpeg";
     rev = "v${version}";
-    sha256 = "sha256-pKmR+IVJAaY91KiboCBkwZleMmMFToez1fW+eXyrZjs=";
+    sha256 = "sha256-jOKVS+BMADS/jIagOnYwxeGTpTMySmGlOHkPD2LJdkA=";
   };
 
   buildInputs = old.buildInputs ++ [ chromaprint ];
diff --git a/nixpkgs/pkgs/development/libraries/ldb/default.nix b/nixpkgs/pkgs/development/libraries/ldb/default.nix
index 95547fb6382a..753dee9e3f0c 100644
--- a/nixpkgs/pkgs/development/libraries/ldb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ldb/default.nix
@@ -11,7 +11,7 @@
 , docbook-xsl-nons
 , docbook_xml_dtd_42
 , cmocka
-, wafHook
+, waf
 , libxcrypt
 }:
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     python3
-    wafHook
+    waf.hook
     libxslt
     docbook-xsl-nons
     docbook_xml_dtd_42
diff --git a/nixpkgs/pkgs/development/libraries/libblockdev/default.nix b/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
index 985151494364..e2bbd8a485d2 100644
--- a/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libblockdev/default.nix
@@ -31,13 +31,13 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "libblockdev";
-  version = "3.0.2";
+  version = "3.0.3";
 
   src = fetchFromGitHub {
     owner = "storaged-project";
     repo = "libblockdev";
     rev = "${finalAttrs.version}-1";
-    hash = "sha256-tqF96yeBPilF0zQ53RNN7IZ2wVgWQOwbGkvoywN/i+0=";
+    hash = "sha256-vQ+JHMhfCNb5PALGL9FchRYPHGj+6oQpRfmmGS0ZczI=";
   };
 
   outputs = [ "out" "dev" "devdoc" ];
diff --git a/nixpkgs/pkgs/development/libraries/libdeltachat/Cargo.lock b/nixpkgs/pkgs/development/libraries/libdeltachat/Cargo.lock
index f2528c30384e..1e9b02504bd6 100644
--- a/nixpkgs/pkgs/development/libraries/libdeltachat/Cargo.lock
+++ b/nixpkgs/pkgs/development/libraries/libdeltachat/Cargo.lock
@@ -221,13 +221,13 @@ dependencies = [
 
 [[package]]
 name = "async-imap"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da93622739d458dd9a6abc1abf0e38e81965a5824a3b37f9500437c82a8bb572"
+checksum = "b538b767cbf9c162a6c5795d4b932bd2c20ba10b5a91a94d2b2b6886c1dce6a8"
 dependencies = [
  "async-channel",
  "base64 0.21.2",
- "byte-pool",
+ "bytes",
  "chrono",
  "futures",
  "imap-proto",
@@ -545,16 +545,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
 
 [[package]]
-name = "byte-pool"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2f1b21189f50b5625efa6227cf45e9d4cfdc2e73582df2b879e9689e78a7158"
-dependencies = [
- "crossbeam-queue",
- "stable_deref_trait",
-]
-
-[[package]]
 name = "bytemuck"
 version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -925,16 +915,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "crossbeam-queue"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
-[[package]]
 name = "crossbeam-utils"
 version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1123,7 +1103,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat"
-version = "1.119.1"
+version = "1.121.0"
 dependencies = [
  "ansi_term",
  "anyhow",
@@ -1199,7 +1179,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-jsonrpc"
-version = "1.119.1"
+version = "1.121.0"
 dependencies = [
  "anyhow",
  "async-channel",
@@ -1223,7 +1203,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-repl"
-version = "1.119.1"
+version = "1.121.0"
 dependencies = [
  "ansi_term",
  "anyhow",
@@ -1238,7 +1218,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-rpc-server"
-version = "1.119.1"
+version = "1.121.0"
 dependencies = [
  "anyhow",
  "deltachat",
@@ -1263,7 +1243,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat_ffi"
-version = "1.119.1"
+version = "1.121.0"
 dependencies = [
  "anyhow",
  "deltachat",
@@ -4597,12 +4577,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "stable_deref_trait"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
-
-[[package]]
 name = "static_assertions"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix b/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix
index 96ef2f6cd427..395764d955ec 100644
--- a/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdeltachat/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libdeltachat";
-  version = "1.119.1";
+  version = "1.121.0";
 
   src = fetchFromGitHub {
     owner = "deltachat";
     repo = "deltachat-core-rust";
     rev = "v${version}";
-    hash = "sha256-LP5h99qldf9QoRDmo581H+sUx1QsD6nOGt1ES3Fr/6E=";
+    hash = "sha256-QefBchXitDcbn1o7jgmvWdacLT8OP+W/dL32+pYsaEA=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/libfprint/default.nix b/nixpkgs/pkgs/development/libraries/libfprint/default.nix
index 457a4bc466a7..41eef399162a 100644
--- a/nixpkgs/pkgs/development/libraries/libfprint/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfprint/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libfprint";
-  version = "1.94.5";
+  version = "1.94.6";
   outputs = [ "out" "devdoc" ];
 
   src = fetchFromGitLab {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     owner = "libfprint";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-+eSvzbXxjemVKMeD8tp/0/tGBjw2EOlmyxb8KfyZKtA=";
+    hash = "sha256-lDnAXWukBZSo8X6UEVR2nOMeVUi/ahnJgx2cP+vykZ8=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/libgit2/default.nix b/nixpkgs/pkgs/development/libraries/libgit2/default.nix
index 9c04e9b4058f..085c4c79bdc9 100644
--- a/nixpkgs/pkgs/development/libraries/libgit2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgit2/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , pkg-config
 , python3
@@ -20,29 +19,16 @@
 
 stdenv.mkDerivation rec {
   pname = "libgit2";
-  version = "1.7.0";
+  version = "1.7.1";
   # also check the following packages for updates: python3Packages.pygit2 and libgit2-glib
 
   src = fetchFromGitHub {
     owner = "libgit2";
     repo = "libgit2";
     rev = "v${version}";
-    hash = "sha256-3ZVBGd2T5DQKsDEc5a7pS0yz01+rDCszU9ZK0zxvfyQ=";
+    hash = "sha256-3W0/i6Pu7I7D1zMQhmEqJVsa7PZpKOqU1+udNENSBvM=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "darwin-errSSLNetworkTimeout.patch";
-      url = "https://github.com/libgit2/libgit2/commit/3e15292d8863da316a57be23fede04f443460686.patch";
-      hash = "sha256-N314YK7osO9L3hCXb+FcMoDM8iBW9Bt8D5O2Szdz7YA=";
-    })
-    (fetchpatch {
-      name = "missing-git_oidarray.patch";
-      url = "https://github.com/libgit2/libgit2/commit/085a169c1d73e02888708652d7772b3bc1f1b28b.diff";
-      hash = "sha256-l6q1TLuOloyk0Jqvo5Npv4grU/oxlg+RFLa43qENaLI=";
-    })
-  ];
-
   cmakeFlags = [
     "-DUSE_HTTP_PARSER=system"
     "-DUSE_SSH=ON"
diff --git a/nixpkgs/pkgs/development/libraries/libjreen/default.nix b/nixpkgs/pkgs/development/libraries/libjreen/default.nix
deleted file mode 100644
index 5a70e4b01dd8..000000000000
--- a/nixpkgs/pkgs/development/libraries/libjreen/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, stdenv, fetchurl, cmake, qt4, pkg-config, gsasl }:
-
-stdenv.mkDerivation rec {
-  pname = "libjreen";
-  version = "1.2.0";
-
-  src = fetchurl {
-    url = "https://qutim.org/dwnl/73/${pname}-${version}.tar.bz2";
-    sha256 = "14nwwk40xx8w6x7yaysgcr0lgzhs7l064f7ikp32s5y9a8mmp582";
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ qt4 gsasl ];
-
-  meta = {
-    description = "C++ Jabber library using Qt framework";
-    homepage = "https://qutim.org/jreen/";
-    license = lib.licenses.gpl2Plus;
-    platforms = lib.platforms.unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/liblinphone/default.nix b/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
index c170de14197c..33220f193b59 100644
--- a/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblinphone/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "liblinphone";
-  version = "5.2.17";
+  version = "5.2.98";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    hash = "sha256-zxp+jcClfKm+VsylRtydF2rlDCkO+sa9vw8GpwAfKHM=";
+    hash = "sha256-kQZePMa7MTaSJLEObM8khfSFYLqhlgTcVyKfTPLwKYU=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/libmbim/default.nix b/nixpkgs/pkgs/development/libraries/libmbim/default.nix
index c55b0876ce61..896c8b8fe4ee 100644
--- a/nixpkgs/pkgs/development/libraries/libmbim/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmbim/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -31,6 +32,24 @@ stdenv.mkDerivation rec {
     hash = "sha256-aaYjvJ2OMTzkUyqWCyHdmsKJ3VGqBmKQzb1DWK/1cPU=";
   };
 
+  patches = [
+    # Intel Mutual Authentication - FCC lock. Part of 1.30, backported to
+    # openSUSE and Fedora and ChromeOS.
+    # https://src.fedoraproject.org/rpms/libmbim/blob/rawhide/f/libmbim.spec
+    (fetchpatch {
+      url = "https://cgit.freedesktop.org/libmbim/libmbim/patch/?id=910db9cb2b6fde303d3b4720890cf6dc6fc00880";
+      hash = "sha256-412sXdWb8WsSexe1scI/C57dwENgNWoREGO1GxSF4hs=";
+    })
+
+    # Intel Tools. Allows tracing various commands. Part of 1.30, backported to
+    # openSUSE, Fedora and ChromeOS.
+    # https://src.fedoraproject.org/rpms/libmbim/blob/rawhide/f/libmbim.spec
+    (fetchpatch {
+      url = "https://cgit.freedesktop.org/libmbim/libmbim/patch/?id=8a6dec6ed11931601e605c9537da9904b3be5bc0";
+      hash = "sha256-tU4zkUl5aZJE+g/qbnWprUHe/PmZvqVKB9qecSaUBhk=";
+    })
+  ];
+
   mesonFlags = [
     "-Dudevdir=${placeholder "out"}/lib/udev"
     (lib.mesonBool "introspection" withIntrospection)
diff --git a/nixpkgs/pkgs/development/libraries/libowlevelzs/default.nix b/nixpkgs/pkgs/development/libraries/libowlevelzs/default.nix
index e024874eabe8..46c05e6960a0 100644
--- a/nixpkgs/pkgs/development/libraries/libowlevelzs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libowlevelzs/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   version = "0.1.1";
 
   src = fetchFromGitHub {
-    owner = "zseri";
+    owner = "fogti";
     repo = "libowlevelzs";
     rev = "v${version}";
     sha256 = "y/EaMMsmJEmnptfjwiat4FC2+iIKlndC2Wdpop3t7vY=";
@@ -19,9 +19,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Zscheile Lowlevel (utility) library";
-    homepage = "https://github.com/zseri/libowlevelzs";
+    homepage = "https://github.com/fogti/libowlevelzs";
     license = licenses.mit;
-    maintainers = with maintainers; [ zseri ];
+    maintainers = [ maintainers.fogti ];
     platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libquotient/default.nix b/nixpkgs/pkgs/development/libraries/libquotient/default.nix
index 24661c082ae4..6300ece17127 100644
--- a/nixpkgs/pkgs/development/libraries/libquotient/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libquotient/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libquotient";
-  version = "0.8.0";
+  version = "0.8.1.1";
 
   src = fetchFromGitHub {
     owner = "quotient-im";
     repo = "libQuotient";
     rev = version;
-    hash = "sha256-ecTHiWbsNDIUz+Sadh2pVbDRZFzdMkZXBYSjy1JqZrk=";
+    hash = "sha256-WNLwO2w8FYy12BeqPuiS0wg3fUMwTxfrIF1QwcjE9yQ=";
   };
 
   buildInputs = [ olm openssl qtbase qtmultimedia qtkeychain ];
diff --git a/nixpkgs/pkgs/development/libraries/libredwg/default.nix b/nixpkgs/pkgs/development/libraries/libredwg/default.nix
index 8a01ace46415..58a701bc15cc 100644
--- a/nixpkgs/pkgs/development/libraries/libredwg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libredwg/default.nix
@@ -17,19 +17,19 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libredwg";
-  version = "0.12.5";
+  version = "0.12.5.6313";
 
   src = fetchFromGitHub {
     owner = "LibreDWG";
     repo = pname;
     rev = version;
-    sha256 = "sha256-s9aiOKSM7+3LJNE+jRrEMcL1QKRWrlTKbwO7oL9VhuE=";
+    hash = "sha256-TM+cZ7N5PD6UG9cvy0XFa0sNYc3apbAJvEMh3husjRk=";
     fetchSubmodules = true;
   };
 
   postPatch = let
     printVersion = writeShellScript "print-version" ''
-      echo ${lib.escapeShellArg version}
+      echo -n ${lib.escapeShellArg version}
     '';
   in ''
     # avoid git dependency
@@ -53,7 +53,8 @@ stdenv.mkDerivation rec {
   # prevent python tests from running when not building with python
   configureFlags = lib.optional (!enablePython) "--disable-python";
 
-  doCheck = true;
+  # example_r13.dxf roundtrip fail: expect 5286, got 5285 entities
+  doCheck = !(stdenv.isLinux && stdenv.isAarch64);
 
   # the "xmlsuite" test requires the libxml2 c library as well as the python module
   nativeCheckInputs = lib.optionals enablePython [ libxml2 libxml2.dev ];
diff --git a/nixpkgs/pkgs/development/libraries/libsndfile/default.nix b/nixpkgs/pkgs/development/libraries/libsndfile/default.nix
index 7c6613873f3a..02dbd633281c 100644
--- a/nixpkgs/pkgs/development/libraries/libsndfile/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsndfile/default.nix
@@ -1,6 +1,15 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, autogen, pkg-config, python3
 , flac, lame, libmpg123, libogg, libopus, libvorbis
 , alsa-lib, Carbon, AudioToolbox
+
+# for passthru.tests
+, audacity
+, freeswitch
+, gst_all_1
+, libsamplerate
+, moc
+, pipewire
+, pulseaudio
 }:
 
 stdenv.mkDerivation rec {
@@ -33,6 +42,29 @@ stdenv.mkDerivation rec {
   # Needed on Darwin.
   NIX_CFLAGS_LINK = "-logg -lvorbis";
 
+  doCheck = true;
+  preCheck = ''
+    patchShebangs tests/test_wrapper.sh tests/pedantic-header-test.sh
+
+    substituteInPlace tests/test_wrapper.sh \
+      --replace '/usr/bin/env' "$(type -P env)"
+  '';
+
+  passthru.tests = {
+    inherit
+      audacity
+      freeswitch
+      libsamplerate
+      moc
+      pipewire
+      pulseaudio;
+    inherit (python3.pkgs)
+      soundfile
+      wavefile;
+    inherit (gst_all_1) gst-plugins-bad;
+    lame = (lame.override { sndfileFileIOSupport = true; });
+  };
+
   meta = with lib; {
     description = "A C library for reading and writing files containing sampled sound";
     homepage    = "https://libsndfile.github.io/libsndfile/";
diff --git a/nixpkgs/pkgs/development/libraries/libuev/default.nix b/nixpkgs/pkgs/development/libraries/libuev/default.nix
new file mode 100644
index 000000000000..1ec1590428d3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libuev/default.nix
@@ -0,0 +1,23 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook }:
+
+stdenv.mkDerivation rec {
+  pname = "libuev";
+  version = "2.4.0";
+
+  src = fetchFromGitHub {
+    owner = "troglobit";
+    repo = "libuev";
+    rev = "v${version}";
+    hash = "sha256-x6l7CqlZ82kc8shAf2SxgIa4ESu0fTtnOgGz5joVCEY=";
+  };
+
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+
+  meta = with lib; {
+    description = "Lightweight event loop library for Linux epoll() family APIs";
+    homepage = "https://codedocs.xyz/troglobit/libuev/";
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ vifino ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libunarr/default.nix b/nixpkgs/pkgs/development/libraries/libunarr/default.nix
index ccf65e64d293..1feafabfd4df 100644
--- a/nixpkgs/pkgs/development/libraries/libunarr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libunarr/default.nix
@@ -1,31 +1,33 @@
-{ lib, stdenv, fetchurl, fetchpatch, cmake }:
+{ lib
+, stdenv
+, fetchurl
+, cmake
+}:
 
 stdenv.mkDerivation rec {
   pname = "libunarr";
-  version = "1.0.1";
+  version = "1.1.0";
 
   src = fetchurl {
     url = "https://github.com/selmf/unarr/releases/download/v${version}/unarr-${version}.tar.xz";
-    sha256 = "1db500k6w90qn6qb4j3zcczailmmv81q9lv4bwq516hbncg5p4sl";
+    hash = "sha256-5wCnhjoj+GTmaeDTCrUnm1Wt9SsWAbQcPSYM//FNeOA=";
   };
 
-  nativeBuildInputs = [ cmake ];
-
-  # https://github.com/selmf/unarr/issues/23
-  postPatch = ''
-    substituteInPlace pkg-config.pc.cmake \
-      --replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
-      --replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
-  ''
-  # ld: unknown option: --no-undefined
-  + lib.optionalString stdenv.isDarwin ''
+  postPatch = lib.optionalString stdenv.isDarwin ''
     substituteInPlace CMakeLists.txt \
-      --replace '-Wl,--no-undefined -Wl,--as-needed' '-Wl,-undefined,error'
+      --replace "-flto" "" \
+      --replace "AppleClang" "Clang"
   '';
 
+  nativeBuildInputs = [
+    cmake
+  ];
+
   meta = with lib; {
     homepage = "https://github.com/selmf/unarr";
     description = "A lightweight decompression library with support for rar, tar and zip archives";
     license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ wegank ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libxcrypt/default.nix b/nixpkgs/pkgs/development/libraries/libxcrypt/default.nix
index d45155e80029..067141883977 100644
--- a/nixpkgs/pkgs/development/libraries/libxcrypt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxcrypt/default.nix
@@ -28,6 +28,9 @@ stdenv.mkDerivation (finalAttrs: {
     "--disable-werror"
   ];
 
+  # fixes: can't build x86_64-w64-mingw32 shared library unless -no-undefined is specified
+  makeFlags = lib.optionals stdenv.hostPlatform.isWindows [ "LDFLAGS=-no-undefined"] ;
+
   nativeBuildInputs = [
     perl
   ];
diff --git a/nixpkgs/pkgs/development/libraries/lime/default.nix b/nixpkgs/pkgs/development/libraries/lime/default.nix
index dc679b4ba549..0ac3e0f81ecd 100644
--- a/nixpkgs/pkgs/development/libraries/lime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lime/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "lime";
-  version = "5.2.6";
+  version = "5.2.98";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-WQ6AcJpQSvWR5m2edVNji5u6ZiS4QOH45vQN2q+39NU=";
+    hash = "sha256-LdwXBJpwSA/PoCXL+c1pcX1V2Fq/eR6nNmwBKDM1Vr8=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix b/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
index 75c8017145da..34082407c21f 100644
--- a/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix
@@ -23,7 +23,7 @@
 
 stdenv.mkDerivation rec {
   pname = "mediastreamer2";
-  version = "5.2.16";
+  version = "5.2.98";
 
   dontWrapQtApps = true;
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    hash = "sha256-K4EBZC3zuLKF9Qw4i24f0hYKlOgRM7MR4Ck2ZoTYi6I=";
+    hash = "sha256-02e1nGSwlhEHwQH6WqBSKBlWQWAYa7lKdZaZ8/0SAxs=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/mongoc/default.nix b/nixpkgs/pkgs/development/libraries/mongoc/default.nix
index 0e8e5cb8771f..07a14e862258 100644
--- a/nixpkgs/pkgs/development/libraries/mongoc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mongoc/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mongoc";
-  version = "1.24.2";
+  version = "1.24.3";
 
   src = fetchFromGitHub {
     owner = "mongodb";
     repo = "mongo-c-driver";
     rev = "refs/tags/${version}";
-    hash = "sha256-gey+/DAfAK69f5q568giLNL4R1UqGD6eiImkjyvnZys=";
+    hash = "sha256-zEIdK994aebLeKe4g6/ByWvaoGNBB0ODXRpczrCEkB8=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/ndn-cxx/default.nix b/nixpkgs/pkgs/development/libraries/ndn-cxx/default.nix
index d7b31426c4f6..7ab607b01f4e 100644
--- a/nixpkgs/pkgs/development/libraries/ndn-cxx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ndn-cxx/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , python3
 , python3Packages
-, wafHook
+, waf
 , boost179
 , openssl
 , sqlite
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-nnnxlkYVTSRB6ZcuIUDFol999+amGtqegHXK+06ITK8=";
   };
 
-  nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx wafHook ];
+  nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx waf.hook ];
 
   buildInputs = [ boost179 openssl sqlite ];
 
diff --git a/nixpkgs/pkgs/development/libraries/netcdf/default.nix b/nixpkgs/pkgs/development/libraries/netcdf/default.nix
index ed869275c9d2..8fde7050b97a 100644
--- a/nixpkgs/pkgs/development/libraries/netcdf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/netcdf/default.nix
@@ -16,11 +16,11 @@ let
   inherit (hdf5) mpiSupport mpi;
 in stdenv.mkDerivation rec {
   pname = "netcdf" + lib.optionalString mpiSupport "-mpi";
-  version = "4.9.0";
+  version = "4.9.2";
 
   src = fetchurl {
     url = "https://downloads.unidata.ucar.edu/netcdf-c/${version}/netcdf-c-${version}.tar.gz";
-    hash = "sha256-TJVgIrecCOXhTu6N9RsTwo5hIcK35/qtwhs3WUlAC0k=";
+    hash = "sha256-zxG6u725lj8J9VB54LAZ9tA3H1L44SZKW6jp/asabEg=";
   };
 
   postPatch = ''
@@ -30,6 +30,10 @@ in stdenv.mkDerivation rec {
     for a in ncdap_test/Makefile.am ncdap_test/Makefile.in; do
       substituteInPlace $a --replace testurl.sh " "
     done
+
+    # Prevent building the tests from prepending `#!/bin/bash` and wiping out the patched shenbangs.
+    substituteInPlace nczarr_test/Makefile.in \
+      --replace '#!/bin/bash' '${stdenv.shell}'
   '';
 
   nativeBuildInputs = [ m4 removeReferencesTo ];
@@ -65,7 +69,7 @@ in stdenv.mkDerivation rec {
     remove-references-to -t ${stdenv.cc} "$(readlink -f $out/lib/libnetcdf.settings)"
   '';
 
-  doCheck = !(mpiSupport || (stdenv.isDarwin && stdenv.isAarch64));
+  doCheck = !mpiSupport;
   nativeCheckInputs = [ unzip ];
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/libraries/nghttp3/default.nix b/nixpkgs/pkgs/development/libraries/nghttp3/default.nix
index 05b51d73b8d1..a81b43ae790e 100644
--- a/nixpkgs/pkgs/development/libraries/nghttp3/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nghttp3/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nghttp3";
-  version = "0.13.0";
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ypoq+wXBaA5p5ZjRC8SNn9jHcMHHLJZLDLNOFMoua0g=";
+    hash = "sha256-DqqT8rgGlbV0upe0E37AR8bk3SIsoyCXt8xJzIkz9xc=";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/nixpkgs/pkgs/development/libraries/ngtcp2/gnutls.nix b/nixpkgs/pkgs/development/libraries/ngtcp2/gnutls.nix
index 05341188be6c..45f7d9d67db3 100644
--- a/nixpkgs/pkgs/development/libraries/ngtcp2/gnutls.nix
+++ b/nixpkgs/pkgs/development/libraries/ngtcp2/gnutls.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ngtcp2";
-  version = "0.18.0";
+  version = "0.19.1";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = "ngtcp2";
     rev = "v${version}";
-    hash = "sha256-FkiqQZ6xmwU2vkJxmr7k+Va5jIByWayAfUea+2DCFhk=";
+    hash = "sha256-agiQRy/e5VS+ANxajXYi5huRjQQ2M8eddH/AzmwnHdQ=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/nss/latest.nix b/nixpkgs/pkgs/development/libraries/nss/latest.nix
index dfe3b066c878..db0ad2efad5e 100644
--- a/nixpkgs/pkgs/development/libraries/nss/latest.nix
+++ b/nixpkgs/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.92";
-  hash = "sha256-PbGS1uiCA5rwKufq8yF+0RS7etg0FMZGdyq4Ah4kolQ=";
+  version = "3.93";
+  hash = "sha256-FfVLtyBI6xBfjA6TagS4medMPbmhm7weAKzuKvlHaoo=";
 }
diff --git a/nixpkgs/pkgs/development/libraries/ntrack/default.nix b/nixpkgs/pkgs/development/libraries/ntrack/default.nix
deleted file mode 100644
index 3d8f057fc803..000000000000
--- a/nixpkgs/pkgs/development/libraries/ntrack/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchurl, qt4, pkg-config, libnl, python3 }:
-
-stdenv.mkDerivation rec {
-  pname = "ntrack";
-  version = "016";
-
-  src = fetchurl {
-    url = "https://launchpad.net/ntrack/main/${version}/+download/${pname}-${version}.tar.gz";
-    sha256 = "037ig5y0mp327m0hh4pnfr3vmsk3wrxgfjy3645q4ws9vdhx807w";
-  };
-
-  buildInputs = [ libnl qt4 ];
-
-  nativeBuildInputs = [ pkg-config python3 ];
-
-  # error: ISO C does not support '__FUNCTION__' predefined identifier [-Werror=pedantic]
-  env.NIX_CFLAGS_COMPILE = "-Wno-error";
-
-  configureFlags = [ "--without-gobject" "CFLAGS=--std=gnu99" ];
-
-  # Remove this patch after version 016
-  patches = [ ./libnl-fix.patch ];
-
-  postPatch = ''
-    sed -e "s@/usr\(/lib/ntrack/modules/\)@$out&@" -i common/ntrack.c
-  '';
-
-  meta = with lib; {
-    description = "Network Connectivity Tracking library for Desktop Applications";
-    homepage = "https://launchpad.net/ntrack";
-    platforms = platforms.linux;
-    license = licenses.lgpl3Plus;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/ntrack/libnl-fix.patch b/nixpkgs/pkgs/development/libraries/ntrack/libnl-fix.patch
deleted file mode 100644
index 806a0178ec8a..000000000000
--- a/nixpkgs/pkgs/development/libraries/ntrack/libnl-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./modules/ntrack-libnl.c.orig	2013-12-02 11:31:54.749215448 -0600
-+++ ./modules/ntrack-libnl.c	2013-12-02 11:34:46.597684553 -0600
-@@ -530,7 +530,7 @@
- 		op_default_route_disappeared ((struct _ntrack_monitor_arch*) self, nl_info);
- 	} else if (nl_info->topmost_route && topmost_route) {
- 		int diff_bits;
--		if ((diff_bits = (route_obj_ops.oo_id_attrs | ROUTE_ATTR_OIF
-+		if ((diff_bits = (nl_object_get_id_attrs(OBJ_CAST(topmost_route)) | ROUTE_ATTR_OIF
- 		                  | ROUTE_ATTR_GATEWAY) &
- 		                  nl_object_diff (OBJ_CAST (nl_info->topmost_route),
- 		                                  OBJ_CAST (topmost_route)))) {
diff --git a/nixpkgs/pkgs/development/libraries/odpic/default.nix b/nixpkgs/pkgs/development/libraries/odpic/default.nix
index a89f0b2cc101..aee255fd9612 100644
--- a/nixpkgs/pkgs/development/libraries/odpic/default.nix
+++ b/nixpkgs/pkgs/development/libraries/odpic/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchFromGitHub, fixDarwinDylibNames, oracle-instantclient, libaio }:
 
 let
-  version = "4.6.1";
+  version = "5.0.0";
   libPath = lib.makeLibraryPath [ oracle-instantclient.lib ];
 
-in stdenv.mkDerivation {
+in
+stdenv.mkDerivation {
   inherit version;
 
   pname = "odpic";
@@ -13,7 +14,7 @@ in stdenv.mkDerivation {
     owner = "oracle";
     repo = "odpi";
     rev = "v${version}";
-    sha256 = "sha256-3kJI3qRgqrithhGq7lO1r94T/P3SamDgLN13hKzmj5I=";
+    sha256 = "sha256-ZRkXd7D4weCfP6R7UZD2+saNiNa+XXVhfiWIlxBObmU=";
   };
 
   nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
@@ -22,7 +23,7 @@ in stdenv.mkDerivation {
     ++ lib.optionals stdenv.isLinux [ libaio ];
 
   dontPatchELF = true;
-  makeFlags = [ "PREFIX=$(out)" "CC=${stdenv.cc.targetPrefix}cc" "LD=${stdenv.cc.targetPrefix}cc"];
+  makeFlags = [ "PREFIX=$(out)" "CC=${stdenv.cc.targetPrefix}cc" "LD=${stdenv.cc.targetPrefix}cc" ];
 
   postFixup = ''
     ${lib.optionalString (stdenv.isLinux) ''
@@ -31,14 +32,14 @@ in stdenv.mkDerivation {
     ${lib.optionalString (stdenv.isDarwin) ''
       install_name_tool -add_rpath "${libPath}" $out/lib/libodpic${stdenv.hostPlatform.extensions.sharedLibrary}
     ''}
-    '';
+  '';
 
   meta = with lib; {
     description = "Oracle ODPI-C library";
     homepage = "https://oracle.github.io/odpi/";
-    maintainers = with maintainers; [ mkazulak flokli ];
+    maintainers = with maintainers; [ mkazulak ];
     license = licenses.asl20;
     platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
-    hydraPlatforms = [];
+    hydraPlatforms = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
index a76a594680f5..87381141d98f 100644
--- a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
+++ b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
@@ -143,7 +143,7 @@ stdenv.mkDerivation {
     sourceProvenance = with sourceTypes; [ binaryBytecode ];
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
-    maintainers = with maintainers; [ flokli dylanmtaylor ];
+    maintainers = with maintainers; [ dylanmtaylor ];
     hydraPlatforms = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/default.nix b/nixpkgs/pkgs/development/libraries/pipewire/default.nix
index 941d4da56894..fdc514c286b7 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pipewire/default.nix
@@ -75,7 +75,7 @@ let
 
   self = stdenv.mkDerivation rec {
     pname = "pipewire";
-    version = "0.3.78";
+    version = "0.3.79";
 
     outputs = [
       "out"
@@ -93,7 +93,7 @@ let
       owner = "pipewire";
       repo = "pipewire";
       rev = version;
-      sha256 = "sha256-tiVuab8kugp9ZOKL/m8uZQps/pcrVihwB3rRf6SGuzc=";
+      sha256 = "sha256-pqs991pMqz3IQE+NUk0VNzZS4ExwfoZqBQDWBSGdWcs=";
     };
 
     patches = [
diff --git a/nixpkgs/pkgs/development/libraries/ppl/default.nix b/nixpkgs/pkgs/development/libraries/ppl/default.nix
index a94cf9e38d0e..c9b456ba831e 100644
--- a/nixpkgs/pkgs/development/libraries/ppl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ppl/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   patches = [(fetchpatch {
     name = "clang5-support.patch";
-    url = "https://git.sagemath.org/sage.git/plain/build/pkgs/ppl/patches/clang5-support.patch?h=9.2";
+    url = "https://raw.githubusercontent.com/sagemath/sage/9.2/build/pkgs/ppl/patches/clang5-support.patch";
     sha256 = "1zj90hm25pkgvk4jlkfzh18ak9b98217gbidl3731fdccbw6hr87";
   })];
 
diff --git a/nixpkgs/pkgs/development/libraries/prison/default.nix b/nixpkgs/pkgs/development/libraries/prison/default.nix
deleted file mode 100644
index 71f8596c646b..000000000000
--- a/nixpkgs/pkgs/development/libraries/prison/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, stdenv, fetchurl, cmake, qrencode, qt4, libdmtx }:
-
-stdenv.mkDerivation rec {
-  pname = "prison";
-  version = "1.0";
-
-  src = fetchurl {
-    url = "mirror://kde/stable/prison/${version}/src/prison-${version}.tar.gz";
-    sha256 = "08hkzzda36jpdywjqlyzcvli7cx17h4l9yffzsdnhdd788n28krr";
-  };
-
-  buildInputs = [ qt4 qrencode libdmtx ];
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    description = "Qt4 library for QR-codes";
-    license = lib.licenses.mit;
-    inherit (qt4.meta) platforms;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/3.24.nix b/nixpkgs/pkgs/development/libraries/protobuf/3.24.nix
new file mode 100644
index 000000000000..2deb155444ec
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/protobuf/3.24.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic-v3-cmake.nix ({
+  version = "3.24.2";
+  sha256 = "sha256-yVLszyVtsz1CCzeOkioL4O3mWTFKKVBUyOhwDbC5UqE=";
+} // args)
diff --git a/nixpkgs/pkgs/development/libraries/qimageblitz/default.nix b/nixpkgs/pkgs/development/libraries/qimageblitz/default.nix
deleted file mode 100644
index e838eb07201f..000000000000
--- a/nixpkgs/pkgs/development/libraries/qimageblitz/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{lib, stdenv, fetchurl, cmake, qt4}:
-
-stdenv.mkDerivation rec {
-  pname = "qimageblitz";
-  version = "0.0.4";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/qimageblitz/qimageblitz-${version}.tar.bz2";
-    sha256 = "0pnaf3qi7rgkxzs2mssmslb3f9ya4cyx09wzwlis3ppyvf72j0p9";
-  };
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ qt4 ];
-
-  patches = [ ./qimageblitz-9999-exec-stack.patch ];
-
-  meta = {
-    description = "Graphical effect and filter library for KDE4";
-    license = lib.licenses.bsd2;
-    homepage = "http://qimageblitz.sourceforge.net";
-    platforms = lib.platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/qimageblitz/qimageblitz-9999-exec-stack.patch b/nixpkgs/pkgs/development/libraries/qimageblitz/qimageblitz-9999-exec-stack.patch
deleted file mode 100644
index 8692c240f7bb..000000000000
--- a/nixpkgs/pkgs/development/libraries/qimageblitz/qimageblitz-9999-exec-stack.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -uar qimageblitz/blitz/asm_scale.S qimageblitz~/blitz/asm_scale.S
---- qimageblitz-orig/blitz/asm_scale.S	2007-10-17 01:17:57.000000000 +0200
-+++ qimageblitz/blitz/asm_scale.S	2007-10-17 01:19:12.000000000 +0200
-@@ -814,3 +814,7 @@
- SIZE(qimageScale_mmx_AARGBA)
- 
- #endif
-+#if defined(__linux__) && defined(__ELF__)
-+.section .note.GNU-stack,"",%progbits
-+#endif
-+
diff --git a/nixpkgs/pkgs/development/libraries/qscintilla-qt4/default.nix b/nixpkgs/pkgs/development/libraries/qscintilla-qt4/default.nix
deleted file mode 100644
index 23daedd217e2..000000000000
--- a/nixpkgs/pkgs/development/libraries/qscintilla-qt4/default.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ stdenv
-, lib
-, fetchurl
-, unzip
-, qt4
-, qmake4Hook
-}:
-
-stdenv.mkDerivation rec {
-  pname = "qscintilla-qt4";
-  version = "2.11.6";
-
-  src = fetchurl {
-    url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla-${version}.tar.gz";
-    sha256 = "5zRgV9tH0vs4RGf6/M/LE6oHQTc8XVk7xytVsvDdIKc=";
-  };
-
-  sourceRoot = "QScintilla-${version}/Qt4Qt5";
-
-  buildInputs = [ qt4 ];
-
-  nativeBuildInputs = [ unzip qmake4Hook ];
-
-  patches = [
-    ./fix-qt4-build.patch
-  ];
-
-  # Make sure that libqscintilla2.so is available in $out/lib since it is expected
-  # by some packages such as sqlitebrowser
-  postFixup = ''
-    ln -s $out/lib/libqscintilla2_qt4.so $out/lib/libqscintilla2.so
-  '';
-
-  dontWrapQtApps = true;
-
-  postPatch = ''
-    substituteInPlace qscintilla.pro \
-      --replace '$$[QT_INSTALL_LIBS]'         $out/lib \
-      --replace '$$[QT_INSTALL_HEADERS]'      $out/include \
-      --replace '$$[QT_INSTALL_TRANSLATIONS]' $out/translations \
-      --replace '$$[QT_HOST_DATA]/mkspecs'    $out/mkspecs \
-      --replace '$$[QT_INSTALL_DATA]/mkspecs' $out/mkspecs \
-      --replace '$$[QT_INSTALL_DATA]'         $out/share
-  '';
-
-  meta = with lib; {
-    description = "A Qt port of the Scintilla text editing library";
-    longDescription = ''
-      QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor
-      control.
-
-      As well as features found in standard text editing components,
-      QScintilla includes features especially useful when editing and
-      debugging source code. These include support for syntax styling,
-      error indicators, code completion and call tips. The selection
-      margin can contain markers like those used in debuggers to
-      indicate breakpoints and the current line. Styling choices are
-      more open than with many editors, allowing the use of
-      proportional fonts, bold and italics, multiple foreground and
-      background colours and multiple fonts.
-    '';
-    homepage = "https://www.riverbankcomputing.com/software/qscintilla/intro";
-    license = with licenses; [ gpl3 ]; # and commercial
-    maintainers = with maintainers; [ peterhoeg ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/qscintilla-qt4/fix-qt4-build.patch b/nixpkgs/pkgs/development/libraries/qscintilla-qt4/fix-qt4-build.patch
deleted file mode 100644
index 520a55b1ea21..000000000000
--- a/nixpkgs/pkgs/development/libraries/qscintilla-qt4/fix-qt4-build.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur QScintilla_gpl-2.11.2/Qt4Qt5/Qsci/qsciscintillabase.h QScintilla_gpl-2.11.2-fix/Qt4Qt5/Qsci/qsciscintillabase.h
---- Qt4Qt5/Qsci/qsciscintillabase.h	2019-06-25 14:49:27.000000000 +0200
-+++ Qt4Qt5-fix/Qsci/qsciscintillabase.h	2019-10-04 10:22:26.337474261 +0200
-@@ -27,6 +27,7 @@
- #include <QByteArray>
- #include <QPoint>
- #include <QTimer>
-+#include <QUrl>
- 
- #include <Qsci/qsciglobal.h>
- 
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/clang-5-darwin.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/clang-5-darwin.patch
deleted file mode 100644
index 7b181f3ad896..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/clang-5-darwin.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/gui/text/qfontengine_coretext.mm b/src/gui/text/qfontengine_coretext.mm
-index 204d685..e05179e 100644
---- a/src/gui/text/qfontengine_coretext.mm
-+++ b/src/gui/text/qfontengine_coretext.mm
-@@ -886,7 +886,7 @@ void QCoreTextFontEngine::getUnscaledGlyph(glyph_t glyph, QPainterPath *path, gl
- 
- QFixed QCoreTextFontEngine::emSquareSize() const
- {
--    return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
-+    return QFixed(int(CTFontGetUnitsPerEm(ctfont)));
- }
- 
- QFontEngine *QCoreTextFontEngine::cloneWithSize(qreal pixelSize) const
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix
deleted file mode 100644
index a8257a36d39d..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix
+++ /dev/null
@@ -1,239 +0,0 @@
-{ stdenv, lib, fetchurl, fetchpatch, substituteAll
-, libXrender, libXinerama, libXcursor, libXv, libXext
-, libXfixes, libXrandr, libSM, freetype, fontconfig, zlib, libjpeg, libpng
-, libmng, which, libGLU, openssl, dbus, cups, pkg-config
-, libtiff, glib, icu, libmysqlclient, postgresql, sqlite, perl, coreutils, libXi
-, alsa-lib
-, libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
-, gtkStyle ? stdenv.hostPlatform == stdenv.buildPlatform, gtk2, gdk-pixbuf
-, gnomeStyle ? false, libgnomeui, GConf, gnome_vfs
-, developerBuild ? false
-, docs ? false
-, examples ? false
-, demos ? false
-# darwin support
-, libobjc, ApplicationServices, OpenGL, Cocoa, AGL, libcxx
-}:
-
-# TODO:
-#  * move some plugins (e.g., SQL plugins) to dedicated derivations to avoid
-#    false build-time dependencies
-
-stdenv.mkDerivation rec {
-  pname = "qt" + lib.optionalString ( docs && demos && examples && developerBuild ) "-full";
-  version = "4.8.7";
-
-  src = fetchurl {
-    url = "http://download.qt-project.org/official_releases/qt/"
-      + "${lib.versions.majorMinor version}/${version}/qt-everywhere-opensource-src-${version}.tar.gz";
-    sha256 = "183fca7n7439nlhxyg1z7aky0izgbyll3iwakw4gwivy16aj5272";
-  };
-
-  outputs = [ "out" "dev" ];
-
-  outputInclude = "out";
-
-  setOutputFlags = false;
-
-
-  prePatch = ''
-    substituteInPlace configure --replace /bin/pwd pwd
-    substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
-    substituteInPlace src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp \
-      --replace 'asm volatile' 'asm'
-    sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i mkspecs/*/*.conf
-  '' + lib.optionalString stdenv.isDarwin ''
-    # remove impure reference to /usr/lib/libstdc++.6.dylib
-    # there might be more references, but this is the only one I could find
-    substituteInPlace tools/macdeployqt/tests/tst_deployment_mac.cpp \
-      --replace /usr/lib/libstdc++.6.dylib "${stdenv.cc}/lib/libstdc++.6.dylib"
-  '' + lib.optionalString stdenv.cc.isClang ''
-    substituteInPlace src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp \
-      --replace 'optionalHeight > 0' 'optionalHeight != NULL'
-  '';
-
-  patches =
-    lib.optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
-      ./glib-2.32.patch
-      ./libressl.patch
-      ./parallel-configure.patch
-      ./clang-5-darwin.patch
-      ./qt-4.8.7-unixmake-darwin.patch
-      ./kill-legacy-darwin-apis.patch
-      (substituteAll {
-        src = ./dlopen-absolute-paths.diff;
-        cups = if cups != null then lib.getLib cups else null;
-        icu = icu.out;
-        libXfixes = libXfixes.out;
-        glibc = stdenv.cc.libc.out;
-      })
-      (fetchpatch {
-        name = "fix-medium-font.patch";
-        url = "https://salsa.debian.org/qt-kde-team/qt/qt4-x11/raw/"
-          + "21b342d71c19e6d68b649947f913410fe6129ea4/debian/patches/kubuntu_39_fix_medium_font.diff";
-        sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j";
-      })
-      # Patches are no longer available from here, so vendoring it for now.
-      #(fetchpatch {
-      #  name = "qt4-gcc6.patch";
-      #  url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qt4-gcc6.patch?h=packages/qt4&id=ca773a144f5abb244ac4f2749eeee9333cac001f";
-      #  sha256 = "07lrva7bjh6i40p7b3ml26a2jlznri8bh7y7iyx5zmvb1gfxmj34";
-      #})
-      ./qt4-gcc6.patch
-      ./qt4-openssl-1.1.patch
-      (fetchpatch {
-        name = "gcc9-foreach.patch";
-        url = "https://salsa.debian.org/qt-kde-team/qt/qt4-x11/raw/"
-          + "0d4a3dd61ccb156dee556c214dbe91c04d44a717/debian/patches/gcc9-qforeach.patch";
-        sha256 = "0dzn6qxrgxb75rvck9kmy5gspawdn970wsjw56026dhkih8cp3pg";
-      })
-
-      # Pull upstream fix for gcc-11 support.
-      (fetchpatch {
-        name = "gcc11-ptr-cmp.patch";
-        url = "https://github.com/qt/qttools/commit/7138c963f9d1258bc1b49cb4d63c3e2b7d0ccfda.patch";
-        sha256 = "1a9g05r267c94qpw3ssb6k4lci200vla3vm5hri1nna6xwdsmrhc";
-        # "src/" -> "tools/"
-        stripLen = 2;
-        extraPrefix = "tools/";
-      })
-    ]
-    ++ lib.optional gtkStyle (substituteAll ({
-        src = ./dlopen-gtkstyle.diff;
-        # substituteAll ignores env vars starting with capital letter
-        gtk = gtk2.out;
-      } // lib.optionalAttrs gnomeStyle {
-        gconf = GConf.out;
-        libgnomeui = libgnomeui.out;
-        gnome_vfs = gnome_vfs.out;
-      }))
-    ++ lib.optional stdenv.isAarch64 (fetchpatch {
-        url = "https://src.fedoraproject.org/rpms/qt/raw/ecf530486e0fb7fe31bad26805cde61115562b2b/f/qt-aarch64.patch";
-        sha256 = "1fbjh78nmafqmj7yk67qwjbhl3f6ylkp6x33b1dqxfw9gld8b3gl";
-      })
-    ++ lib.optionals stdenv.hostPlatform.isMusl [
-        ./qt-musl.patch
-        ./qt-musl-iconv-no-bom.patch
-        ./patch-qthread-stacksize.diff
-        ./qsettings-recursive-global-mutex.patch
-      ];
-
-  preConfigure = ''
-    export LD_LIBRARY_PATH="`pwd`/lib''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH"
-    configureFlags+="
-      -docdir $out/share/doc/qt-${version}
-      -plugindir $out/lib/qt4/plugins
-      -importdir $out/lib/qt4/imports
-      -examplesdir $TMPDIR/share/doc/qt-${version}/examples
-      -demosdir $TMPDIR/share/doc/qt-${version}/demos
-      -datadir $out/share/qt-${version}
-      -translationdir $out/share/qt-${version}/translations
-      --jobs=$NIX_BUILD_CORES
-    "
-    unset LD # Makefile uses gcc for linking; setting LD interferes
-  '' + lib.optionalString stdenv.cc.isClang ''
-    sed -i 's/QMAKE_CC = gcc/QMAKE_CC = clang/' mkspecs/common/g++-base.conf
-    sed -i 's/QMAKE_CXX = g++/QMAKE_CXX = clang++/' mkspecs/common/g++-base.conf
-  '' + lib.optionalString stdenv.hostPlatform.isWindows ''
-    sed -i -e 's/ g++/ ${stdenv.cc.targetPrefix}g++/' \
-      -e 's/ gcc/ ${stdenv.cc.targetPrefix}gcc/' \
-      -e 's/ ar/ ${stdenv.cc.targetPrefix}ar/' \
-      -e 's/ strip/ ${stdenv.cc.targetPrefix}strip/' \
-      -e 's/ windres/ ${stdenv.cc.targetPrefix}windres/' \
-      mkspecs/win32-g++/qmake.conf
-  '';
-
-  prefixKey = "-prefix ";
-
-  configurePlatforms = [];
-  configureFlags = let
-    mk = cond: name: "-${lib.optionalString (!cond) "no-"}${name}";
-    platformFlag =
-      if stdenv.hostPlatform != stdenv.buildPlatform
-      then "-xplatform"
-      else "-platform";
-  in (if stdenv.hostPlatform != stdenv.buildPlatform then [
-    # I've not tried any case other than i686-pc-mingw32.
-    # -nomake tools: it fails linking some asian language symbols
-    # -no-svg: it fails to build on mingw64
-    "-static" "-release" "-confirm-license" "-opensource"
-    "-no-opengl" "-no-phonon"
-    "-no-svg"
-    "-make" "qmake" "-make" "libs" "-nomake" "tools"
-  ] else [
-    "-v" "-no-separate-debug-info" "-release" "-fast" "-confirm-license" "-opensource"
-
-    (mk (!stdenv.isFreeBSD) "opengl") "-xrender" "-xrandr" "-xinerama" "-xcursor" "-xinput" "-xfixes" "-fontconfig"
-    "-qdbus" (mk (cups != null) "cups") "-glib" "-dbus-linked" "-openssl-linked"
-
-    "-${if libmysqlclient != null then "plugin" else "no"}-sql-mysql" "-system-sqlite"
-
-    "-exceptions" "-xmlpatterns"
-
-    "-make" "libs" "-make" "tools" "-make" "translations"
-    "-no-phonon" "-no-webkit" "-no-multimedia" "-audio-backend"
-  ]) ++ [
-    "-${lib.optionalString (!demos) "no"}make" "demos"
-    "-${lib.optionalString (!examples) "no"}make" "examples"
-    "-${lib.optionalString (!docs) "no"}make" "docs"
-  ] ++ lib.optional developerBuild "-developer-build"
-    ++ lib.optionals stdenv.hostPlatform.isDarwin [ platformFlag "unsupported/macx-clang-libc++" ]
-    ++ lib.optionals stdenv.hostPlatform.isWindows [ platformFlag "win32-g++-4.6" ];
-
-  propagatedBuildInputs =
-    [ libXrender libXrandr libXinerama libXcursor libXext libXfixes libXv libXi
-      libSM zlib libpng openssl dbus freetype fontconfig glib ]
-        # Qt doesn't directly need GLU (just GL), but many apps use, it's small and doesn't remain a runtime-dep if not used
-    ++ lib.optional libGLSupported libGLU;
-
-  # The following libraries are only used in plugins
-  buildInputs =
-    [ cups # Qt dlopen's libcups instead of linking to it
-      postgresql sqlite libjpeg libmng libtiff icu ]
-    ++ lib.optionals (libmysqlclient != null) [ libmysqlclient ]
-    ++ lib.optionals gtkStyle [ gtk2 gdk-pixbuf ]
-    ++ lib.optionals stdenv.isDarwin [ ApplicationServices OpenGL Cocoa AGL libcxx libobjc ];
-
-  nativeBuildInputs = [ perl pkg-config which ];
-
-  enableParallelBuilding = true;
-
-  env.NIX_CFLAGS_COMPILE = toString (
-    # with gcc7 the warnings blow the log over Hydra's limit
-    [ "-Wno-expansion-to-defined" "-Wno-unused-local-typedefs" ]
-    ++ lib.optional stdenv.isLinux "-std=gnu++98" # gnu++ in (Obj)C flags is no good on Darwin
-    ++ lib.optionals (stdenv.isFreeBSD || stdenv.isDarwin)
-      [ "-I${glib.dev}/include/glib-2.0" "-I${glib.out}/lib/glib-2.0/include" ]
-    ++ lib.optional stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1");
-
-  NIX_LDFLAGS = lib.optionalString (stdenv.isFreeBSD || stdenv.isDarwin) "-lglib-2.0";
-
-  preBuild = lib.optionalString stdenv.isDarwin ''
-    # resolve "extra qualification on member" error
-    sed -i 's/struct ::TabletProximityRec;/struct TabletProximityRec;/' \
-      src/gui/kernel/qt_cocoa_helpers_mac_p.h
-    find . -name "Makefile*" | xargs sed -i 's/^\(LINK[[:space:]]* = clang++\)/\1 ${NIX_LDFLAGS}/'
-    sed -i 's/^\(LIBS[[:space:]]*=.*$\)/\1 -lobjc/' ./src/corelib/Makefile.Release
-  '';
-
-  doCheck = false; # qwebframe test fails with fontconfig errors
-
-  postInstall = ''
-    rm -rf $out/tests
-  ''
-  # I don't know why it does not install qmake
-  + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
-    cp bin/qmake* $out/bin
-  '';
-
-  dontStrip = stdenv.hostPlatform != stdenv.buildPlatform;
-
-  meta = {
-    homepage    = "https://qt-project.org/";
-    description = "A cross-platform application framework for C++";
-    license     = lib.licenses.lgpl21Plus; # or gpl3
-    maintainers = with lib.maintainers; [ orivej lovek323 sander ];
-    platforms   = lib.platforms.unix;
-    badPlatforms = [ "x86_64-darwin" "aarch64-darwin" ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff
deleted file mode 100644
index 4c64e9e26e30..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff
+++ /dev/null
@@ -1,74 +0,0 @@
-diff --git a/src/corelib/tools/qlocale_icu.cpp b/src/corelib/tools/qlocale_icu.cpp
-index c3e2907..2fac4e1 100644
---- a/src/corelib/tools/qlocale_icu.cpp
-+++ b/src/corelib/tools/qlocale_icu.cpp
-@@ -81,7 +81,7 @@ bool qt_initIcu(const QString &localeString)
-     if (status == NotLoaded) {
- 
-         // resolve libicui18n
--        QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
-+        QLibrary lib(QLatin1String("@icu@/lib/libicui18n"), QLatin1String(U_ICU_VERSION_SHORT));
-         lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
-         if (!lib.load()) {
-             qWarning() << "Unable to load library icui18n" << lib.errorString();
-@@ -111,7 +111,7 @@ bool qt_initIcu(const QString &localeString)
-         }
- 
-         // resolve libicuuc
--        QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
-+        QLibrary ucLib(QLatin1String("@icu@/lib/libicuuc"), QLatin1String(U_ICU_VERSION_SHORT));
-         ucLib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
-         if (!ucLib.load()) {
-             qWarning() << "Unable to load library icuuc" << ucLib.errorString();
-diff --git a/src/gui/painting/qcups.cpp b/src/gui/painting/qcups.cpp
-index 99ea43f..acdf9c9 100644
---- a/src/gui/painting/qcups.cpp
-+++ b/src/gui/painting/qcups.cpp
-@@ -87,7 +87,7 @@ static CupsPrintFile _cupsPrintFile = 0;
- 
- static void resolveCups()
- {
--    QLibrary cupsLib(QLatin1String("cups"), 2);
-+    QLibrary cupsLib(QLatin1String("@cups@/lib/libcups"), 2);
-     if(cupsLib.load()) {
-         _cupsGetDests = (CupsGetDests) cupsLib.resolve("cupsGetDests");
-         _cupsFreeDests = (CupsFreeDests) cupsLib.resolve("cupsFreeDests");
-diff --git a/src/gui/painting/qprinterinfo_unix.cpp b/src/gui/painting/qprinterinfo_unix.cpp
-index 3d15538..f0f5351 100644
---- a/src/gui/painting/qprinterinfo_unix.cpp
-+++ b/src/gui/painting/qprinterinfo_unix.cpp
-@@ -454,7 +454,7 @@ int qt_retrieveNisPrinters(QList<QPrinterDescription> *printers)
-     char *domain;
-     int err;
- 
--    QLibrary lib(QLatin1String("nsl"));
-+    QLibrary lib(QLatin1String("@glibc@/lib/libnsl"));
-     typedef int (*ypGetDefaultDomain)(char **);
-     ypGetDefaultDomain _ypGetDefaultDomain = (ypGetDefaultDomain)lib.resolve("yp_get_default_domain");
-     typedef int (*ypAll)(const char *, const char *, const struct ypall_callback *);
-diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
-index 6b42d1e..f88b628 100644
---- a/src/network/kernel/qhostinfo_unix.cpp
-+++ b/src/network/kernel/qhostinfo_unix.cpp
-@@ -95,7 +95,7 @@ static res_state_ptr local_res = 0;
- static void resolveLibrary()
- {
- #if !defined(QT_NO_LIBRARY) && !defined(Q_OS_QNX)
--    QLibrary lib(QLatin1String("resolv"));
-+    QLibrary lib(QLatin1String("@glibc@/lib/libresolv"));
-     lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
-     if (!lib.load())
-         return;
-diff --git a/src/plugins/platforms/xlib/qxlibstatic.cpp b/src/plugins/platforms/xlib/qxlibstatic.cpp
-index f8f3d69..d63c5bc 100644
---- a/src/plugins/platforms/xlib/qxlibstatic.cpp
-+++ b/src/plugins/platforms/xlib/qxlibstatic.cpp
-@@ -242,7 +242,7 @@ static void* qt_load_library_runtime(const char *library, int vernum,
- }
- 
- #  define XFIXES_LOAD_RUNTIME(vernum, symbol, symbol_type) \
--    (symbol_type)qt_load_library_runtime("libXfixes", vernum, 4, #symbol);
-+    (symbol_type)qt_load_library_runtime("@libXfixes@/lib/libXfixes", vernum, 4, #symbol);
- #  define XFIXES_LOAD_V1(symbol) \
-     XFIXES_LOAD_RUNTIME(1, symbol, Ptr##symbol)
- #  define XFIXES_LOAD_V2(symbol) \
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-gtkstyle.diff b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-gtkstyle.diff
deleted file mode 100644
index a1c9238be1ae..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/dlopen-gtkstyle.diff
+++ /dev/null
@@ -1,37 +0,0 @@
-diff --git a/src/gui/styles/qgtkstyle_p.cpp b/src/gui/styles/qgtkstyle_p.cpp
-index 3b128e6..39434db 100644
---- a/src/gui/styles/qgtkstyle_p.cpp
-+++ b/src/gui/styles/qgtkstyle_p.cpp
-@@ -312,7 +312,7 @@ GtkStyle* QGtkStylePrivate::gtkStyle(const QHashableLatin1Literal &path)
- void QGtkStylePrivate::resolveGtk() const
- {
-     // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
--    QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
-+    QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
-     libgtk.setLoadHints(QLibrary::ImprovedSearchHeuristics);
- 
-     gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
-@@ -435,8 +435,8 @@ void QGtkStylePrivate::resolveGtk() const
-     pango_font_description_get_family = (Ptr_pango_font_description_get_family)libgtk.resolve("pango_font_description_get_family");
-     pango_font_description_get_style = (Ptr_pango_font_description_get_style)libgtk.resolve("pango_font_description_get_style");
- 
--    gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("gnomeui-2"), 0, "gnome_icon_lookup_sync");
--    gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("gnomevfs-2"), 0, "gnome_vfs_init");
-+    gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("@libgnomeui@/lib/libgnomeui-2"), 0, "gnome_icon_lookup_sync");
-+    gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("@gnome_vfs@/lib/libgnomevfs-2"), 0, "gnome_vfs_init");
- }
- 
- /* \internal
-@@ -608,9 +608,9 @@ void QGtkStylePrivate::cleanupGtkWidgets()
- static bool resolveGConf()
- {
-     if (!QGtkStylePrivate::gconf_client_get_default) {
--        QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_default");
--        QGtkStylePrivate::gconf_client_get_string =  (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_string");
--        QGtkStylePrivate::gconf_client_get_bool =  (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_bool");
-+        QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_default");
-+        QGtkStylePrivate::gconf_client_get_string =  (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_string");
-+        QGtkStylePrivate::gconf_client_get_bool =  (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_bool");
-     }
-     return (QGtkStylePrivate::gconf_client_get_default !=0);
- }
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch
deleted file mode 100644
index 4593c1b4ba8d..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h qt-everywhere-opensource-src-4.8.2/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
---- qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h	2012-04-26 15:46:22.000000000 -0400
-+++ qt-everywhere-opensource-src-4.8.2/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h	2012-07-14 22:47:02.145152876 -0400
-@@ -89,7 +89,7 @@
- #include <pthread.h>
- #elif PLATFORM(GTK)
- #include <wtf/gtk/GOwnPtr.h>
--typedef struct _GMutex GMutex;
-+typedef union _GMutex GMutex;
- typedef struct _GCond GCond;
- #endif
- 
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/kill-legacy-darwin-apis.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/kill-legacy-darwin-apis.patch
deleted file mode 100644
index c1338e98d851..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/kill-legacy-darwin-apis.patch
+++ /dev/null
@@ -1,330 +0,0 @@
-diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp
-index 4a9049b..c0ac9db 100644
---- a/src/corelib/io/qfilesystemengine_unix.cpp
-+++ b/src/corelib/io/qfilesystemengine_unix.cpp
-@@ -242,9 +242,8 @@ QFileSystemEntry QFileSystemEngine::canonicalName(const QFileSystemEntry &entry,
- #else
-     char *ret = 0;
- # if defined(Q_OS_MAC) && !defined(Q_OS_IOS)
--    // When using -mmacosx-version-min=10.4, we get the legacy realpath implementation,
--    // which does not work properly with the realpath(X,0) form. See QTBUG-28282.
--    if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_6) {
-+    // In Nix-on-Darwin, we don't support ancient macOS anyway, and the deleted branch relies on
-+    // a symbol that's been deprecated for years and that our CF doesn't have
-         ret = (char*)malloc(PATH_MAX + 1);
-         if (ret && realpath(entry.nativeFilePath().constData(), (char*)ret) == 0) {
-             const int savedErrno = errno; // errno is checked below, and free() might change it
-@@ -252,19 +251,6 @@ QFileSystemEntry QFileSystemEngine::canonicalName(const QFileSystemEntry &entry,
-             errno = savedErrno;
-             ret = 0;
-         }
--    } else {
--        // on 10.5 we can use FSRef to resolve the file path.
--        QString path = QDir::cleanPath(entry.filePath());
--        FSRef fsref;
--        if (FSPathMakeRef((const UInt8 *)path.toUtf8().data(), &fsref, 0) == noErr) {
--            CFURLRef urlref = CFURLCreateFromFSRef(NULL, &fsref);
--            CFStringRef canonicalPath = CFURLCopyFileSystemPath(urlref, kCFURLPOSIXPathStyle);
--            QString ret = QCFString::toQString(canonicalPath);
--            CFRelease(canonicalPath);
--            CFRelease(urlref);
--            return QFileSystemEntry(ret);
--        }
--    }
- # else
- #  if _POSIX_VERSION >= 200801L
-     ret = realpath(entry.nativeFilePath().constData(), (char*)0);
-diff --git a/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.h b/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.h
-index 3bf7342..b6bcfc0 100644
---- a/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.h
-+++ b/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.h
-@@ -43,7 +43,6 @@ BOOL stringIsCaseInsensitiveEqualToString(NSString *first, NSString *second);
- BOOL hasCaseInsensitiveSuffix(NSString *string, NSString *suffix);
- BOOL hasCaseInsensitiveSubstring(NSString *string, NSString *substring);
- NSString *filenameByFixingIllegalCharacters(NSString *string);
--CFStringEncoding stringEncodingForResource(Handle resource);
- 
- #ifdef __cplusplus
- }
-diff --git a/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.mm b/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.mm
-index d6c3f0c..c88ca76 100644
---- a/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.mm
-+++ b/src/3rdparty/webkit/Source/WebCore/platform/mac/WebCoreNSStringExtras.mm
-@@ -68,45 +68,4 @@ BOOL hasCaseInsensitiveSubstring(NSString *string, NSString *substring)
-     return filename;
- }
- 
--CFStringEncoding stringEncodingForResource(Handle resource)
--{
--    short resRef = HomeResFile(resource);
--    if (ResError() != noErr)
--        return NSMacOSRomanStringEncoding;
--    
--    // Get the FSRef for the current resource file
--    FSRef fref;
--    OSStatus error = FSGetForkCBInfo(resRef, 0, NULL, NULL, NULL, &fref, NULL);
--    if (error != noErr)
--        return NSMacOSRomanStringEncoding;
--    
--    RetainPtr<CFURLRef> url(AdoptCF, CFURLCreateFromFSRef(NULL, &fref));
--    if (!url)
--        return NSMacOSRomanStringEncoding;
--
--    NSString *path = [(NSURL *)url.get() path];
--
--    // Get the lproj directory name
--    path = [path stringByDeletingLastPathComponent];
--    if (!stringIsCaseInsensitiveEqualToString([path pathExtension], @"lproj"))
--        return NSMacOSRomanStringEncoding;
--    
--    NSString *directoryName = [[path stringByDeletingPathExtension] lastPathComponent];
--    RetainPtr<CFStringRef> locale(AdoptCF, CFLocaleCreateCanonicalLocaleIdentifierFromString(NULL, (CFStringRef)directoryName));
--    if (!locale)
--        return NSMacOSRomanStringEncoding;
--
--    LangCode lang;
--    RegionCode region;
--    error = LocaleStringToLangAndRegionCodes([(NSString *)locale.get() UTF8String], &lang, &region);
--    if (error != noErr)
--        return NSMacOSRomanStringEncoding;
--
--    TextEncoding encoding;
--    error = UpgradeScriptInfoToTextEncoding(kTextScriptDontCare, lang, region, NULL, &encoding);
--    if (error != noErr)
--        return NSMacOSRomanStringEncoding;
--    
--    return encoding;
--}
- 
-diff --git a/src/3rdparty/webkit/Source/WebCore/plugins/mac/PluginPackageMac.cpp b/src/3rdparty/webkit/Source/WebCore/plugins/mac/PluginPackageMac.cpp
-index 865ea32..20bda8d 100644
---- a/src/3rdparty/webkit/Source/WebCore/plugins/mac/PluginPackageMac.cpp
-+++ b/src/3rdparty/webkit/Source/WebCore/plugins/mac/PluginPackageMac.cpp
-@@ -101,33 +101,6 @@ static WTF::RetainPtr<CFDictionaryRef> readPListFile(CFStringRef fileName, bool
-     return map;
- }
- 
--static Vector<String> stringListFromResourceId(SInt16 id)
--{
--    Vector<String> list;
--
--    Handle handle = Get1Resource('STR#', id);
--    if (!handle)
--        return list;
--
--    CFStringEncoding encoding = stringEncodingForResource(handle);
--
--    unsigned char* p = (unsigned char*)*handle;
--    if (!p)
--        return list;
--
--    SInt16 count = *(SInt16*)p;
--    p += sizeof(SInt16);
--
--    for (SInt16 i = 0; i < count; ++i) {
--        unsigned char length = *p;
--        WTF::RetainPtr<CFStringRef> str = CFStringCreateWithPascalString(0, p, encoding);
--        list.append(str.get());
--        p += 1 + length;
--    }
--
--    return list;
--}
--
- bool PluginPackage::fetchInfo()
- {
-     if (!load())
-@@ -202,36 +175,8 @@ bool PluginPackage::fetchInfo()
-         m_description = (CFStringRef)CFBundleGetValueForInfoDictionaryKey(m_module, CFSTR("WebPluginDescription"));
- 
-     } else {
--        int resFile = CFBundleOpenBundleResourceMap(m_module);
--
--        UseResFile(resFile);
--
--        Vector<String> mimes = stringListFromResourceId(MIMEListStringStringNumber);
--
--        if (mimes.size() % 2 != 0)
--            return false;
--
--        Vector<String> descriptions = stringListFromResourceId(MIMEDescriptionStringNumber);
--        if (descriptions.size() != mimes.size() / 2)
--            return false;
--
--        for (size_t i = 0;  i < mimes.size(); i += 2) {
--            String mime = mimes[i].lower();
--            Vector<String> extensions;
--            mimes[i + 1].lower().split(UChar(','), extensions);
--
--            m_mimeToExtensions.set(mime, extensions);
--
--            m_mimeToDescriptions.set(mime, descriptions[i / 2]);
--        }
--
--        Vector<String> names = stringListFromResourceId(PluginNameOrDescriptionStringNumber);
--        if (names.size() == 2) {
--            m_description = names[0];
--            m_name = names[1];
--        }
--
--        CFBundleCloseBundleResourceMap(m_module, resFile);
-+        LOG(Plugins, "Nix removed ancient code that relies on long-deprecated functionality that we don't want to support!");
-+        return false;
-     }
- 
-     LOG(Plugins, "PluginPackage::fetchInfo(): Found plug-in '%s'", m_name.utf8().data());
-diff --git a/src/3rdparty/webkit/Source/WebKit2/Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm b/src/3rdparty/webkit/Source/WebKit2/Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm
-index b206e48..669d442 100644
---- a/src/3rdparty/webkit/Source/WebKit2/Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm
-+++ b/src/3rdparty/webkit/Source/WebKit2/Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm
-@@ -26,7 +26,6 @@
- #import "config.h"
- #import "NetscapePluginModule.h"
- 
--#import <WebCore/WebCoreNSStringExtras.h>
- #import <wtf/HashSet.h>
- 
- using namespace WebCore;
-@@ -196,132 +195,6 @@ static bool getPluginInfoFromPropertyLists(CFBundleRef bundle, PluginInfo& plugi
-     return true;    
- }
- 
--class ResourceMap {
--public:
--    explicit ResourceMap(CFBundleRef bundle)
--        : m_bundle(bundle)
--        , m_currentResourceFile(CurResFile())
--        , m_bundleResourceMap(CFBundleOpenBundleResourceMap(m_bundle))
--    {
--        UseResFile(m_bundleResourceMap);
--    }
--
--    ~ResourceMap()
--    {
--        // Close the resource map.
--        CFBundleCloseBundleResourceMap(m_bundle, m_bundleResourceMap);
--        
--        // And restore the old resource.
--        UseResFile(m_currentResourceFile);
--    }
--
--    bool isValid() const { return m_bundleResourceMap != -1; }
--
--private:
--    CFBundleRef m_bundle;
--    ResFileRefNum m_currentResourceFile;
--    ResFileRefNum m_bundleResourceMap;
--};
--
--static bool getStringListResource(ResID resourceID, Vector<String>& stringList) {
--    Handle stringListHandle = Get1Resource('STR#', resourceID);
--    if (!stringListHandle || !*stringListHandle)
--        return false;
--
--    // Get the string list size.
--    Size stringListSize = GetHandleSize(stringListHandle);
--    if (stringListSize < static_cast<Size>(sizeof(UInt16)))
--        return false;
--
--    CFStringEncoding stringEncoding = stringEncodingForResource(stringListHandle);
--
--    unsigned char* ptr = reinterpret_cast<unsigned char*>(*stringListHandle);
--    unsigned char* end = ptr + stringListSize;
--    
--    // Get the number of strings in the string list.
--    UInt16 numStrings = *reinterpret_cast<UInt16*>(ptr);
--    ptr += sizeof(UInt16);
--
--    for (UInt16 i = 0; i < numStrings; ++i) {
--        // We're past the end of the string, bail.
--        if (ptr >= end)
--            return false;
--
--        // Get the string length.
--        unsigned char stringLength = *ptr++;
--
--        RetainPtr<CFStringRef> cfString(AdoptCF, CFStringCreateWithBytesNoCopy(kCFAllocatorDefault, ptr, stringLength, stringEncoding, false, kCFAllocatorNull));
--        if (!cfString.get())
--            return false;
--
--        stringList.append(cfString.get());
--        ptr += stringLength;
--    }
--
--    if (ptr != end)
--        return false;
--
--    return true;
--}
--
--static const ResID PluginNameOrDescriptionStringNumber = 126;
--static const ResID MIMEDescriptionStringNumber = 127;
--static const ResID MIMEListStringStringNumber = 128;
--
--static bool getPluginInfoFromCarbonResources(CFBundleRef bundle, PluginInfo& pluginInfo)
--{
--    ResourceMap resourceMap(bundle);
--    if (!resourceMap.isValid())
--        return false;
--
--    // Get the description and name string list.
--    Vector<String> descriptionAndName;
--    if (!getStringListResource(PluginNameOrDescriptionStringNumber, descriptionAndName))
--        return false;
--
--    // Get the MIME types and extensions string list. This list needs to be a multiple of two.
--    Vector<String> mimeTypesAndExtensions;
--    if (!getStringListResource(MIMEListStringStringNumber, mimeTypesAndExtensions))
--        return false;
--
--    if (mimeTypesAndExtensions.size() % 2)
--        return false;
--
--    // Now get the MIME type descriptions string list. This string list needs to be the same length as the number of MIME types.
--    Vector<String> mimeTypeDescriptions;
--    if (!getStringListResource(MIMEDescriptionStringNumber, mimeTypeDescriptions))
--        return false;
--
--    // Add all MIME types.
--    for (size_t i = 0; i < mimeTypesAndExtensions.size() / 2; ++i) {
--        MimeClassInfo mimeClassInfo;
--        
--        const String& mimeType = mimeTypesAndExtensions[i * 2];
--        String description;
--        if (i < mimeTypeDescriptions.size())
--            description = mimeTypeDescriptions[i];
--        
--        mimeClassInfo.type = mimeType.lower();
--        mimeClassInfo.desc = description;
--        
--        Vector<String> extensions;
--        mimeTypesAndExtensions[i * 2 + 1].split(',', extensions);
--        
--        for (size_t i = 0; i < extensions.size(); ++i)
--            mimeClassInfo.extensions.append(extensions[i].lower());
--
--        pluginInfo.mimes.append(mimeClassInfo);
--    }
--
--    // Set the description and name if they exist.
--    if (descriptionAndName.size() > 0)
--        pluginInfo.desc = descriptionAndName[0];
--    if (descriptionAndName.size() > 1)
--        pluginInfo.name = descriptionAndName[1];
--
--    return true;
--}
--
- bool NetscapePluginModule::getPluginInfo(const String& pluginPath, PluginInfoStore::Plugin& plugin)
- {
-     RetainPtr<CFStringRef> bundlePath(AdoptCF, pluginPath.createCFString());
-@@ -344,8 +217,7 @@ static bool getPluginInfoFromCarbonResources(CFBundleRef bundle, PluginInfo& plu
-         return false;
-     
-     // Check that there's valid info for this plug-in.
--    if (!getPluginInfoFromPropertyLists(bundle.get(), plugin.info) &&
--        !getPluginInfoFromCarbonResources(bundle.get(), plugin.info))
-+    if (!getPluginInfoFromPropertyLists(bundle.get(), plugin.info))
-         return false;
-     
-     plugin.path = pluginPath;
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/libressl.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/libressl.patch
deleted file mode 100644
index 5432610d9dc9..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/libressl.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-$OpenBSD: patch-src_network_ssl_qsslsocket_openssl_symbols_cpp,v 1.3 2015/09/17 12:24:42 dcoppa Exp $
---- a/src/network/ssl/qsslsocket_openssl_symbols.cpp	Wed Sep 16 13:27:39 2015
-+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp	Wed Sep 16 13:33:06 2015
-@@ -228,13 +228,17 @@ DEFINEFUNC(int, SSL_shutdown, SSL *a, a, return -1, re
- #ifndef OPENSSL_NO_SSL2
- DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
-+#ifndef OPENSSL_NO_SSL3
- DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(const SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #ifndef OPENSSL_NO_SSL2
- DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
-+#ifndef OPENSSL_NO_SSL3
- DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #else
-@@ -822,13 +826,17 @@ bool q_resolveOpenSslSymbols()
- #ifndef OPENSSL_NO_SSL2
-     RESOLVEFUNC(SSLv2_client_method)
- #endif
-+#ifndef OPENSSL_NO_SSL3
-     RESOLVEFUNC(SSLv3_client_method)
-+#endif
-     RESOLVEFUNC(SSLv23_client_method)
-     RESOLVEFUNC(TLSv1_client_method)
- #ifndef OPENSSL_NO_SSL2
-     RESOLVEFUNC(SSLv2_server_method)
- #endif
-+#ifndef OPENSSL_NO_SSL3
-     RESOLVEFUNC(SSLv3_server_method)
-+#endif
-     RESOLVEFUNC(SSLv23_server_method)
-     RESOLVEFUNC(TLSv1_server_method)
-     RESOLVEFUNC(X509_NAME_entry_count)
---- a/src/network/ssl/qsslsocket_openssl.cpp	Thu May  7 16:14:44 2015
-+++ b/src/network/ssl/qsslsocket_openssl.cpp	Wed Sep 16 13:30:03 2015
-@@ -267,15 +267,19 @@ init_context:
- #endif
-         break;
-     case QSsl::SslV3:
-+#ifndef OPENSSL_NO_SSL3
-         ctx = q_SSL_CTX_new(client ? q_SSLv3_client_method() : q_SSLv3_server_method());
-+#else
-+        ctx = 0; // SSL 3 not supported by the system, but chosen deliberately -> error
-+#endif
-         break;
--    case QSsl::SecureProtocols: // SslV2 will be disabled below
--    case QSsl::TlsV1SslV3: // SslV2 will be disabled below
-     case QSsl::AnyProtocol:
--    default:
-         ctx = q_SSL_CTX_new(client ? q_SSLv23_client_method() : q_SSLv23_server_method());
-         break;
-     case QSsl::TlsV1:
-+    case QSsl::SecureProtocols:
-+    case QSsl::TlsV1SslV3:
-+    default:
-         ctx = q_SSL_CTX_new(client ? q_TLSv1_client_method() : q_TLSv1_server_method());
-         break;
-     }
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/parallel-configure.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/parallel-configure.patch
deleted file mode 100644
index b9b9d6d0a683..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/parallel-configure.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/configure
-+++ b/configure
-@@ -1087,2 +1087,3 @@ fi
- #-------------------------------------------------------------------------------
-+JOBS=
- 
-@@ -2528,2 +2529,5 @@ while [ "$#" -gt 0 ]; do
-         ;;
-+    jobs)
-+        JOBS=-j$VAL
-+        ;;
-     *)
-@@ -5072,3 +5076,3 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ];
-         if "$WHICH" makedepend >/dev/null 2>&1 && grep 'depend:' "$mkfile" >/dev/null 2>&1; then
--            (cd "$outpath/qmake" && "$MAKE" -f "$mkfile" depend) >/dev/null 2>&1
-+            (cd "$outpath/qmake" && "$MAKE" $JOBS -f "$mkfile" depend) >/dev/null 2>&1
-            sed "s,^.*/\([^/]*.o\):,\1:,g" "$mkfile" >"$mkfile.tmp"
-@@ -5080,3 +5084,3 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ];
-     QMAKE_BUILD_ERROR=no
--    (cd "$outpath/qmake"; "$MAKE") || QMAKE_BUILD_ERROR=yes
-+    (cd "$outpath/qmake"; "$MAKE" $JOBS) || QMAKE_BUILD_ERROR=yes
-     [ '!' -z "$QCONFIG_H" ] && mv -f "$QCONFIG_H" "$QMAKE_QCONFIG_H" #move qmake's qconfig.h to qconfig.h.qmake
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/patch-qthread-stacksize.diff b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/patch-qthread-stacksize.diff
deleted file mode 100644
index 53a4c70ac3ae..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/patch-qthread-stacksize.diff
+++ /dev/null
@@ -1,54 +0,0 @@
---- a/src/corelib/thread/qthread_unix.cpp.orig	2015-11-23 19:05:40.000000000 +0100
-+++ b/src/corelib/thread/qthread_unix.cpp	2015-11-24 11:22:31.000000000 +0100
-@@ -79,6 +79,7 @@
- #endif
- 
-+#include <sys/resource.h> // getrlimit/setrlimit
- #if defined(Q_OS_MAC)
- # ifdef qDebug
- #   define old_qDebug qDebug
- #   undef qDebug
-@@ -649,6 +650,43 @@
- #endif // QT_HAS_THREAD_PRIORITY_SCHEDULING
- 
- 
-+    if (d->stackSize == 0) {
-+        // Fix the default (too small) stack size for threads on OS X,
-+        // which also affects the thread pool.
-+        // See also:
-+        // https://bugreports.qt.io/browse/QTBUG-2568
-+        // This fix can also be found in Chromium:
-+        // https://chromium.googlesource.com/chromium/src.git/+/master/base/threading/platform_thread_mac.mm#186
-+
-+        // The Mac OS X default for a pthread stack size is 512kB.
-+        // Libc-594.1.4/pthreads/pthread.c's pthread_attr_init uses
-+        // DEFAULT_STACK_SIZE for this purpose.
-+        //
-+        // 512kB isn't quite generous enough for some deeply recursive threads that
-+        // otherwise request the default stack size by specifying 0. Here, adopt
-+        // glibc's behavior as on Linux, which is to use the current stack size
-+        // limit (ulimit -s) as the default stack size. See
-+        // glibc-2.11.1/nptl/nptl-init.c's __pthread_initialize_minimal_internal. To
-+        // avoid setting the limit below the Mac OS X default or the minimum usable
-+        // stack size, these values are also considered. If any of these values
-+        // can't be determined, or if stack size is unlimited (ulimit -s unlimited),
-+        // stack_size is left at 0 to get the system default.
-+        //
-+        // Mac OS X normally only applies ulimit -s to the main thread stack. On
-+        // contemporary OS X and Linux systems alike, this value is generally 8MB
-+        // or in that neighborhood.
-+        size_t default_stack_size = 0;
-+        struct rlimit stack_rlimit;
-+        if (pthread_attr_getstacksize(&attr, &default_stack_size) == 0 &&
-+            getrlimit(RLIMIT_STACK, &stack_rlimit) == 0 &&
-+            stack_rlimit.rlim_cur != RLIM_INFINITY) {
-+            default_stack_size =
-+                    std::max(std::max(default_stack_size,
-+                                      static_cast<size_t>(PTHREAD_STACK_MIN)),
-+                             static_cast<size_t>(stack_rlimit.rlim_cur));
-+        }
-+        d->stackSize = default_stack_size;
-+    }
-     if (d->stackSize > 0) {
- #if defined(_POSIX_THREAD_ATTR_STACKSIZE) && (_POSIX_THREAD_ATTR_STACKSIZE-0 > 0)
-         int code = pthread_attr_setstacksize(&attr, d->stackSize);
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh
deleted file mode 100644
index b024f52f2046..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-qmakeConfigurePhase() {
-    runHook preConfigure
-
-    $QMAKE PREFIX=$out $qmakeFlags
-
-    if ! [[ -v enableParallelBuilding ]]; then
-        enableParallelBuilding=1
-        echo "qmake4Hook: enabled parallel building"
-    fi
-
-    if ! [[ -v enableParallelInstalling ]]; then
-        enableParallelInstalling=1
-        echo "qmake: enabled parallel installing"
-    fi
-
-    runHook postConfigure
-}
-
-export QMAKE=@qt4@/bin/qmake
-
-configurePhase=qmakeConfigurePhase
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qsettings-recursive-global-mutex.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qsettings-recursive-global-mutex.patch
deleted file mode 100644
index 229123c54f76..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qsettings-recursive-global-mutex.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Calling qsettings before constructing qapplications causes a dead-lock.
-
-http://sourceforge.net/tracker/?func=detail&aid=3168620&group_id=4932&atid=104932
-http://developer.qt.nokia.com/forums/viewthread/10365
-
-
---- ./src/corelib/io/qsettings.cpp.orig
-+++ ./src/corelib/io/qsettings.cpp
-@@ -122,7 +122,7 @@
- Q_GLOBAL_STATIC(ConfFileCache, unusedCacheFunc)
- Q_GLOBAL_STATIC(PathHash, pathHashFunc)
- Q_GLOBAL_STATIC(CustomFormatVector, customFormatVectorFunc)
--Q_GLOBAL_STATIC(QMutex, globalMutex)
-+Q_GLOBAL_STATIC_WITH_ARGS(QMutex, globalMutex, (QMutex::Recursive))
- static QSettings::Format globalDefaultFormat = QSettings::NativeFormat;
- 
- #ifndef Q_OS_WIN
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-4.8.7-unixmake-darwin.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-4.8.7-unixmake-darwin.patch
deleted file mode 100644
index 99a36a24fe43..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-4.8.7-unixmake-darwin.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/qmake/generators/unix/unixmake.cpp
-+++ b/qmake/generators/unix/unixmake.cpp
-@@ -831,7 +831,7 @@ UnixMakefileGenerator::defaultInstall(const QString &t)
-             else if(project->first("TEMPLATE") == "app" && !project->isEmpty("QMAKE_STRIPFLAGS_APP"))
-                 ret += " " + var("QMAKE_STRIPFLAGS_APP");
-             if(bundle)
--                ret = " \"" + dst_targ + "/Contents/MacOS/$(QMAKE_TARGET)\"";
-+                ret += " \"" + dst_targ + "/Contents/MacOS/$(QMAKE_TARGET)\"";
-             else
-                 ret += " \"" + dst_targ + "\"";
-         }
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl-iconv-no-bom.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl-iconv-no-bom.patch
deleted file mode 100644
index 35380ad6714d..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl-iconv-no-bom.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- qt-everywhere-opensource-src-4.8.5/src/corelib/codecs/qiconvcodec.cpp.orig
-+++ qt-everywhere-opensource-src-4.8.5/src/corelib/codecs/qiconvcodec.cpp
-@@ -62,7 +62,7 @@
- #elif defined(Q_OS_AIX)
- #  define NO_BOM
- #  define UTF16 "UCS-2"
--#elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC)
-+#elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) || (defined(Q_OS_LINUX) && !defined(__GLIBC__))
- #  define NO_BOM
- #  if Q_BYTE_ORDER == Q_BIG_ENDIAN
- #    define UTF16 "UTF-16BE"
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl.patch
deleted file mode 100644
index 90b9ccda08c9..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt-musl.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- qt-everywhere-opensource-src-4.8.5/mkspecs/linux-g++/qplatformdefs.h.orig
-+++ qt-everywhere-opensource-src-4.8.5/mkspecs/linux-g++/qplatformdefs.h
-@@ -86,11 +86,7 @@
- 
- #undef QT_SOCKLEN_T
- 
--#if defined(__GLIBC__) && (__GLIBC__ >= 2)
- #define QT_SOCKLEN_T            socklen_t
--#else
--#define QT_SOCKLEN_T            int
--#endif
- 
- #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
- #define QT_SNPRINTF		::snprintf
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-gcc6.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-gcc6.patch
deleted file mode 100644
index dfd1d8b893b0..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-gcc6.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- qt-everywhere-opensource-src-4.8.7/configure.gcc6	2016-04-15 07:04:19.430268222 -0500
-+++ qt-everywhere-opensource-src-4.8.7/configure	2016-04-15 07:05:22.157568689 -0500
-@@ -7744,7 +7744,7 @@
-     *-g++*)
- 	# Check gcc's version
- 	case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
--	    5*|4*|3.4*)
-+	    9*|8*|7*|6*|5*|4*|3.4*)
- 		;;
-             3.3*)
-                 canBuildWebKit="no"
-@@ -8060,7 +8060,7 @@
-     3.*)
-         COMPILER_VERSION="3.*"
-         ;;
--    5*|4.*)
-+    9*|8*|7*|6*|5*|4.*)
-         COMPILER_VERSION="4"
-         ;;
-     *)
---- qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6	2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h	2016-04-15 07:04:19.431268227 -0500
-@@ -70,8 +70,8 @@
-             ForegroundShift = 10,
-             BackgroundShift = 20,
-             SpecialShift    = 20,
--            ForegroundMask  = ((1 << ForegroundShift) - 1) << ForegroundShift,
--            BackgroundMask  = ((1 << BackgroundShift) - 1) << BackgroundShift
-+            ForegroundMask  = 0x1f << ForegroundShift,
-+            BackgroundMask  = 0x7 << BackgroundShift
-         };
- 
-     public:
diff --git a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-openssl-1.1.patch b/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-openssl-1.1.patch
deleted file mode 100644
index 1931ceb0c749..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-4.x/4.8/qt4-openssl-1.1.patch
+++ /dev/null
@@ -1,398 +0,0 @@
---- a/src/network/ssl/qsslcertificate.cpp
-+++ b/src/network/ssl/qsslcertificate.cpp
-@@ -259,10 +259,10 @@
- QByteArray QSslCertificate::version() const
- {
-     QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
--    if (d->versionString.isEmpty() && d->x509)
-+    if (d->versionString.isEmpty() && d->x509) {
-         d->versionString =
--            QByteArray::number(qlonglong(q_ASN1_INTEGER_get(d->x509->cert_info->version)) + 1);
--
-+	    QByteArray::number(qlonglong(q_X509_get_version(d->x509)) + 1);
-+    }
-     return d->versionString;
- }
- 
-@@ -276,7 +276,7 @@
- {
-     QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
-     if (d->serialNumberString.isEmpty() && d->x509) {
--        ASN1_INTEGER *serialNumber = d->x509->cert_info->serialNumber;
-+        ASN1_INTEGER *serialNumber = q_X509_get_serialNumber(d->x509);
-         // if we cannot convert to a long, just output the hexadecimal number
-         if (serialNumber->length > 4) {
-             QByteArray hexString;
-@@ -489,24 +489,33 @@
-     QSslKey key;
- 
-     key.d->type = QSsl::PublicKey;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-     X509_PUBKEY *xkey = d->x509->cert_info->key;
-+#else
-+    X509_PUBKEY *xkey = q_X509_get_X509_PUBKEY(d->x509);
-+#endif
-     EVP_PKEY *pkey = q_X509_PUBKEY_get(xkey);
-     Q_ASSERT(pkey);
- 
--    if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA) {
-+    int key_id;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+    key_id = q_EVP_PKEY_type(pkey->type);
-+#else
-+    key_id = q_EVP_PKEY_base_id(pkey);
-+#endif
-+    if (key_id == EVP_PKEY_RSA) {
-         key.d->rsa = q_EVP_PKEY_get1_RSA(pkey);
-         key.d->algorithm = QSsl::Rsa;
-         key.d->isNull = false;
--    } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
-+    } else if (key_id == EVP_PKEY_DSA) {
-         key.d->dsa = q_EVP_PKEY_get1_DSA(pkey);
-         key.d->algorithm = QSsl::Dsa;
-         key.d->isNull = false;
--    } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DH) {
-+    } else if (key_id == EVP_PKEY_DH) {
-         // DH unsupported
-     } else {
-         // error?
-     }
--
-     q_EVP_PKEY_free(pkey);
-     return key;
- }
---- a/src/network/ssl/qsslkey.cpp
-+++ b/src/network/ssl/qsslkey.cpp
-@@ -321,8 +321,19 @@
- {
-     if (d->isNull)
-         return -1;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-     return (d->algorithm == QSsl::Rsa)
-            ? q_BN_num_bits(d->rsa->n) : q_BN_num_bits(d->dsa->p);
-+#else
-+    if (d->algorithm == QSsl::Rsa) {
-+        return q_RSA_bits(d->rsa);
-+    }else{
-+        BIGNUM *p = NULL;
-+        q_DSA_get0_pqg(d->dsa, &p, NULL, NULL);
-+	return q_BN_num_bits(p);
-+    }
-+#endif
-+
- }
- 
- /*!
---- a/src/network/ssl/qsslsocket_openssl.cpp
-+++ b/src/network/ssl/qsslsocket_openssl.cpp
-@@ -93,6 +93,7 @@
- bool QSslSocketPrivate::s_loadedCiphersAndCerts = false;
- bool QSslSocketPrivate::s_loadRootCertsOnDemand = false;
- 
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- /* \internal
- 
-     From OpenSSL's thread(3) manual page:
-@@ -174,6 +175,8 @@
- }
- } // extern "C"
- 
-+#endif //OPENSSL_VERSION_NUMBER >= 0x10100000L
-+
- QSslSocketBackendPrivate::QSslSocketBackendPrivate()
-     : ssl(0),
-       ctx(0),
-@@ -222,9 +225,12 @@
-             ciph.d->encryptionMethod = descriptionList.at(4).mid(4);
-         ciph.d->exportable = (descriptionList.size() > 6 && descriptionList.at(6) == QLatin1String("export"));
- 
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-         ciph.d->bits = cipher->strength_bits;
-         ciph.d->supportedBits = cipher->alg_bits;
--
-+#else
-+	ciph.d->bits = q_SSL_CIPHER_get_bits(cipher, &ciph.d->supportedBits);
-+#endif
-     }
-     return ciph;
- }
-@@ -367,7 +373,7 @@
-         //
-         // See also: QSslContext::fromConfiguration()
-         if (caCertificate.expiryDate() >= QDateTime::currentDateTime()) {
--            q_X509_STORE_add_cert(ctx->cert_store, (X509 *)caCertificate.handle());
-+	  q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(ctx), (X509 *)caCertificate.handle());
-         }
-     }
- 
-@@ -504,8 +510,10 @@
- */
- void QSslSocketPrivate::deinitialize()
- {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-     q_CRYPTO_set_id_callback(0);
-     q_CRYPTO_set_locking_callback(0);
-+#endif
- }
- 
- /*!
-@@ -526,13 +534,17 @@
-         return false;
- 
-     // Check if the library itself needs to be initialized.
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-     QMutexLocker locker(openssl_locks()->initLock());
-+#endif
-     if (!s_libraryLoaded) {
-         s_libraryLoaded = true;
- 
-         // Initialize OpenSSL.
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-         q_CRYPTO_set_id_callback(id_function);
-         q_CRYPTO_set_locking_callback(locking_function);
-+#endif
-         if (q_SSL_library_init() != 1)
-             return false;
-         q_SSL_load_error_strings();
-@@ -571,7 +583,9 @@
- 
- void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
- {
--    QMutexLocker locker(openssl_locks()->initLock());
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+  QMutexLocker locker(openssl_locks()->initLock());
-+#endif
-     if (s_loadedCiphersAndCerts)
-         return;
-     s_loadedCiphersAndCerts = true;
-@@ -663,13 +677,18 @@
-     STACK_OF(SSL_CIPHER) *supportedCiphers = q_SSL_get_ciphers(mySsl);
-     for (int i = 0; i < q_sk_SSL_CIPHER_num(supportedCiphers); ++i) {
-         if (SSL_CIPHER *cipher = q_sk_SSL_CIPHER_value(supportedCiphers, i)) {
--            if (cipher->valid) {
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+	  if (cipher->valid) {
-+#endif
-                 QSslCipher ciph = QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(cipher);
-                 if (!ciph.isNull()) {
-                     if (!ciph.name().toLower().startsWith(QLatin1String("adh")))
-                         ciphers << ciph;
-                 }
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-             }
-+#endif
-         }
-     }
- 
---- a/src/network/ssl/qsslsocket_openssl_symbols.cpp
-+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp
-@@ -290,6 +290,22 @@
- DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
- DEFINEFUNC3(int, SSL_CTX_load_verify_locations, SSL_CTX *ctx, ctx, const char *CAfile, CAfile, const char *CApath, CApath, return 0, return)
- DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
-+DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *ctx, ctx, return 0, return)
-+
-+DEFINEFUNC(ASN1_INTEGER *, X509_get_serialNumber, X509 *x, x, return 0, return)
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+DEFINEFUNC(int, EVP_PKEY_id, const EVP_PKEY *pkey, pkey, return 0, return)
-+DEFINEFUNC(int, EVP_PKEY_base_id, const EVP_PKEY *pkey, pkey, return 0, return)
-+DEFINEFUNC2(int, SSL_CIPHER_get_bits, const SSL_CIPHER *cipher, cipher, int *alg_bits, alg_bits, return 0, return)
-+DEFINEFUNC2(long, SSL_CTX_set_options, SSL_CTX *ctx, ctx, long options, options, return 0, return)
-+DEFINEFUNC(long, X509_get_version, X509 *x, x, return 0, return)
-+DEFINEFUNC(X509_PUBKEY *, X509_get_X509_PUBKEY, X509 *x, x, return 0, return)
-+DEFINEFUNC(int, RSA_bits,  const RSA *rsa, rsa, return 0, return)
-+DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
-+DEFINEFUNC(ASN1_TIME *, X509_get_notAfter, X509 *x, x, return 0, return)
-+DEFINEFUNC(ASN1_TIME *, X509_get_notBefore, X509 *x, x, return 0, return)
-+DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, BIGNUM **p, p, BIGNUM **q, q, BIGNUM **g, g, return, return)
-+#endif
- 
- #ifdef Q_OS_SYMBIAN
- #define RESOLVEFUNC(func, ordinal, lib) \
-@@ -801,6 +817,7 @@
-     RESOLVEFUNC(SSL_CTX_use_PrivateKey)
-     RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey)
-     RESOLVEFUNC(SSL_CTX_use_PrivateKey_file)
-+    RESOLVEFUNC(SSL_CTX_get_cert_store)
-     RESOLVEFUNC(SSL_accept)
-     RESOLVEFUNC(SSL_clear)
-     RESOLVEFUNC(SSL_connect)
-@@ -823,6 +840,23 @@
-     RESOLVEFUNC(SSL_set_connect_state)
-     RESOLVEFUNC(SSL_shutdown)
-     RESOLVEFUNC(SSL_write)
-+
-+    RESOLVEFUNC(X509_get_serialNumber)
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+    RESOLVEFUNC(SSL_CTX_ctrl)
-+    RESOLVEFUNC(EVP_PKEY_id)
-+    RESOLVEFUNC(EVP_PKEY_base_id)
-+    RESOLVEFUNC(SSL_CIPHER_get_bits)
-+    RESOLVEFUNC(SSL_CTX_set_options)
-+    RESOLVEFUNC(X509_get_version)
-+    RESOLVEFUNC(X509_get_X509_PUBKEY)
-+    RESOLVEFUNC(RSA_bits)
-+    RESOLVEFUNC(DSA_security_bits)
-+    RESOLVEFUNC(DSA_get0_pqg)
-+    RESOLVEFUNC(X509_get_notAfter)
-+    RESOLVEFUNC(X509_get_notBefore)
-+#endif
-+
- #ifndef OPENSSL_NO_SSL2
-     RESOLVEFUNC(SSLv2_client_method)
- #endif
---- a/src/network/ssl/qsslsocket_openssl_symbols_p.h
-+++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h
-@@ -399,7 +399,25 @@
- 		PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
- 			bp,(char *)x,enc,kstr,klen,cb,u)
- #endif
-+
-+X509_STORE * q_SSL_CTX_get_cert_store(const SSL_CTX *ctx);
-+ASN1_INTEGER * q_X509_get_serialNumber(X509 *x);
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- #define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
-+#define q_X509_get_version(x) X509_get_version(x)
-+#else
-+int q_EVP_PKEY_id(const EVP_PKEY *pkey);
-+int q_EVP_PKEY_base_id(const EVP_PKEY *pkey);
-+int q_SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, int *alg_bits);
-+long q_SSL_CTX_set_options(SSL_CTX *ctx, long options);
-+long q_X509_get_version(X509 *x);
-+X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
-+int q_RSA_bits(const RSA *rsa);
-+int q_DSA_security_bits(const DSA *dsa);
-+void q_DSA_get0_pqg(const DSA *d, BIGNUM **p, BIGNUM **q, BIGNUM **g);
-+#endif
-+
- #define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
- #define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
- #define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
-@@ -410,8 +428,15 @@
- #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
- #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
-         q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- #define q_X509_get_notAfter(x) X509_get_notAfter(x)
- #define q_X509_get_notBefore(x) X509_get_notBefore(x)
-+#else
-+ASN1_TIME *q_X509_get_notAfter(X509 *x);
-+ASN1_TIME *q_X509_get_notBefore(X509 *x);
-+#endif
-+
- #define q_EVP_PKEY_assign_RSA(pkey,rsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
- 					(char *)(rsa))
- #define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp.omv~	2017-03-15 02:27:18.143322736 +0100
-+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp	2017-03-15 02:29:56.215819741 +0100
-@@ -696,7 +696,7 @@
-         unsigned char *data = 0;
-         int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
-         info[QString::fromUtf8(obj)] = QString::fromUtf8((char*)data, size);
--        q_CRYPTO_free(data);
-+        q_OPENSSL_free(data);
-     }
-     return info;
- }
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp.0131~	2017-03-15 02:22:37.053244125 +0100
-+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp	2017-03-15 02:22:37.055244057 +0100
-@@ -328,7 +328,7 @@
-     if (d->algorithm == QSsl::Rsa) {
-         return q_RSA_bits(d->rsa);
-     }else{
--        BIGNUM *p = NULL;
-+        const BIGNUM *p = NULL;
-         q_DSA_get0_pqg(d->dsa, &p, NULL, NULL);
- 	return q_BN_num_bits(p);
-     }
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp.0131~	2017-03-15 02:22:37.054244091 +0100
-+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp	2017-03-15 02:29:41.155236836 +0100
-@@ -111,16 +111,16 @@
- DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return);
- DEFINEFUNC4(long, BIO_ctrl, BIO *a, a, int b, b, long c, c, void *d, d, return -1, return)
- DEFINEFUNC(int, BIO_free, BIO *a, a, return 0, return)
--DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return 0, return)
-+DEFINEFUNC(BIO *, BIO_new, const BIO_METHOD *a, a, return 0, return)
- DEFINEFUNC2(BIO *, BIO_new_mem_buf, void *a, a, int b, b, return 0, return)
- DEFINEFUNC3(int, BIO_read, BIO *a, a, void *b, b, int c, c, return -1, return)
--DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
-+DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
- DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
- DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
- DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
- DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
--DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
-+DEFINEFUNC(void, OPENSSL_free, void *a, a, return, DUMMYARG)
- DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
- #if  OPENSSL_VERSION_NUMBER < 0x00908000L
- DEFINEFUNC3(X509 *, d2i_X509, X509 **a, a, unsigned char **b, b, long c, c, return 0, return)
-@@ -300,7 +300,7 @@
- DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
- DEFINEFUNC(ASN1_TIME *, X509_get_notAfter, X509 *x, x, return 0, return)
- DEFINEFUNC(ASN1_TIME *, X509_get_notBefore, X509 *x, x, return 0, return)
--DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, BIGNUM **p, p, BIGNUM **q, q, BIGNUM **g, g, return, return)
-+DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, const BIGNUM **p, p, const BIGNUM **q, q, const BIGNUM **g, g, return, return)
- #endif
- 
- #ifdef Q_OS_SYMBIAN
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h.0131~	2017-03-15 02:22:37.054244091 +0100
-+++ qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h	2017-03-15 02:29:50.192986268 +0100
-@@ -59,6 +59,9 @@
- QT_BEGIN_NAMESPACE
- 
- #define DUMMYARG
-+#ifndef OPENSSL_NO_SSL2
-+#define OPENSSL_NO_SSL2 1
-+#endif
- 
- #if !defined QT_LINKED_OPENSSL
- // **************** Shared declarations ******************
-@@ -207,16 +210,16 @@
- int q_ASN1_STRING_to_UTF8(unsigned char **a, ASN1_STRING *b);
- long q_BIO_ctrl(BIO *a, int b, long c, void *d);
- int q_BIO_free(BIO *a);
--BIO *q_BIO_new(BIO_METHOD *a);
-+BIO *q_BIO_new(const BIO_METHOD *a);
- BIO *q_BIO_new_mem_buf(void *a, int b);
- int q_BIO_read(BIO *a, void *b, int c);
--BIO_METHOD *q_BIO_s_mem();
-+const BIO_METHOD *q_BIO_s_mem();
- int q_BIO_write(BIO *a, const void *b, int c);
- int q_BN_num_bits(const BIGNUM *a);
- int q_CRYPTO_num_locks();
- void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
- void q_CRYPTO_set_id_callback(unsigned long (*a)());
--void q_CRYPTO_free(void *a);
-+void q_OPENSSL_free(void *a);
- void q_DSA_free(DSA *a);
- #if OPENSSL_VERSION_NUMBER >= 0x00908000L
- // 0.9.8 broke SC and BC by changing this function's signature.
-@@ -326,7 +329,6 @@
- void q_SSL_set_connect_state(SSL *a);
- int q_SSL_shutdown(SSL *a);
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
--const SSL_METHOD *q_SSLv2_client_method();
- const SSL_METHOD *q_SSLv3_client_method();
- const SSL_METHOD *q_SSLv23_client_method();
- const SSL_METHOD *q_TLSv1_client_method();
-@@ -335,7 +337,6 @@
- const SSL_METHOD *q_SSLv23_server_method();
- const SSL_METHOD *q_TLSv1_server_method();
- #else
--SSL_METHOD *q_SSLv2_client_method();
- SSL_METHOD *q_SSLv3_client_method();
- SSL_METHOD *q_SSLv23_client_method();
- SSL_METHOD *q_TLSv1_client_method();
-@@ -415,7 +416,7 @@
- X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
- int q_RSA_bits(const RSA *rsa);
- int q_DSA_security_bits(const DSA *dsa);
--void q_DSA_get0_pqg(const DSA *d, BIGNUM **p, BIGNUM **q, BIGNUM **g);
-+void q_DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
- #endif
- 
- #define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
diff --git a/nixpkgs/pkgs/development/libraries/qt-6/default.nix b/nixpkgs/pkgs/development/libraries/qt-6/default.nix
index 0a4fbe713ec0..d0c298e51926 100644
--- a/nixpkgs/pkgs/development/libraries/qt-6/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-6/default.nix
@@ -9,6 +9,7 @@
 , libglvnd
 , darwin
 , buildPackages
+, python3
 
   # options
 , developerBuild ? false
@@ -24,7 +25,7 @@ let
   addPackages = self: with self;
     let
       callPackage = self.newScope ({
-        inherit qtModule srcs;
+        inherit qtModule srcs python3;
         stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
       });
     in
diff --git a/nixpkgs/pkgs/development/libraries/qt-mobility/default.nix b/nixpkgs/pkgs/development/libraries/qt-mobility/default.nix
deleted file mode 100644
index 7807e41b606e..000000000000
--- a/nixpkgs/pkgs/development/libraries/qt-mobility/default.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, qt4, libX11, coreutils, bluez, perl }:
-# possible additional dependencies: pulseaudio udev networkmanager immerson qmf
-
-stdenv.mkDerivation rec {
-  version = "1.2.0";
-  pname = "qt-mobility";
-  src = fetchFromGitHub {
-    owner = "qtproject";
-    repo = "qt-mobility";
-    rev = "v${version}";
-    sha256 = "14713pbscysd6d0b9rgm7gg145jzwvgdn22778pf2v13qzvfmy1i";
-  };
-
-  env.NIX_CFLAGS_COMPILE = "-fpermissive";
-
-  configurePhase = ''
-    ./configure -prefix $out
-  '';
-
-  # we need to prevent the 'make install' to want to write to ${qt4}!
-  # according to thiago#qt@freenode these are used for the QML engine
-  preBuild = ''
-    for i in connectivity contacts feedback gallery location multimedia organizer publishsubscribe sensors serviceframework systeminfo; do
-      substituteInPlace plugins/declarative/$i/Makefile --replace "${qt4}/lib/qt4/imports/" "$out/lib/qt4/imports/"
-    done
-  '';
-
-  # Features files (*.prf) are not installed on nixos
-  # https://bugreports.qt-project.org/browse/QTMOBILITY-1085
-  #  - features/mobility.prf (/tmp/nix-build-9kh12nhf9cyplfwiws96gz414v6wgl67-qt-mobility-1.2.0.drv-0/qt-mobility-opensource-src-1.2.0)
-
-  patchPhase = ''
-    # required to make the configure script work
-    substituteInPlace configure --replace "/bin/pwd" "${coreutils}/bin/pwd"
-
-    # required to make /include generator work
-    substituteInPlace bin/syncheaders --replace "/usr/bin/perl" "${perl}/bin/perl"
-
-    # required to make the -prefix variable parsing work
-    substituteInPlace bin/pathhelper --replace "/usr/bin/perl" "${perl}/bin/perl"
-  '';
-
-  buildInputs = [ qt4 libX11 bluez perl ];
-
-  meta = with lib; {
-    description = "Qt Mobility";
-    homepage = "http://qt.nokia.com/products/qt-addons/mobility";
-    maintainers = [ maintainers.qknight ];
-    platforms = platforms.linux;
-    license = with licenses; [ bsd3 fdl13Plus gpl3Plus lgpl21Plus ];
-  };
-}
-
-
diff --git a/nixpkgs/pkgs/development/libraries/qtstyleplugin-kvantum-qt4/default.nix b/nixpkgs/pkgs/development/libraries/qtstyleplugin-kvantum-qt4/default.nix
deleted file mode 100644
index b91449542958..000000000000
--- a/nixpkgs/pkgs/development/libraries/qtstyleplugin-kvantum-qt4/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, qmake4Hook , qt4, libX11, libXext }:
-
-stdenv.mkDerivation rec {
-  pname = "qtstyleplugin-kvantum-qt4";
-  version = "1.0.10";
-
-  src = fetchFromGitHub {
-    owner = "tsujan";
-    repo = "Kvantum";
-    rev = "V${version}";
-    hash = "sha256-48Blio8qHLmXSKG0c1tphXSfiwQXs0Xqwxe187nM3Ro=";
-  };
-
-  nativeBuildInputs = [ qmake4Hook ];
-  buildInputs = [ qt4 libX11 libXext ];
-
-  sourceRoot = "${src.name}/Kvantum";
-
-  buildPhase = ''
-    runHook preBuild
-    qmake kvantum.pro
-    make
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-    mkdir $TMP/kvantum
-    make INSTALL_ROOT="$TMP/kvantum" install
-    mv $TMP/kvantum/usr/ $out
-    mv $TMP/kvantum/${qt4}/lib $out
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "SVG-based Qt4 theme engine";
-    homepage = "https://github.com/tsujan/Kvantum";
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.bugworm ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/quarto/default.nix b/nixpkgs/pkgs/development/libraries/quarto/default.nix
index 4d24206b43ee..e87243fe8ef0 100644
--- a/nixpkgs/pkgs/development/libraries/quarto/default.nix
+++ b/nixpkgs/pkgs/development/libraries/quarto/default.nix
@@ -4,21 +4,23 @@
 , esbuild
 , deno
 , fetchurl
-, nodePackages
+, dart-sass
 , rWrapper
 , rPackages
 , extraRPackages ? []
 , makeWrapper
+, runCommand
 , python3
+, quarto
 , extraPythonPackages ? ps: with ps; []
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (final: {
   pname = "quarto";
-  version = "1.2.475";
+  version = "1.3.450";
   src = fetchurl {
-    url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${version}/quarto-${version}-linux-amd64.tar.gz";
-    sha256 = "sha256-oyKjDlTKt2fIzirOqgNRrpuM7buNCG5mmgIztPa28rY=";
+    url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${final.version}/quarto-${final.version}-linux-amd64.tar.gz";
+    sha256 = "sha256-bcj7SzEGfQxsw9P8WkcLrKurPupzwpgIGtxoE3KVwAU=";
   };
 
   nativeBuildInputs = [
@@ -43,7 +45,7 @@ stdenv.mkDerivation rec {
       --prefix PATH : ${lib.makeBinPath [ deno ]} \
       --prefix QUARTO_PANDOC : ${pandoc}/bin/pandoc \
       --prefix QUARTO_ESBUILD : ${esbuild}/bin/esbuild \
-      --prefix QUARTO_DART_SASS : ${nodePackages.sass}/bin/sass \
+      --prefix QUARTO_DART_SASS : ${dart-sass}/bin/dart-sass \
       ${lib.optionalString (rWrapper != null) "--prefix QUARTO_R : ${rWrapper.override { packages = [ rPackages.rmarkdown ] ++ extraRPackages; }}/bin/R"} \
       ${lib.optionalString (python3 != null) "--prefix QUARTO_PYTHON : ${python3.withPackages (ps: with ps; [ jupyter ipython ] ++ (extraPythonPackages ps))}/bin/python3"}
   '';
@@ -61,6 +63,14 @@ stdenv.mkDerivation rec {
       runHook preInstall
   '';
 
+  passthru.tests = {
+    quarto-check = runCommand "quarto-check" {} ''
+      export HOME="$(mktemp -d)"
+      ${quarto}/bin/quarto check
+      touch $out
+    '';
+  };
+
   meta = with lib; {
     description = "Open-source scientific and technical publishing system built on Pandoc";
     longDescription = ''
@@ -74,4 +84,4 @@ stdenv.mkDerivation rec {
     platforms = [ "x86_64-linux" ];
     sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ];
   };
-}
+})
diff --git a/nixpkgs/pkgs/development/libraries/qwt/6_qt4.nix b/nixpkgs/pkgs/development/libraries/qwt/6_qt4.nix
deleted file mode 100644
index 021fa0ba57d4..000000000000
--- a/nixpkgs/pkgs/development/libraries/qwt/6_qt4.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv, fetchurl, qt4, qmake4Hook, AGL }:
-
-stdenv.mkDerivation rec {
-  pname = "qwt";
-  version = "6.1.5";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/qwt/qwt-${version}.tar.bz2";
-    sha256 = "0hf0mpca248xlqn7xnzkfj8drf19gdyg5syzklvq8pibxiixwxj0";
-  };
-
-  buildInputs = [
-    qt4
-  ] ++ lib.optionals stdenv.isDarwin [ AGL ];
-
-  nativeBuildInputs = [ qmake4Hook ];
-
-  enableParallelBuilding = true;
-
-  postPatch = ''
-    sed -e "s|QWT_INSTALL_PREFIX.*=.*|QWT_INSTALL_PREFIX = $out|g" -i qwtconfig.pri
-  '';
-
-  # qwt.framework output includes a relative reference to itself, which breaks dependents
-  preFixup =
-    lib.optionalString stdenv.isDarwin ''
-      echo "Attempting to repair qwt"
-      install_name_tool -id "$out/lib/qwt.framework/Versions/6/qwt" "$out/lib/qwt.framework/Versions/6/qwt"
-    '';
-
-  qmakeFlags = [ "-after doc.path=$out/share/doc/qwt-${version}" ];
-
-  meta = with lib; {
-    description = "Qt widgets for technical applications";
-    homepage = "http://qwt.sourceforge.net/";
-    # LGPL 2.1 plus a few exceptions (more liberal)
-    license = lib.licenses.qwt;
-    platforms = platforms.linux ++ platforms.darwin;
-    maintainers = [ maintainers.bjornfor ];
-    branch = "6";
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/restinio/default.nix b/nixpkgs/pkgs/development/libraries/restinio/default.nix
index 01a0ce26b6cd..9472bd0a554e 100644
--- a/nixpkgs/pkgs/development/libraries/restinio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/restinio/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "restinio";
-  version = "0.6.18";
+  version = "0.6.19";
 
   src = fetchurl {
     url = "https://github.com/Stiffstream/restinio/releases/download/v.${version}/${pname}-${version}.tar.bz2";
-    hash = "sha256-4OksmaW6NBpZ8npqLiZGn6zmCB7KxXlU5NKfKmA7Zr8=";
+    hash = "sha256-fyHuvrlm4XDWq1TpsZiskn1DkJASFzngN8D6O7NnskA=";
   };
 
   sourceRoot = ".";
diff --git a/nixpkgs/pkgs/development/libraries/science/math/rubiks/default.nix b/nixpkgs/pkgs/development/libraries/science/math/rubiks/default.nix
index b4b670884989..505457edd64f 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/rubiks/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/rubiks/default.nix
@@ -28,19 +28,19 @@ stdenv.mkDerivation rec {
     # Fix makefiles which use all the variables in all the wrong ways and
     # hardcode values for some variables.
     (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/rubiks/patches/dietz-cu2-Makefile.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
+      url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-cu2-Makefile.patch";
       sha256 = "1ry3w1mk9q4jqd91zlaa1bdiiplld4hpfjaldbhlmzlgrrc99qmq";
     })
     (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/rubiks/patches/dietz-mcube-Makefile.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
+      url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-mcube-Makefile.patch";
       sha256 = "0zsbh6k3kqdg82fv0kzghr1x7pafisv943gmssqscp107bhg77bz";
     })
     (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/rubiks/patches/dietz-solver-Makefile.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
+      url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/dietz-solver-Makefile.patch";
       sha256 = "0vhw70ylnmydgjhwx8jjlb2slccj4pfqn6vzirkyz1wp8apsmfhp";
     })
     (fetchpatch {
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/rubiks/patches/reid-Makefile.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
+      url = "https://raw.githubusercontent.com/sagemath/sage/07d6c37d18811e2b377a9689790a7c5e24da16ba/build/pkgs/rubiks/patches/reid-Makefile.patch";
       sha256 = "1r311sn012xs135s0d21qwsig2kld7rdcq19nm0zbnklviid57df";
     })
   ];
diff --git a/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix b/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix
index 06650fce00ad..40c00dfea88f 100644
--- a/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sdbus-cpp";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "kistler-group";
     repo = "sdbus-cpp";
     rev = "v${version}";
-    hash = "sha256-EX/XLgqUwIRosLu3Jgtpp42Yt6Tf22Htj9JULoUL7ao=";
+    hash = "sha256-S/8/I2wmWukpP+RGPxKbuO44wIExzeYZL49IO+KOqg4=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/smokegen/default.nix b/nixpkgs/pkgs/development/libraries/smokegen/default.nix
deleted file mode 100644
index 2a93965aeb39..000000000000
--- a/nixpkgs/pkgs/development/libraries/smokegen/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ stdenv, lib, cmake, qt4, fetchzip }:
-
-stdenv.mkDerivation rec {
-  pname = "smokegen";
-  version = "4.14.3";
-
-  src = fetchzip {
-    url = "https://invent.kde.org/unmaintained/${pname}/-/archive/v${version}/${pname}-v${version}.tar.gz";
-    hash = "sha256-finsoruPeJZLawIjNUJ25Pq54eaCByfALVraNQJPk7c=";
-  };
-
-  strictDeps = true;
-  nativeBuildInputs = [ cmake qt4 ];
-  buildInputs = [ qt4 ];
-
-  meta = with lib; {
-    description = "A general purpose C++ parser with a plugin infrastructure";
-    homepage = "https://invent.kde.org/unmaintained/smokegen";
-    license = licenses.gpl2Only;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ uthar ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/smokeqt/default.nix b/nixpkgs/pkgs/development/libraries/smokeqt/default.nix
deleted file mode 100644
index 1c427b8abb70..000000000000
--- a/nixpkgs/pkgs/development/libraries/smokeqt/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, cmake, qt4, smokegen, fetchzip }:
-
-stdenv.mkDerivation rec {
-  pname = "smokeqt";
-  version = "4.14.3";
-
-  src = fetchzip {
-    url = "https://invent.kde.org/unmaintained/${pname}/-/archive/v${version}/${pname}-v${version}.tar.gz";
-    hash = "sha256-8FiEGF8gduVw5I/bi2wExGUWmjIjYEhWpjpXKJGBNMg=";
-  };
-
-  strictDeps = true;
-  nativeBuildInputs = [ cmake smokegen ];
-  buildInputs = [ qt4 ];
-
-  cmakeFlags = [
-    "-DCMAKE_CXX_STANDARD=98"
-  ];
-
-  meta = with lib; {
-    description = "Bindings for the Qt libraries";
-    homepage = "https://invent.kde.org/unmaintained/smokeqt";
-    license = licenses.gpl2Only;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ uthar ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/tagparser/default.nix b/nixpkgs/pkgs/development/libraries/tagparser/default.nix
index 7f534979c978..c0f6f3fd42b4 100644
--- a/nixpkgs/pkgs/development/libraries/tagparser/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tagparser/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tagparser";
-  version = "12.0.0";
+  version = "12.1.0";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "tagparser";
     rev = "v${version}";
-    hash = "sha256-b6nAVhakQA8oKHP48+1S+4SX6EcI0kxK8uXTZ05cLnQ=";
+    hash = "sha256-83Xxj1CQsghbAsQ/3GKIYCz9lBNEBvLlx1iOKbszn8A=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/talloc/default.nix b/nixpkgs/pkgs/development/libraries/talloc/default.nix
index bfe38fd4719a..5fad3c1c5121 100644
--- a/nixpkgs/pkgs/development/libraries/talloc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/talloc/default.nix
@@ -8,7 +8,7 @@
 , docbook-xsl-nons
 , docbook_xml_dtd_42
 , fixDarwinDylibNames
-, wafHook
+, waf
 }:
 
 stdenv.mkDerivation rec {
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     python3
-    wafHook
+    waf.hook
     docbook-xsl-nons
     docbook_xml_dtd_42
   ] ++ lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/libraries/tdb/default.nix b/nixpkgs/pkgs/development/libraries/tdb/default.nix
index 13f55a2dc52b..562a422f91d6 100644
--- a/nixpkgs/pkgs/development/libraries/tdb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tdb/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv
 , fetchurl
 , pkg-config
-, wafHook
+, waf
 , python3
 , readline
 , libxslt
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     python3
     pkg-config
-    wafHook
+    waf.hook
     libxslt
     docbook-xsl-nons
     docbook_xml_dtd_45
diff --git a/nixpkgs/pkgs/development/libraries/tevent/default.nix b/nixpkgs/pkgs/development/libraries/tevent/default.nix
index bdb6eb21ed42..7d0d40439e4a 100644
--- a/nixpkgs/pkgs/development/libraries/tevent/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tevent/default.nix
@@ -9,17 +9,17 @@
 , docbook-xsl-nons
 , docbook_xml_dtd_42
 , which
-, wafHook
+, waf
 , libxcrypt
 }:
 
 stdenv.mkDerivation rec {
   pname = "tevent";
-  version = "0.14.1";
+  version = "0.15.0";
 
   src = fetchurl {
     url = "mirror://samba/tevent/${pname}-${version}.tar.gz";
-    sha256 = "sha256-74X8qoD/0jUQNrpLNHYw/vKhrD2pZKfxggRmutA80A0=";
+    sha256 = "sha256-ZiqfJ3KBvPUGtrwKC6oD5EpiIpUW7jS8xwOguCqkaQU=";
   };
 
   nativeBuildInputs = [
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     libxslt
     docbook-xsl-nons
     docbook_xml_dtd_42
-    wafHook
+    waf.hook
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/tpm2-tss/default.nix b/nixpkgs/pkgs/development/libraries/tpm2-tss/default.nix
index f637df891354..628f32a91c69 100644
--- a/nixpkgs/pkgs/development/libraries/tpm2-tss/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tpm2-tss/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     # TCTI loader relies on dlopen(), this patch prefixes all calls with the output directory
     ./no-dynamic-loader-path.patch
     (fetchurl {
-      name = "skip-test-fapi-fix-provisioning-with template-if-no-certificate-available.patch";
+      name = "skip-test-fapi-fix-provisioning-with-template-if-no-certificate-available.patch";
       url = "https://github.com/tpm2-software/tpm2-tss/commit/218c0da8d9f675766b1de502a52e23a3aa52648e.patch";
       sha256 = "sha256-dnl9ZAknCdmvix2TdQvF0fHoYeWp+jfCTg8Uc7h0voA=";
     })
diff --git a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
index b32df6b026a2..dc849677a584 100644
--- a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchurl
+, fetchpatch
 , asciidoc
 , docbook-xsl-nons
 , docbook_xml_dtd_45
@@ -46,13 +47,22 @@
 
 stdenv.mkDerivation rec {
   pname = "tracker-miners";
-  version = "3.5.0";
+  version = "3.5.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "F5ZmA9xDKphSa0kFhqSKzX+fWZNfeJXfxRcppGppAaM=";
+    sha256 = "QPuR+svZRo4m6+zHEdg2Mc2K6TkcYV1o27A8vKsbbGk=";
   };
 
+  patches = [
+    # Use cc.has_header_symbol to check for BTRFS_IOC_INO_LOOKUP
+    # https://github.com/NixOS/nixpkgs/issues/228639
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/tracker-miners/-/commit/c08fbe0650d4a2ae915a21764f54c02eda9406d5.patch";
+      sha256 = "U81+yfg2sUkKl4tKMeB7pXJRNSeIE+2loT3/bvnhoKM=";
+    })
+  ];
+
   nativeBuildInputs = [
     asciidoc
     docbook-xsl-nons
diff --git a/nixpkgs/pkgs/development/libraries/valhalla/default.nix b/nixpkgs/pkgs/development/libraries/valhalla/default.nix
index 2d400d73f401..bfd23747db0a 100644
--- a/nixpkgs/pkgs/development/libraries/valhalla/default.nix
+++ b/nixpkgs/pkgs/development/libraries/valhalla/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , pkg-config
 , boost
@@ -29,6 +30,14 @@ stdenv.mkDerivation (finalAttrs: {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # Fix build
+    (fetchpatch {
+      url = "https://github.com/valhalla/valhalla/commit/e4845b68e8ef8de9eabb359b23bf34c879e21f2b.patch";
+      hash = "sha256-xCufmXHGj1JxaMwm64JT9FPY+o0+x4glfJSYLdvHI8U=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace src/bindings/python/CMakeLists.txt \
       --replace "\''${Python_SITEARCH}" "${placeholder "out"}/${python3.sitePackages}"
@@ -44,6 +53,11 @@ stdenv.mkDerivation (finalAttrs: {
     "-DENABLE_BENCHMARKS=OFF"
   ];
 
+  env.NIX_CFLAGS_COMPILE = toString [
+    # Needed for date submodule with GCC 12 https://github.com/HowardHinnant/date/issues/750
+    "-Wno-error=stringop-overflow"
+  ];
+
   buildInputs = [
     boost
     curl