about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/ensemble-chorus/default.nix5
-rw-r--r--pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff55
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/pyradio/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix6
-rw-r--r--pkgs/applications/graphics/snapshot/default.nix4
-rw-r--r--pkgs/applications/misc/hmm/default.nix5
-rw-r--r--pkgs/applications/misc/hmm/rustc-serialize-fix.patch16
-rw-r--r--pkgs/applications/version-management/tig/default.nix4
-rw-r--r--pkgs/applications/video/vdr/softhddevice/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix2
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix19
-rw-r--r--pkgs/by-name/ar/arduino-ide/package.nix1
-rw-r--r--pkgs/by-name/ca/cargo-geiger/allow-warnings.patch12
-rw-r--r--pkgs/by-name/ca/cargo-geiger/package.nix (renamed from pkgs/development/tools/rust/cargo-geiger/default.nix)22
-rw-r--r--pkgs/by-name/fo/fontfor/package.nix (renamed from pkgs/tools/misc/fontfor/default.nix)26
-rw-r--r--pkgs/by-name/gr/greenmask/package.nix4
-rw-r--r--pkgs/by-name/ha/halloy/Cargo.lock75
-rw-r--r--pkgs/by-name/ha/halloy/package.nix98
-rw-r--r--pkgs/by-name/la/labwc/package.nix4
-rw-r--r--pkgs/by-name/nh/nh/package.nix6
-rw-r--r--pkgs/desktops/gnome/apps/file-roller/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-text-editor/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-calculator/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/default.nix7
-rw-r--r--pkgs/desktops/gnome/games/aisleriot/default.nix6
-rw-r--r--pkgs/desktops/gnome/games/gnome-sudoku/default.nix4
-rw-r--r--pkgs/development/compilers/ecl/default.nix4
-rw-r--r--pkgs/development/libraries/gtksourceview/5.x.nix2
-rw-r--r--pkgs/development/libraries/libxcrypt/default.nix14
-rw-r--r--pkgs/development/python-modules/app-model/default.nix41
-rw-r--r--pkgs/development/python-modules/chromadb/default.nix1
-rw-r--r--pkgs/development/python-modules/dissect-executable/default.nix4
-rw-r--r--pkgs/development/python-modules/duckduckgo-search/default.nix96
-rw-r--r--pkgs/development/python-modules/napari-console/default.nix43
-rw-r--r--pkgs/development/python-modules/napari/default.nix94
-rw-r--r--pkgs/development/python-modules/pubnub/default.nix4
-rw-r--r--pkgs/development/python-modules/pyslurm/default.nix17
-rw-r--r--pkgs/development/python-modules/python3-gnutls/default.nix12
-rw-r--r--pkgs/development/python-modules/scikit-posthocs/default.nix9
-rw-r--r--pkgs/development/python-modules/setuptools-gettext/default.nix39
-rw-r--r--pkgs/development/python-modules/stim/default.nix2
-rw-r--r--pkgs/development/python-modules/succulent/default.nix9
-rw-r--r--pkgs/development/python-modules/superqt/default.nix58
-rw-r--r--pkgs/development/python-modules/types-beautifulsoup4/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy/default.nix3
-rw-r--r--pkgs/development/tools/devpi-client/default.nix73
-rw-r--r--pkgs/kde/frameworks/kfilemetadata/default.nix3
-rw-r--r--pkgs/kde/frameworks/kguiaddons/default.nix3
-rw-r--r--pkgs/kde/frameworks/kidletime/default.nix3
-rw-r--r--pkgs/kde/frameworks/kwindowsystem/default.nix3
-rw-r--r--pkgs/kde/frameworks/qqc2-desktop-style/default.nix2
-rw-r--r--pkgs/kde/frameworks/solid/default.nix8
-rw-r--r--pkgs/kde/gear/akonadi-search/default.nix3
-rw-r--r--pkgs/kde/gear/angelfish/default.nix3
-rw-r--r--pkgs/kde/gear/arianna/default.nix2
-rw-r--r--pkgs/kde/gear/ghostwriter/default.nix4
-rw-r--r--pkgs/kde/gear/gwenview/default.nix4
-rw-r--r--pkgs/kde/gear/kasts/default.nix2
-rw-r--r--pkgs/kde/gear/kcalc/default.nix3
-rw-r--r--pkgs/kde/gear/kdepim-addons/default.nix5
-rw-r--r--pkgs/kde/gear/kio-extras/default.nix2
-rw-r--r--pkgs/kde/gear/koko/default.nix2
-rw-r--r--pkgs/kde/gear/kopeninghours/default.nix1
-rw-r--r--pkgs/kde/gear/plasmatube/default.nix7
-rw-r--r--pkgs/kde/gear/sweeper/default.nix6
-rw-r--r--pkgs/kde/gear/tokodon/default.nix5
-rw-r--r--pkgs/kde/generated/dependencies.json180
-rw-r--r--pkgs/kde/generated/projects.json24
-rw-r--r--pkgs/kde/generated/sources/frameworks.json432
-rw-r--r--pkgs/kde/lib/mk-kde-derivation.nix16
-rw-r--r--pkgs/kde/misc/kirigami-addons/default.nix4
-rw-r--r--pkgs/kde/misc/mpvqt/default.nix4
-rw-r--r--pkgs/kde/plasma/kwayland/default.nix3
-rw-r--r--pkgs/kde/plasma/layer-shell-qt/default.nix4
-rw-r--r--pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix4
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix6
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/plugins.json38
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json1
-rw-r--r--pkgs/tools/misc/uucp/default.nix27
-rw-r--r--pkgs/tools/networking/linkchecker/default.nix32
-rw-r--r--pkgs/tools/package-management/nix-eval-jobs/2.19.nix47
-rw-r--r--pkgs/tools/package-management/nix-eval-jobs/default.nix4
-rw-r--r--pkgs/tools/security/nuclei/default.nix6
-rw-r--r--pkgs/top-level/all-packages.nix16
85 files changed, 1102 insertions, 751 deletions
diff --git a/pkgs/applications/audio/ensemble-chorus/default.nix b/pkgs/applications/audio/ensemble-chorus/default.nix
index 7fcf412dd593f..a83719a5e4161 100644
--- a/pkgs/applications/audio/ensemble-chorus/default.nix
+++ b/pkgs/applications/audio/ensemble-chorus/default.nix
@@ -12,6 +12,11 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # fix compile error regarding packed attribute in 3rd party juice library
+    ./juice-cxx-packing-fix.diff
+  ];
+
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff b/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff
new file mode 100644
index 0000000000000..041f252a81e02
--- /dev/null
+++ b/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff
@@ -0,0 +1,55 @@
+diff --git a/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h b/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
+index 69a66e4..3e50635 100644
+--- a/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
++++ b/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
+@@ -111,18 +111,10 @@ public:
+     forcedinline uint8 getGreen() const noexcept      { return components.g; }

+     forcedinline uint8 getBlue() const noexcept       { return components.b; }

+ 

+-   #if JUCE_GCC

+-    // NB these are here as a workaround because GCC refuses to bind to packed values.

+-    forcedinline uint8& getAlpha() noexcept           { return comps [indexA]; }

+-    forcedinline uint8& getRed() noexcept             { return comps [indexR]; }

+-    forcedinline uint8& getGreen() noexcept           { return comps [indexG]; }

+-    forcedinline uint8& getBlue() noexcept            { return comps [indexB]; }

+-   #else

+     forcedinline uint8& getAlpha() noexcept           { return components.a; }

+     forcedinline uint8& getRed() noexcept             { return components.r; }

+     forcedinline uint8& getGreen() noexcept           { return components.g; }

+     forcedinline uint8& getBlue() noexcept            { return components.b; }

+-   #endif

+ 

+     //==============================================================================

+     /** Copies another pixel colour over this one.

+@@ -336,21 +328,22 @@ private:
+         uint8 b, g, r, a;

+        #endif

+       #endif

+-    } JUCE_PACKED;

++    };

++

++    // structure must be packed but using the packed attribute causes compile

++    // failures with newer c++ compilers. Verify default packing produces same layout

++    static_assert(sizeof(Components) == 4, "Components struct is not packed");

+ 

+     union

+     {

+         uint32 internal;

+         Components components;

+-       #if JUCE_GCC

+-        uint8 comps[4];  // helper struct needed because gcc does not allow references to packed union members

+-       #endif

+     };

+-}

+-#ifndef DOXYGEN

+- JUCE_PACKED

+-#endif

+-;

++};

++

++// class must be packed but using the packed attribute causes compile

++// failures with newer c++ compilers. Verify default packing produces same layout

++static_assert(sizeof(PixelARGB) == 4, "PixelARGB class is not packed");

+ 

+ 

+ //==============================================================================

diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 1f05808536e18..1af7a8a00d3d6 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ft2-clone";
-  version = "1.82";
+  version = "1.83";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    hash = "sha256-qEwPKrgmWYMIwIdgKozG9kghCYp4aoYTX28GqKbuDu4=";
+    hash = "sha256-JMHLB/a86rfxTxl3GXU+lhYtliR8WOAzWilbWei0K2A=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/pyradio/default.nix b/pkgs/applications/audio/pyradio/default.nix
index d6d5a6d78a6c5..45cec01bd6985 100644
--- a/pkgs/applications/audio/pyradio/default.nix
+++ b/pkgs/applications/audio/pyradio/default.nix
@@ -6,13 +6,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pyradio";
-  version = "0.9.3.4";
+  version = "0.9.3.6";
 
   src = fetchFromGitHub {
     owner = "coderholic";
     repo = "pyradio";
     rev = "refs/tags/${version}";
-    hash = "sha256-QifBzQsvYU5kP5mnidOgWGBh3h2MvJm8Wo0i1v6j/cU=";
+    hash = "sha256-As4xjwJtEKlnFuBigC7nN0kAPe0+99rE9KZ0F6i7qIQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
index 30d0d83f97327..cca22bda6740d 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
@@ -16,7 +16,7 @@
 }:
 
 let
-  rev = "75b1431c1e0f6c221dbfdb0ecd0f62f183b02254";
+  rev = "b8768c4a76525d82360d124c829774acd26634c3";
   python = python3.withPackages (ps: with ps; [
     epc
     orjson
@@ -28,13 +28,13 @@ let
 in
 melpaBuild {
   pname = "lsp-bridge";
-  version = "20240502.2306";
+  version = "20240510.1618";
 
   src = fetchFromGitHub {
     owner = "manateelazycat";
     repo = "lsp-bridge";
     inherit rev;
-    hash = "sha256-8MqGwHVBE+87IQfsUA6b3ffrVWjypiH3shwELBCUBDQ=";
+    hash = "sha256-f+JnzW4XrDC3QP9iuhKAmy+T2adoFx+0q03GI7VO0/s=";
   };
 
   commit = rev;
diff --git a/pkgs/applications/graphics/snapshot/default.nix b/pkgs/applications/graphics/snapshot/default.nix
index e449daac6dcc8..d05bfe3e349be 100644
--- a/pkgs/applications/graphics/snapshot/default.nix
+++ b/pkgs/applications/graphics/snapshot/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "snapshot";
-  version = "46.2";
+  version = "46.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/snapshot/${lib.versions.major finalAttrs.version}/snapshot-${finalAttrs.version}.tar.xz";
-    hash = "sha256-Ef55oSuzQFHionnajB9FRYfQEaFPwkI35FTGT0S6z00=";
+    hash = "sha256-RZV6BBX0VNY1MUkaoEeVzuDO1O3d1dj6DQAPXvBzW2c=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/hmm/default.nix b/pkgs/applications/misc/hmm/default.nix
index a78b953875c20..4f45c09ef63b1 100644
--- a/pkgs/applications/misc/hmm/default.nix
+++ b/pkgs/applications/misc/hmm/default.nix
@@ -14,11 +14,14 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-WPePzqZ2iGeJ7kzTj8eg7q1JEjw91WY7gViJJ46SLRY=";
   };
 
-  cargoHash = "sha256-9Z49aPfcIdMfYCFAXsxFxcfhaLjtPod+nMFHDmvgDY0=";
+  cargoHash = "sha256-CQnM7pFnk4LcstKllhbeohbrggKV6MBQy03oq7DEkP4=";
 
   nativeCheckInputs = [
     perl
   ];
+  # FIXME: remove patch when upstream version of rustc-serialize is updated
+  # https://github.com/NixOS/nixpkgs/pull/310673
+  cargoPatches = [ ./rustc-serialize-fix.patch ];
 
   preCheck = ''
     export HOME=$(mktemp -d)
diff --git a/pkgs/applications/misc/hmm/rustc-serialize-fix.patch b/pkgs/applications/misc/hmm/rustc-serialize-fix.patch
new file mode 100644
index 0000000000000..8d0327e8a4578
--- /dev/null
+++ b/pkgs/applications/misc/hmm/rustc-serialize-fix.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b1cc23695b30..ffdeb1c90618 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -996,9 +996,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "rustix"
diff --git a/pkgs/applications/version-management/tig/default.nix b/pkgs/applications/version-management/tig/default.nix
index d7bd912b44d5a..b4a8533d468ee 100644
--- a/pkgs/applications/version-management/tig/default.nix
+++ b/pkgs/applications/version-management/tig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tig";
-  version = "2.5.9";
+  version = "2.5.10";
 
   src = fetchFromGitHub {
     owner = "jonas";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-RASZgQUlt/5ivImowM+sNw8Oe8aVkuUNErfgddmFjic=";
+    sha256 = "sha256-WTrw7WaSqC2fp76fPvfogWTibev0Hg0LW2x4umc3+1Q=";
   };
 
   nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkg-config ];
diff --git a/pkgs/applications/video/vdr/softhddevice/default.nix b/pkgs/applications/video/vdr/softhddevice/default.nix
index caccdc6ed39a8..9271a9bf70640 100644
--- a/pkgs/applications/video/vdr/softhddevice/default.nix
+++ b/pkgs/applications/video/vdr/softhddevice/default.nix
@@ -14,12 +14,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "vdr-softhddevice";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "ua0lnj";
     repo = "vdr-plugin-softhddevice";
-    sha256 = "sha256-1yCDNfUdQLgJ0WWyx0q3Hi0yxb6zxaK7wMzLD9jXweI=";
+    sha256 = "sha256-qyl4XDLJ99QXQY0XXYMteja0oWZ+vkFa4RwEo1Hv3bo=";
     rev = "v${version}";
   };
 
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 3b0783a1509b5..b09736d3138c6 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -251,7 +251,7 @@ in stdenv.mkDerivation {
 
     mkdir -p "$out/share/virtualbox"
     cp -rv src/VBox/Main/UnattendedTemplates "$out/share/virtualbox"
-    ln -s "${virtualboxGuestAdditionsIso}/VBoxGuestAdditions_${version}.iso" "$out/share/virtualbox/VBoxGuestAdditions.iso"
+    ln -s "${virtualboxGuestAdditionsIso}" "$out/share/virtualbox/VBoxGuestAdditions.iso"
   '';
 
   preFixup = optionalString (!headless) ''
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
index d2f9bc62ba18b..cd2f58afc92a6 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
@@ -1,22 +1,11 @@
-{ stdenv, fetchurl, lib, virtualbox}:
+{ fetchurl, lib, virtualbox}:
 
 let
   inherit (virtualbox) version;
 in
-stdenv.mkDerivation rec {
-  pname = "VirtualBox-GuestAdditions-iso";
-  inherit version;
-
-  src = fetchurl {
-    url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "0efbcb9bf4722cb19292ae00eba29587432e918d3b1f70905deb70f7cf78e8ce";
-  };
-
-  buildCommand = ''
-    mkdir -p $out
-    cp $src $out/
-  '';
-
+fetchurl {
+  url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
+  sha256 = "0efbcb9bf4722cb19292ae00eba29587432e918d3b1f70905deb70f7cf78e8ce";
   meta = {
     description = "Guest additions ISO for VirtualBox";
     longDescription = ''
diff --git a/pkgs/by-name/ar/arduino-ide/package.nix b/pkgs/by-name/ar/arduino-ide/package.nix
index 68e873fc28652..7184705a178a8 100644
--- a/pkgs/by-name/ar/arduino-ide/package.nix
+++ b/pkgs/by-name/ar/arduino-ide/package.nix
@@ -20,6 +20,7 @@ appimageTools.wrapType2 {
   extraInstallCommands = ''
     install -Dm444 ${appimageContents}/${pname}.desktop -t $out/share/applications/
     install -Dm444 ${appimageContents}/${pname}.png -t $out/share/pixmaps/
+    substituteInPlace $out/share/applications/${pname}.desktop --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=${pname} %U'
   '';
 
   extraPkgs = pkgs: with pkgs; [ libsecret ];
diff --git a/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch b/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch
new file mode 100644
index 0000000000000..97a9090e904d0
--- /dev/null
+++ b/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch
@@ -0,0 +1,12 @@
+diff --git a/cargo-geiger/src/lib.rs b/cargo-geiger/src/lib.rs
+index cc08146..d220ad9 100644
+--- a/cargo-geiger/src/lib.rs
++++ b/cargo-geiger/src/lib.rs
+@@ -5,7 +5,6 @@
+ #![deny(clippy::cargo)]
+ #![deny(clippy::doc_markdown)]
+ #![forbid(unsafe_code)]
+-#![deny(warnings)]
+ 
+ /// Argument parsing
+ pub mod args;
diff --git a/pkgs/development/tools/rust/cargo-geiger/default.nix b/pkgs/by-name/ca/cargo-geiger/package.nix
index 3fbf1af9ad46d..ac3338a68a4bb 100644
--- a/pkgs/development/tools/rust/cargo-geiger/default.nix
+++ b/pkgs/by-name/ca/cargo-geiger/package.nix
@@ -12,15 +12,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-geiger";
-  version = "0.11.6";
+  version = "0.11.7";
 
   src = fetchFromGitHub {
     owner = "rust-secure-code";
     repo = pname;
-    rev = "${pname}-${version}";
-    sha256 = "sha256-rGZJyCWGk2RUr52ICp4dVER3JMBrnLdOMusRm/GG2PE=";
+    rev = "cargo-geiger@v${version}";
+    hash = "sha256-/5yuayqneZV6aVQ6YFgqNS2XY3W6yETRQ0kE5ovc7p8=";
   };
-  cargoHash = "sha256-B6Ka35y2fJEDVd891P60TNppr5HGFnzVjLhhfoFCYUA=";
+  cargoHash = "sha256-lhojo3dhsM9y1SxpVMH93yv+JeNfTL7VLsbTp9ErgIQ=";
+
+  patches = [
+    ./allow-warnings.patch
+  ];
 
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation Security libiconv curl ]);
@@ -30,12 +34,18 @@ rustPlatform.buildRustPackage rec {
 
   # skip tests with networking or other failures
   checkFlags = [
+    "--skip serialize_test1_quick_report"
     "--skip serialize_test2_quick_report"
     "--skip serialize_test3_quick_report"
+    "--skip serialize_test4_quick_report"
     "--skip serialize_test6_quick_report"
+    "--skip serialize_test7_quick_report"
+    "--skip serialize_test1_report"
     "--skip serialize_test2_report"
     "--skip serialize_test3_report"
+    "--skip serialize_test4_report"
     "--skip serialize_test6_report"
+    "--skip serialize_test7_report"
     # multiple test cases that time-out or cause memory leaks
     "--skip test_package"
     "--skip test_package_update_readme::case_2"
@@ -45,7 +55,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/rust-secure-code/cargo-geiger";
-    changelog = "https://github.com/rust-secure-code/cargo-geiger/blob/${pname}-${version}/CHANGELOG.md";
+    changelog = "https://github.com/rust-secure-code/cargo-geiger/blob/cargo-geiger-${version}/CHANGELOG.md";
     description = "Detects usage of unsafe Rust in a Rust crate and its dependencies";
     mainProgram = "cargo-geiger";
     longDescription = ''
@@ -55,6 +65,6 @@ rustPlatform.buildRustPackage rec {
       code is appropriate.
     '';
     license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ evanjs jk matthiasbeyer ];
+    maintainers = with maintainers; [ evanjs gepbird jk matthiasbeyer ];
   };
 }
diff --git a/pkgs/tools/misc/fontfor/default.nix b/pkgs/by-name/fo/fontfor/package.nix
index b973317b722e3..d2a5747809372 100644
--- a/pkgs/tools/misc/fontfor/default.nix
+++ b/pkgs/by-name/fo/fontfor/package.nix
@@ -1,22 +1,24 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, cmake
-, pkg-config
-, expat
-, fontconfig
-, freetype
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+  cmake,
+  pkg-config,
+  expat,
+  fontconfig,
+  freetype,
+  nix-update-script,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "fontfor";
-  version = "0.4.1";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "7sDream";
     repo = "fontfor";
     rev = "v${version}";
-    sha256 = "sha256-/UoZ+5X6Csoyqc+RSP0Hree7NtCDs7BjsqcpALxAazc=";
+    hash = "sha256-gJl9SPL/KeYFzKIjwWPVR1iVy6h/W7OP7xE7krhYaY8=";
   };
 
   nativeBuildInputs = [
@@ -29,7 +31,9 @@ rustPlatform.buildRustPackage rec {
     freetype
   ];
 
-  cargoHash = "sha256-j1Qf0IKlAUEyiGAUoF7IlEbPIv2pGkn+YMCoFdF9oUE=";
+  cargoHash = "sha256-9Ac2NuUFfluXN4NOT645gszGApBIsFxQiTZDf8PHbvo=";
+
+  passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
     description = "Find fonts which can show a specified character and preview them in browser";
diff --git a/pkgs/by-name/gr/greenmask/package.nix b/pkgs/by-name/gr/greenmask/package.nix
index 432c914468ec8..4e5504ce769c1 100644
--- a/pkgs/by-name/gr/greenmask/package.nix
+++ b/pkgs/by-name/gr/greenmask/package.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "greenmask";
-  version = "0.1.13";
+  version = "0.1.14";
 
   src = fetchFromGitHub {
     owner = "GreenmaskIO";
     repo = "greenmask";
     rev = "refs/tags/v${version}";
-    hash = "sha256-d3VMq0sW5WEmSWssOknWQ+tmG8N1w4KYKl1QT4R9SRY=";
+    hash = "sha256-R/JJnHBp9MPnq/fIDwYrePIUH3/FvDPFaRpmrpwhU6o=";
   };
 
   vendorHash = "sha256-WCsZ5DU+mZk9M1lldBY4q2PXI8DDFytPojzGJ6wqXsg=";
diff --git a/pkgs/by-name/ha/halloy/Cargo.lock b/pkgs/by-name/ha/halloy/Cargo.lock
index 774723b056a05..74e5fa582d6ce 100644
--- a/pkgs/by-name/ha/halloy/Cargo.lock
+++ b/pkgs/by-name/ha/halloy/Cargo.lock
@@ -121,6 +121,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "anyhow"
+version = "1.0.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+
+[[package]]
 name = "approx"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -246,6 +252,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-http-proxy"
+version = "1.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29faa5d4d308266048bd7505ba55484315a890102f9345b9ff4b87de64201592"
+dependencies = [
+ "base64 0.13.1",
+ "httparse",
+ "thiserror",
+ "tokio",
+]
+
+[[package]]
 name = "async-io"
 version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -414,6 +432,12 @@ dependencies = [
 
 [[package]]
 name = "base64"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+
+[[package]]
+name = "base64"
 version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
@@ -923,7 +947,7 @@ dependencies = [
 name = "data"
 version = "0.1.0"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bytes",
  "chrono",
  "dirs-next",
@@ -947,6 +971,7 @@ dependencies = [
  "tokio",
  "tokio-stream",
  "toml",
+ "xdg",
 ]
 
 [[package]]
@@ -1271,6 +1296,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "fast-socks5"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f89f36d4ee12370d30d57b16c7e190950a1a916e7dbbb5fd5a412f5ef913fe84"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "log",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+]
+
+[[package]]
 name = "fast-srgb8"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1924,7 +1963,7 @@ dependencies = [
 [[package]]
 name = "iced"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_core",
  "iced_futures",
@@ -1938,7 +1977,7 @@ dependencies = [
 [[package]]
 name = "iced_core"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "dark-light",
@@ -1957,7 +1996,7 @@ dependencies = [
 [[package]]
 name = "iced_futures"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "futures",
  "iced_core",
@@ -1971,7 +2010,7 @@ dependencies = [
 [[package]]
 name = "iced_graphics"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "bytemuck",
@@ -1992,7 +2031,7 @@ dependencies = [
 [[package]]
 name = "iced_renderer"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_graphics",
  "iced_tiny_skia",
@@ -2004,7 +2043,7 @@ dependencies = [
 [[package]]
 name = "iced_runtime"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_core",
  "iced_futures",
@@ -2015,7 +2054,7 @@ dependencies = [
 [[package]]
 name = "iced_tiny_skia"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bytemuck",
  "cosmic-text",
@@ -2030,7 +2069,7 @@ dependencies = [
 [[package]]
 name = "iced_wgpu"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "bytemuck",
@@ -2049,7 +2088,7 @@ dependencies = [
 [[package]]
 name = "iced_widget"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_renderer",
  "iced_runtime",
@@ -2063,7 +2102,7 @@ dependencies = [
 [[package]]
 name = "iced_winit"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_graphics",
  "iced_runtime",
@@ -2156,7 +2195,9 @@ checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 name = "irc"
 version = "0.1.0"
 dependencies = [
+ "async-http-proxy",
  "bytes",
+ "fast-socks5",
  "futures",
  "irc_proto",
  "rustls-native-certs",
@@ -3377,7 +3418,7 @@ version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2d66674f2b6fb864665eea7a3c1ac4e3dfacd2fda83cf6f935a612e01b0e3338"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bytes",
  "encoding_rs",
  "futures-core",
@@ -3548,7 +3589,7 @@ version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
 dependencies = [
- "base64",
+ "base64 0.21.7",
 ]
 
 [[package]]
@@ -3557,7 +3598,7 @@ version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f48172685e6ff52a556baa527774f61fcaa884f59daf3375c62a3f1cd2549dab"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "rustls-pki-types",
 ]
 
@@ -5302,6 +5343,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911"
 
 [[package]]
+name = "xdg"
+version = "2.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
+
+[[package]]
 name = "xdg-home"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/by-name/ha/halloy/package.nix b/pkgs/by-name/ha/halloy/package.nix
index b38708b97423f..7075d2a4a9a52 100644
--- a/pkgs/by-name/ha/halloy/package.nix
+++ b/pkgs/by-name/ha/halloy/package.nix
@@ -1,34 +1,35 @@
-{ lib
-, stdenv
-, darwin
-, fetchFromGitHub
-, copyDesktopItems
-, makeDesktopItem
-, libxkbcommon
-, openssl
-, pkg-config
-, rustPlatform
-, vulkan-loader
-, wayland
-, xorg
+{
+  lib,
+  stdenv,
+  darwin,
+  fetchFromGitHub,
+  copyDesktopItems,
+  makeDesktopItem,
+  libxkbcommon,
+  openssl,
+  pkg-config,
+  rustPlatform,
+  vulkan-loader,
+  wayland,
+  xorg,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "halloy";
-  version = "2024.6";
+  version = "2024.7";
 
   src = fetchFromGitHub {
     owner = "squidowl";
     repo = "halloy";
     rev = "refs/tags/${version}";
-    hash = "sha256-UfeGRLZ0k2hHiA6o5kTysszU1WS4JUF5AXhKmE86bDM=";
+    hash = "sha256-CXuodMndUvltwjIiEdJuIazCYKqD/azROgSBTM6g87A=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "iced-0.13.0-dev" = "sha256-acGN7yxf33fDoh8J8uKvwiID+Xz1oVJ7KiiWgNWDXfo=";
       "glyphon-0.5.0" = "sha256-e1jTuaWh9eFdk2pDE4Ov/l3b/Q7GA3hqx6dPoOde1hM=";
+      "iced-0.13.0-dev" = "sha256-K1B9rVkShxQC97kwebHPsqJsJmxjEsFCKpg+p2lt09U=";
       "winit-0.29.15" = "sha256-9i2i4KcEv7vIImJtcw2NALQ3uDb4EAZXjShG6tfmhkc=";
     };
   };
@@ -38,26 +39,27 @@ rustPlatform.buildRustPackage rec {
     pkg-config
   ];
 
-  buildInputs = [
-    libxkbcommon
-    openssl
-    vulkan-loader
-    xorg.libX11
-    xorg.libXcursor
-    xorg.libXi
-    xorg.libXrandr
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.AppKit
-    darwin.apple_sdk.frameworks.CoreFoundation
-    darwin.apple_sdk.frameworks.CoreGraphics
-    darwin.apple_sdk.frameworks.Cocoa
-    darwin.apple_sdk.frameworks.Foundation
-    darwin.apple_sdk.frameworks.Metal
-    darwin.apple_sdk.frameworks.QuartzCore
-    darwin.apple_sdk.frameworks.Security
-  ] ++ lib.optionals stdenv.isLinux [
-    wayland
-  ];
+  buildInputs =
+    [
+      libxkbcommon
+      openssl
+      vulkan-loader
+      xorg.libX11
+      xorg.libXcursor
+      xorg.libXi
+      xorg.libXrandr
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.AppKit
+      darwin.apple_sdk.frameworks.CoreFoundation
+      darwin.apple_sdk.frameworks.CoreGraphics
+      darwin.apple_sdk.frameworks.Cocoa
+      darwin.apple_sdk.frameworks.Foundation
+      darwin.apple_sdk.frameworks.Metal
+      darwin.apple_sdk.frameworks.QuartzCore
+      darwin.apple_sdk.frameworks.Security
+    ]
+    ++ lib.optionals stdenv.isLinux [ wayland ];
 
   desktopItems = [
     (makeDesktopItem {
@@ -67,21 +69,35 @@ rustPlatform.buildRustPackage rec {
       icon = "org.squidowl.halloy";
       exec = pname;
       terminal = false;
-      mimeTypes = [ "x-scheme-handler/irc" "x-scheme-handler/ircs" ];
-      categories = [ "Network" "IRCClient" ];
-      keywords = [ "IM" "Chat" ];
+      mimeTypes = [
+        "x-scheme-handler/irc"
+        "x-scheme-handler/ircs"
+      ];
+      categories = [
+        "Network"
+        "IRCClient"
+      ];
+      keywords = [
+        "IM"
+        "Chat"
+      ];
       startupWMClass = "org.squidowl.halloy";
     })
   ];
 
   postFixup = lib.optional stdenv.isLinux (
     let
-      rpathWayland = lib.makeLibraryPath [ wayland vulkan-loader libxkbcommon ];
+      rpathWayland = lib.makeLibraryPath [
+        wayland
+        vulkan-loader
+        libxkbcommon
+      ];
     in
     ''
       rpath=$(patchelf --print-rpath $out/bin/halloy)
       patchelf --set-rpath "$rpath:${rpathWayland}" $out/bin/halloy
-    '');
+    ''
+  );
 
   postInstall = ''
     install -Dm644 assets/linux/icons/hicolor/128x128/apps/org.squidowl.halloy.png \
diff --git a/pkgs/by-name/la/labwc/package.nix b/pkgs/by-name/la/labwc/package.nix
index 36aa398e8767e..a6906f440ea1d 100644
--- a/pkgs/by-name/la/labwc/package.nix
+++ b/pkgs/by-name/la/labwc/package.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "labwc";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "labwc";
     repo = "labwc";
     rev = finalAttrs.version;
-    hash = "sha256-6l+pYEMFQT8P0j40IcujSzlKgXzR5GIyuxkAJi65RiY=";
+    hash = "sha256-8TSBBNg9+W65vEKmwyAWB2yEOpHqV9YRm5+ttL19ke4=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/by-name/nh/nh/package.nix b/pkgs/by-name/nh/nh/package.nix
index 23838fb804b53..e20797546f1a0 100644
--- a/pkgs/by-name/nh/nh/package.nix
+++ b/pkgs/by-name/nh/nh/package.nix
@@ -10,7 +10,7 @@
 , nix-output-monitor
 }:
 let
-  version = "3.5.14";
+  version = "3.5.15";
   runtimeDeps = [ nvd nix-output-monitor ];
 in
 rustPlatform.buildRustPackage {
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage {
     owner = "viperML";
     repo = "nh";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4vXLHDj6TnEXjJIzEcToHQ+6Rp4EnMpOFHQ3Ypymh0s=";
+    hash = "sha256-1mE4ZXGAMZl2Mufr47y+2UMDHBelqsvChaCsQDK3m70=";
   };
 
   strictDeps = true;
@@ -47,7 +47,7 @@ rustPlatform.buildRustPackage {
       --prefix PATH : ${lib.makeBinPath runtimeDeps}
   '';
 
-  cargoHash = "sha256-A2AFlm6Qs7IuR6LedapWx4RL0Ae5E7eSBJSMXjrONHE=";
+  cargoHash = "sha256-5BazSJGsafSl0eE7GOWw2SrVgC3k1tlrLiIFIpC51/o=";
 
   passthru.updateScript = nix-update-script { };
 
diff --git a/pkgs/desktops/gnome/apps/file-roller/default.nix b/pkgs/desktops/gnome/apps/file-roller/default.nix
index d32b9bddec8e5..27c189af64cb6 100644
--- a/pkgs/desktops/gnome/apps/file-roller/default.nix
+++ b/pkgs/desktops/gnome/apps/file-roller/default.nix
@@ -26,11 +26,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "file-roller";
-  version = "44.1";
+  version = "44.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/file-roller/${lib.versions.major finalAttrs.version}/file-roller-${finalAttrs.version}.tar.xz";
-    hash = "sha256-JQz1Uc/LEqZwyorflT4GgfHJt27gnZRYsgIDxiYCxIc=";
+    hash = "sha256-LFcXzn8F+6sTyEe2zjGxsCSIYfp6uPD/Hx4dRdHizfk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
index 14f4d15a4ce6c..deb3e011c1cda 100644
--- a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-text-editor";
-  version = "46.1";
+  version = "46.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-jr+gvqEudfXv6sxyG+O4rmUCewJKqB257KuMMSJXous=";
+    hash = "sha256-AFtIEEqQm+Zq4HRI0rxXBsfRE3gQV6JP9tpVvfMkxz0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/pkgs/desktops/gnome/core/gnome-calculator/default.nix
index 059ca6522e835..3b666976681e2 100644
--- a/pkgs/desktops/gnome/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-calculator/default.nix
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-calculator";
-  version = "46.0";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-RGlP2mtiM5I/XBCkjQLSz1ck4BGoqFeJB0yVMQHzO/E=";
+    hash = "sha256-LTZ1CnOJAIYSLPPwyD5oUXiRWFYVFlMG+hWWqRhmgkc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix
index 9fdffcfd8c920..7b94533f7b602 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -102,6 +102,13 @@ stdenv.mkDerivation (finalAttrs: {
       url = "https://src.fedoraproject.org/rpms/gnome-shell/raw/dcd112d9708954187e7490564c2229d82ba5326f/f/0001-gdm-Work-around-failing-fingerprint-auth.patch";
       hash = "sha256-mgXty5HhiwUO1UV3/eDgWtauQKM0cRFQ0U7uocST25s=";
     })
+
+    # screencast: Correct expected bus name for streams
+    # https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3303
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/50a011a19dcc6997ea6173c07bb80b2d9888d363.patch";
+      hash = "sha256-ccEpdWgDxwnj7ouzFekpoln5Y2PtgRikWetwK+0U9Fg=";
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/games/aisleriot/default.nix b/pkgs/desktops/gnome/games/aisleriot/default.nix
index e0c8ec7fb3ff4..dfba82308d1ac 100644
--- a/pkgs/desktops/gnome/games/aisleriot/default.nix
+++ b/pkgs/desktops/gnome/games/aisleriot/default.nix
@@ -13,27 +13,25 @@
 , guile
 , libcanberra-gtk3
 , ninja
-, appstream-glib
 , yelp-tools
 }:
 
 stdenv.mkDerivation rec {
   pname = "aisleriot";
-  version = "3.22.30";
+  version = "3.22.32";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = "aisleriot";
     rev = version;
-    sha256 = "sha256-Fj5v2h6xDqf+PPxduxGr3vTy+eZ3aIv0u/ThrheYLGQ=";
+    sha256 = "sha256-+U/EsKTZjWa05DbILWAxqIpMcZ0DP0l4LIYxM2wCFdM=";
   };
 
   nativeBuildInputs = [
     wrapGAppsHook3
     meson
     ninja
-    appstream-glib
     pkg-config
     itstool
     libxml2
diff --git a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
index a9f0001ae2d78..4c84e0053b279 100644
--- a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-sudoku";
-  version = "46.0";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-d8TnjYhvOxRFav7w+5aPLqAa01cDzEhSP41yR4P/pq8=";
+    hash = "sha256-ObtDHxCjH1Vq9im2aFyG1Qyknymhuv6GIZwgwVUQcKY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/compilers/ecl/default.nix b/pkgs/development/compilers/ecl/default.nix
index 26f1ec471a597..c11f471641dad 100644
--- a/pkgs/development/compilers/ecl/default.nix
+++ b/pkgs/development/compilers/ecl/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ecl";
-  version = "23.9.9";
+  version = "24.5.10";
 
   src = fetchurl {
     url = "https://common-lisp.net/project/ecl/static/files/release/ecl-${version}.tgz";
-    sha256 = "107q6gmxlsya4yv38r1x1axrgyyfgdrfkkz97zfp64bcrasdl6y5";
+    hash = "sha256-5Opluxhh4OSVOGv6i8ZzvQFOltPPnZHpA4+RQ1y+Yis=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix
index 93f5bb519495d..4b5f52c22b771 100644
--- a/pkgs/development/libraries/gtksourceview/5.x.nix
+++ b/pkgs/development/libraries/gtksourceview/5.x.nix
@@ -115,5 +115,7 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = platforms.unix;
     license = licenses.lgpl21Plus;
     maintainers = teams.gnome.members;
+    # https://hydra.nixos.org/build/258191535/nixlog/1
+    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 })
diff --git a/pkgs/development/libraries/libxcrypt/default.nix b/pkgs/development/libraries/libxcrypt/default.nix
index 067141883977d..d71cb7027570a 100644
--- a/pkgs/development/libraries/libxcrypt/default.nix
+++ b/pkgs/development/libraries/libxcrypt/default.nix
@@ -28,8 +28,18 @@ 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"] ;
+  makeFlags = let
+    lld17Plus = stdenv.cc.bintools.isLLVM
+      && lib.versionAtLeast stdenv.cc.bintools.version "17";
+  in []
+    # fixes: can't build x86_64-w64-mingw32 shared library unless -no-undefined is specified
+    ++ lib.optionals stdenv.hostPlatform.isWindows [ "LDFLAGS+=-no-undefined" ]
+
+    # lld 17 sets `--no-undefined-version` by default and `libxcrypt`'s
+    # version script unconditionally lists legacy compatibility symbols, even
+    # when not exported: https://github.com/besser82/libxcrypt/issues/181
+    ++ lib.optionals lld17Plus [ "LDFLAGS+=-Wl,--undefined-version" ]
+  ;
 
   nativeBuildInputs = [
     perl
diff --git a/pkgs/development/python-modules/app-model/default.nix b/pkgs/development/python-modules/app-model/default.nix
index 7dc1c65349eaf..bf2130e224176 100644
--- a/pkgs/development/python-modules/app-model/default.nix
+++ b/pkgs/development/python-modules/app-model/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, hatch-vcs
-, hatchling
-, in-n-out
-, psygnal
-, pydantic
-, pydantic-compat
-, pytestCheckHook
-, pythonOlder
-, typing-extensions
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  in-n-out,
+  psygnal,
+  pydantic,
+  pydantic-compat,
+  pytestCheckHook,
+  pythonOlder,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "app-model";
-  version = "0.2.6";
+  version = "0.2.7";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,15 +24,15 @@ buildPythonPackage rec {
     owner = "pyapp-kit";
     repo = "app-model";
     rev = "refs/tags/v${version}";
-    hash = "sha256-EMlxY9Xna9e3kWJ7X8oRuLHEmivwVFcEXRDvZfN2rNY=";
+    hash = "sha256-ISMSt7c8CoxffMhg7XC/ebKkgXFTBihDr1fGkqMCBoc=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-vcs
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     psygnal
     pydantic
     pydantic-compat
@@ -39,13 +40,9 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "app_model"
-  ];
+  pythonImportsCheck = [ "app_model" ];
 
   meta = with lib; {
     description = "Module to implement generic application schema";
diff --git a/pkgs/development/python-modules/chromadb/default.nix b/pkgs/development/python-modules/chromadb/default.nix
index 2042758efd8af..471b6111a93d3 100644
--- a/pkgs/development/python-modules/chromadb/default.nix
+++ b/pkgs/development/python-modules/chromadb/default.nix
@@ -132,6 +132,7 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "-x" ];
 
   preCheck = ''
+    (($(ulimit -n) < 1024)) && ulimit -n 1024
     export HOME=$(mktemp -d)
   '';
 
diff --git a/pkgs/development/python-modules/dissect-executable/default.nix b/pkgs/development/python-modules/dissect-executable/default.nix
index c6abdd5ee6f66..c8d9c456fa990 100644
--- a/pkgs/development/python-modules/dissect-executable/default.nix
+++ b/pkgs/development/python-modules/dissect-executable/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-executable";
-  version = "1.5";
+  version = "1.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.executable";
     rev = "refs/tags/${version}";
-    hash = "sha256-aAalU0TUqXc13WnxJvirG3QzQyMstecOfnXMdFT8IzU=";
+    hash = "sha256-b8xPOIUMn6JdYlvuoV5UeBdyISh6CC2Gh6E6U5ZZ7qY=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/duckduckgo-search/default.nix b/pkgs/development/python-modules/duckduckgo-search/default.nix
index 708762bb2622f..a06c16586b0a3 100644
--- a/pkgs/development/python-modules/duckduckgo-search/default.nix
+++ b/pkgs/development/python-modules/duckduckgo-search/default.nix
@@ -1,20 +1,52 @@
-{ lib
-, aiofiles
-, buildPythonPackage
-, click
-, fetchFromGitHub
-, h2
-, httpx
-, lxml
-, pythonOlder
-, requests
-, setuptools
-, socksio
+{
+  lib,
+  buildPythonPackage,
+  click,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  orjson,
+  curl-cffi,
+
+  # To build orjson
+  rustPlatform,
+
+  # Optional dependencies
+  lxml,
 }:
+let
+  curl-cffi_0_7_0 = curl-cffi.overrideAttrs (
+    final: old: {
+      version = "0.7.0b4";
+      src = fetchFromGitHub {
+        owner = "yifeikong";
+        repo = "curl_cffi";
+        rev = "v${final.version}";
+        hash = "sha256-txrJNUzswAPeH4Iazn0iKJI0Rqk0HHRoDrtTfDHKMoo=";
+      };
+    }
+  );
 
+  orjson_3_10_3 = orjson.overrideAttrs (
+    final: old: {
+      version = "3.10.3";
+      src = fetchFromGitHub {
+        owner = "ijl";
+        repo = "orjson";
+        rev = "refs/tags/${final.version}";
+        hash = "sha256-bK6wA8P/IXEbiuJAx7psd0nUUKjR1jX4scFfJr1MBAk=";
+      };
+      cargoDeps = rustPlatform.fetchCargoTarball {
+        inherit (final) src;
+        name = "${old.pname}-${final.version}";
+        hash = "sha256-ilGq+/gPSuNwURUWy2ZxInzmUv+PxYMxd8esxrMpr2o=";
+      };
+    }
+  );
+in
 buildPythonPackage rec {
   pname = "duckduckgo-search";
-  version = "5.0";
+  version = "v5.3.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,36 +54,32 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "deedy5";
     repo = "duckduckgo_search";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-OZFkSFyXC2MFP2MbKwF/qR8zvCFzPKgLmX+nuIztOpw=";
+    rev = version;
+    hash = "sha256-T7rlB3dU7y+HbHr1Ss9KkejlXFORhnv9Va7cFTRtfQU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  nativeBuildInputs = [ setuptools ];
 
   propagatedBuildInputs = [
-    aiofiles
     click
-    h2
-    httpx
-    lxml
-    requests
-    socksio
-  ] ++ httpx.optional-dependencies.brotli
-    ++ httpx.optional-dependencies.http2
-    ++ httpx.optional-dependencies.socks;
-
-  pythonImportsCheck = [
-    "duckduckgo_search"
+    orjson_3_10_3
+    curl-cffi_0_7_0
   ];
 
-  meta = with lib; {
+  passthru.optional-dependencies = {
+    lxml = [ lxml ];
+  };
+
+  doCheck = false; # tests require network access
+
+  pythonImportsCheck = [ "duckduckgo_search" ];
+
+  meta = {
     description = "Python CLI and library for searching for words, documents, images, videos, news, maps and text translation using the DuckDuckGo.com search engine";
     mainProgram = "ddgs";
     homepage = "https://github.com/deedy5/duckduckgo_search";
-    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/v${version}";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ drawbu ];
   };
 }
diff --git a/pkgs/development/python-modules/napari-console/default.nix b/pkgs/development/python-modules/napari-console/default.nix
index 9072ada93f420..07b8d735736a1 100644
--- a/pkgs/development/python-modules/napari-console/default.nix
+++ b/pkgs/development/python-modules/napari-console/default.nix
@@ -1,47 +1,44 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, imageio
-, ipykernel
-, ipython
-, napari-plugin-engine
-, pythonOlder
-, qtconsole
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  imageio,
+  ipykernel,
+  ipython,
+  napari-plugin-engine,
+  pythonOlder,
+  qtconsole,
+  qtpy,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "napari-console";
-  version = "0.0.7";
-  format = "pyproject";
+  version = "0.0.9";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari-console";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vHLCVMgrcs54pGb48wQpc0h7QBIfE6r7hCSoDNI3QvA=";
+    hash = "sha256-3gOfiPx06G5c4eaLQ5kP45hUr6yw91esznJFacpO66Q=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    imageio
+  dependencies = [
     ipykernel
     ipython
-    napari-plugin-engine
     qtconsole
+    qtpy
   ];
 
   # Circular dependency: napari
   doCheck = false;
 
-  pythonImportsCheck = [
-    "napari_console"
-  ];
+  pythonImportsCheck = [ "napari_console" ];
 
   meta = with lib; {
     description = "A plugin that adds a console to napari";
diff --git a/pkgs/development/python-modules/napari/default.nix b/pkgs/development/python-modules/napari/default.nix
index 0bccb016570ca..b5baed96a4417 100644
--- a/pkgs/development/python-modules/napari/default.nix
+++ b/pkgs/development/python-modules/napari/default.nix
@@ -1,67 +1,69 @@
-{ lib
-, mkDerivationWith
-, appdirs
-, app-model
-, buildPythonPackage
-, cachey
-, certifi
-, dask
-, docstring-parser
-, fetchFromGitHub
-, imageio
-, jsonschema
-, magicgui
-, napari-console
-, napari-npe2
-, napari-svg
-, numpydoc
-, pint
-, psutil
-, pydantic
-, pyopengl
-, pillow
-, pythonOlder
-, pyyaml
-, scikit-image
-, scipy
-, setuptools-scm
-, sphinx
-, superqt
-, tifffile
-, toolz
-, tqdm
-, typing-extensions
-, vispy
-, wrapQtAppsHook
-, wrapt
+{
+  lib,
+  app-model,
+  appdirs,
+  buildPythonPackage,
+  cachey,
+  certifi,
+  dask,
+  docstring-parser,
+  fetchFromGitHub,
+  imageio,
+  jsonschema,
+  magicgui,
+  mkDerivationWith,
+  napari-console,
+  napari-npe2,
+  napari-svg,
+  numpydoc,
+  pandas,
+  pillow,
+  pint,
+  psutil,
+  pydantic,
+  pyopengl,
+  pythonOlder,
+  pyyaml,
+  scikit-image,
+  scipy,
+  setuptools,
+  setuptools-scm,
+  superqt,
+  tifffile,
+  toolz,
+  tqdm,
+  typing-extensions,
+  vispy,
+  wrapQtAppsHook,
+  wrapt,
 }:
 
 mkDerivationWith buildPythonPackage rec {
   pname = "napari";
   version = "0.4.19.post1";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari";
     rev = "refs/tags/v${version}";
     hash = "sha256-qw5WdFPySNkmm+dNu+hqsmr+csBpHnSl9bMpb4nKEqI=";
   };
 
   postPatch = ''
     substituteInPlace setup.cfg \
-      --replace "scikit-image>=0.19.1" "scikit-image" \
-      --replace "sphinx<5" "sphinx" \
-      --replace "vispy>=0.11.0,<0.12" "vispy"
+      --replace-fail "scikit-image[data]>=0.19.1" "scikit-image"
   '';
 
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     setuptools-scm
-    wrapQtAppsHook
   ];
 
+  nativeBuildInputs = [ wrapQtAppsHook ];
+
   propagatedBuildInputs = [
     app-model
     appdirs
@@ -76,15 +78,15 @@ mkDerivationWith buildPythonPackage rec {
     napari-npe2
     napari-svg
     numpydoc
-    pint
+    pandas
     pillow
+    pint
     psutil
     pydantic
     pyopengl
     pyyaml
     scikit-image
     scipy
-    sphinx
     superqt
     tifffile
     toolz
diff --git a/pkgs/development/python-modules/pubnub/default.nix b/pkgs/development/python-modules/pubnub/default.nix
index 58b6bd159d508..868926ba95f13 100644
--- a/pkgs/development/python-modules/pubnub/default.nix
+++ b/pkgs/development/python-modules/pubnub/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pubnub";
-  version = "7.4.4";
+  version = "8.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "pubnub";
     repo = "python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4Paodw3t2RvAKrDMcWHIGLs5JNtH/9sP+BTyAm/hj4E=";
+    hash = "sha256-GKJv/GJ/h/LVbEa8Wz7iXc8J38UTTlNa0/08+p5sYCA=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pyslurm/default.nix b/pkgs/development/python-modules/pyslurm/default.nix
index b910da5b69e26..f65aae69cded6 100644
--- a/pkgs/development/python-modules/pyslurm/default.nix
+++ b/pkgs/development/python-modules/pyslurm/default.nix
@@ -1,8 +1,8 @@
 { lib
 , pythonOlder
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
+, setuptools
 , cython
 , slurm
 }:
@@ -10,7 +10,7 @@
 buildPythonPackage rec {
   pname = "pyslurm";
   version = "23.11.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -21,15 +21,16 @@ buildPythonPackage rec {
     hash = "sha256-Qi0XftneKj7hdDiLY2hoRONRrPv49mfQlvlNkudH54Y=";
   };
 
-  patches = [ (fetchpatch {
-    name = "remove-undeclared-KILL_JOB_ARRAY";
-    url = "https://github.com/PySlurm/pyslurm/commit/f7a7d8beb8ceb4e4c1b248bab2ebb995dcae77e2.patch";
-    hash = "sha256-kQLGiGzAhqP8Z6pObz9vdTRdITd12w7KuUDXsfyLIU8=";
-  })];
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   buildInputs = [ cython slurm ];
 
-  setupPyBuildFlags = [ "--slurm-lib=${lib.getLib slurm}/lib" "--slurm-inc=${lib.getDev slurm}/include" ];
+  env = {
+    SLURM_LIB_DIR = "${lib.getLib slurm}/lib";
+    SLURM_INCLUDE_DIR = "${lib.getDev slurm}/include";
+  };
 
   # Test cases need /etc/slurm/slurm.conf and require a working slurm installation
   doCheck = false;
diff --git a/pkgs/development/python-modules/python3-gnutls/default.nix b/pkgs/development/python-modules/python3-gnutls/default.nix
index 72f695326d758..6adaf3c033933 100644
--- a/pkgs/development/python-modules/python3-gnutls/default.nix
+++ b/pkgs/development/python-modules/python3-gnutls/default.nix
@@ -1,20 +1,22 @@
 { lib, fetchFromGitHub, substituteAll, buildPythonPackage, isPy3k, gnutls
-, twisted, pyopenssl, service-identity }:
+, twisted, pyopenssl, service-identity, setuptools }:
 
 buildPythonPackage rec {
   pname = "python3-gnutls";
-  version = "3.1.9";
-  format = "setuptools";
+  version = "3.1.10";
+  pyproject = true;
 
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "AGProjects";
     repo = "python3-gnutls";
-    rev = "324b78f7cd3d9fe58c89c7f0b2bf94199bd6a6e5"; # version not tagged
-    hash = "sha256-18T8bAHlNERHobsspUFvSC6ulN55nrFFb5aqNwU8T00=";
+    rev = "refs/tags/release-${version}";
+    hash = "sha256-AdFRF3ZlkkAoSm5rvf/09FSYIo7SsZ38sD2joOLyukA=";
   };
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [ twisted pyopenssl service-identity ];
 
   patches = [
diff --git a/pkgs/development/python-modules/scikit-posthocs/default.nix b/pkgs/development/python-modules/scikit-posthocs/default.nix
index e8f3933299a74..1aba1d935c4e9 100644
--- a/pkgs/development/python-modules/scikit-posthocs/default.nix
+++ b/pkgs/development/python-modules/scikit-posthocs/default.nix
@@ -16,7 +16,7 @@
 buildPythonPackage rec {
   pname = "scikit-posthocs";
   version = "0.9.0";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "maximtrp";
@@ -25,13 +25,6 @@ buildPythonPackage rec {
     hash = "sha256-sRop5DKakrZEBswzTvumn68wKqU15zM5aCLfZ/PdsFg=";
   };
 
-  patches = [
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/02266a00ce0eb6a089e7efe07816da1aa5152fc9
-    ./0001-increased-abs-tolerance-for-wilcoxon-test.patch
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/5416ffba3ab01aebab3909400b5a9e847022898e
-    ./0002-Update-test_posthocs.py.patch
-  ];
-
   nativeBuildInputs = [
     setuptools
     wheel
diff --git a/pkgs/development/python-modules/setuptools-gettext/default.nix b/pkgs/development/python-modules/setuptools-gettext/default.nix
index 394f4c4693fad..ab9961af33958 100644
--- a/pkgs/development/python-modules/setuptools-gettext/default.nix
+++ b/pkgs/development/python-modules/setuptools-gettext/default.nix
@@ -1,16 +1,22 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  pythonAtLeast,
+  setuptools,
+  tomli,
+  pytestCheckHook,
+  gettext,
 }:
 
 buildPythonPackage rec {
   pname = "setuptools-gettext";
   version = "0.1.11";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  # >=3.12 doesn't work because the package depends on `distutils`
+  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = "breezy-team";
@@ -19,19 +25,22 @@ buildPythonPackage rec {
     hash = "sha256-yLKn4wwGgRdlsISAT71lD2vkIefsTJRB+OEA030adZY=";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ setuptools ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
+
+  pythonImportsCheck = [ "setuptools_gettext" ];
 
-  pythonImportsCheck = [
-    "setuptools_gettext"
+  nativeCheckInputs = [
+    pytestCheckHook
+    gettext
   ];
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/breezy-team/setuptools-gettext/releases/tag/v${version}";
     description = "setuptools plugin for building mo files";
     homepage = "https://github.com/breezy-team/setuptools-gettext";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/stim/default.nix b/pkgs/development/python-modules/stim/default.nix
index 3e95b74ef9ef4..ca76e41880af0 100644
--- a/pkgs/development/python-modules/stim/default.nix
+++ b/pkgs/development/python-modules/stim/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   postPatch = ''
     # asked to relax this in https://github.com/quantumlib/Stim/issues/623
     substituteInPlace pyproject.toml \
-      --replace "pybind11==" "pybind11>="
+      --replace-quiet "pybind11~=" "pybind11>="
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/succulent/default.nix b/pkgs/development/python-modules/succulent/default.nix
index 74d369acefc1b..f3d90ec52abfa 100644
--- a/pkgs/development/python-modules/succulent/default.nix
+++ b/pkgs/development/python-modules/succulent/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , flask
+, lxml
 , pandas
 , pyyaml
 , poetry-core
@@ -9,14 +10,15 @@
 , pythonRelaxDepsHook
 , pythonOlder
 , toml-adapt
+, xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "succulent";
   version = "0.3.3";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "firefly-cpp";
@@ -27,7 +29,6 @@ buildPythonPackage rec {
 
   pythonRelaxDeps = [
     "flask"
-    "pandas"
   ];
 
   nativeBuildInputs = [
@@ -37,8 +38,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     flask
+    lxml
     pandas
     pyyaml
+    xmltodict
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/superqt/default.nix b/pkgs/development/python-modules/superqt/default.nix
index e7c3aaa04589a..7012efc0e9065 100644
--- a/pkgs/development/python-modules/superqt/default.nix
+++ b/pkgs/development/python-modules/superqt/default.nix
@@ -1,44 +1,66 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools-scm
-, pyqt5
-, qtpy
-, typing-extensions
-, pytestCheckHook
-, pygments
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  pint,
+  pygments,
+  pyqt5,
+  pyqt6,
+  pyside2,
+  pyside6,
+  pytestCheckHook,
+  pythonOlder,
+  qtpy,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "superqt";
-  version = "0.3.8";
-  format = "pyproject";
+  version = "0.6.5";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = "napari";
-    repo = pname;
+    owner = "pyapp-kit";
+    repo = "superqt";
     rev = "refs/tags/v${version}";
     hash = "sha256-zEMG2zscGDlRxtLn/lUTEjZBPabcwzMcj/kMcy3yOs8=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  build-system = [
+    hatch-vcs
+    hatchling
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    pygments
     pyqt5
     qtpy
     typing-extensions
-    pygments
   ];
 
+  passthru.optional-dependencies = {
+    quantity = [ pint ];
+    pyside2 = [ pyside2 ];
+    pyside6 = [ pyside6 ];
+    pyqt6 = [ pyqt6 ];
+  };
+
   nativeCheckInputs = [ pytestCheckHook ];
 
-  doCheck = false; # Segfaults...
+  # Segmentation fault
+  doCheck = false;
 
-  pythonImportsCheck = [ "superqt" ];
+  # Segmentation fault
+  # pythonImportsCheck = [ "superqt" ];
 
   meta = with lib; {
     description = "Missing widgets and components for Qt-python (napari/superqt)";
     homepage = "https://github.com/napari/superqt";
+    changelog = "https://github.com/pyapp-kit/superqt/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ SomeoneSerge ];
   };
diff --git a/pkgs/development/python-modules/types-beautifulsoup4/default.nix b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
index 24a48b3bdca9b..57c1f550b2e49 100644
--- a/pkgs/development/python-modules/types-beautifulsoup4/default.nix
+++ b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "types-beautifulsoup4";
-  version = "4.12.0.20240504";
+  version = "4.12.0.20240511";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-17evTMxS/CJ4TTOlKWleNDKam91dtqZJybJcssOhSNU=";
+    hash = "sha256-AE9glv3YOxnNv2yxDk6uV7ECBezMNl0Kadd9qDYBLig=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix
index 3cc9a89e70b3f..a52549728bb61 100644
--- a/pkgs/development/python-modules/zigpy/default.nix
+++ b/pkgs/development/python-modules/zigpy/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , aiohttp
 , aioresponses
 , aiosqlite
@@ -74,6 +75,8 @@ buildPythonPackage rec {
   disabledTests = [
     # assert quirked.quirk_metadata.quirk_location.endswith("zigpy/tests/test_quirks_v2.py]-line:104") is False
     "test_quirks_v2"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isx86_64) [
+    "test_periodic_scan_priority"
   ];
 
   disabledTestPaths = [
diff --git a/pkgs/development/tools/devpi-client/default.nix b/pkgs/development/tools/devpi-client/default.nix
index 66d84e5a3b127..ea60c216a8f55 100644
--- a/pkgs/development/tools/devpi-client/default.nix
+++ b/pkgs/development/tools/devpi-client/default.nix
@@ -1,37 +1,31 @@
-{ lib
-, devpi-server
-, git
-, glibcLocales
-, python3
-, fetchPypi
+{
+  lib,
+  devpi-server,
+  git,
+  glibcLocales,
+  python3,
+  fetchPypi,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "devpi-client";
-  version = "7.0.2";
+  version = "7.0.3";
   pyproject = true;
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-oOX5Z8WXgNJYsgXqHE2CsXdDnA3XmDF6axD1D318bPQ=";
+    pname = "devpi_client";
+    inherit version;
+    hash = "sha256-5aF6EIFnhfywDeAfWSN+eZUpaO6diPCP5QHT11Y/IQI=";
   };
 
-  postPatch = ''
-    substituteInPlace tox.ini \
-      --replace "--flake8" ""
-  '';
-
-  nativeBuildInputs = with python3.pkgs; [
+  build-system = with python3.pkgs; [
     setuptools
     setuptools-changelog-shortener
-    wheel
   ];
 
-  buildInputs = [
-    glibcLocales
-  ];
+  buildInputs = [ glibcLocales ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     build
     check-manifest
     devpi-common
@@ -41,19 +35,21 @@ python3.pkgs.buildPythonApplication rec {
     platformdirs
   ];
 
-  nativeCheckInputs = [
-    devpi-server
-    git
-  ] ++ (with python3.pkgs; [
-    mercurial
-    mock
-    pypitoken
-    pytestCheckHook
-    sphinx
-    virtualenv
-    webtest
-    wheel
-  ]);
+  nativeCheckInputs =
+    [
+      devpi-server
+      git
+    ]
+    ++ (with python3.pkgs; [
+      mercurial
+      mock
+      pypitoken
+      pytestCheckHook
+      sphinx
+      virtualenv
+      webtest
+      wheel
+    ]);
 
   preCheck = ''
     export HOME=$(mktemp -d);
@@ -68,16 +64,17 @@ python3.pkgs.buildPythonApplication rec {
 
   __darwinAllowLocalNetworking = true;
 
-  pythonImportsCheck = [
-    "devpi"
-  ];
+  pythonImportsCheck = [ "devpi" ];
 
   meta = with lib; {
     description = "Client for devpi, a pypi index server and packaging meta tool";
-    mainProgram = "devpi";
     homepage = "http://doc.devpi.net";
     changelog = "https://github.com/devpi/devpi/blob/client-${version}/client/CHANGELOG";
     license = licenses.mit;
-    maintainers = with maintainers; [ lewo makefu ];
+    maintainers = with maintainers; [
+      lewo
+      makefu
+    ];
+    mainProgram = "devpi";
   };
 }
diff --git a/pkgs/kde/frameworks/kfilemetadata/default.nix b/pkgs/kde/frameworks/kfilemetadata/default.nix
index b6b5f3a7bfbd5..0e9fd5489e7e1 100644
--- a/pkgs/kde/frameworks/kfilemetadata/default.nix
+++ b/pkgs/kde/frameworks/kfilemetadata/default.nix
@@ -5,7 +5,6 @@
   ebook_tools,
   exiv2,
   ffmpeg,
-  kcodecs,
   kconfig,
   kdegraphics-mobipocket,
   libappimage,
@@ -18,5 +17,5 @@ mkKdeDerivation {
   patches = [./cmake-install-paths.patch];
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [attr ebook_tools exiv2 ffmpeg kcodecs kconfig kdegraphics-mobipocket libappimage];
+  extraBuildInputs = [attr ebook_tools exiv2 ffmpeg kconfig kdegraphics-mobipocket libappimage];
 }
diff --git a/pkgs/kde/frameworks/kguiaddons/default.nix b/pkgs/kde/frameworks/kguiaddons/default.nix
index 3c1fb8034a0a4..3aa8bcdf29f5a 100644
--- a/pkgs/kde/frameworks/kguiaddons/default.nix
+++ b/pkgs/kde/frameworks/kguiaddons/default.nix
@@ -2,12 +2,11 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland,
 }:
 mkKdeDerivation {
   pname = "kguiaddons";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland];
+  extraBuildInputs = [qtwayland];
   meta.mainProgram = "kde-geo-uri-handler";
 }
diff --git a/pkgs/kde/frameworks/kidletime/default.nix b/pkgs/kde/frameworks/kidletime/default.nix
index 8fd68f04ec14d..7171822ec1da4 100644
--- a/pkgs/kde/frameworks/kidletime/default.nix
+++ b/pkgs/kde/frameworks/kidletime/default.nix
@@ -2,12 +2,11 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland-protocols,
   xorg,
 }:
 mkKdeDerivation {
   pname = "kidletime";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland xorg.libXScrnSaver wayland-protocols];
+  extraBuildInputs = [qtwayland xorg.libXScrnSaver];
 }
diff --git a/pkgs/kde/frameworks/kwindowsystem/default.nix b/pkgs/kde/frameworks/kwindowsystem/default.nix
index 711638cb106c2..a5fb8eddb7eab 100644
--- a/pkgs/kde/frameworks/kwindowsystem/default.nix
+++ b/pkgs/kde/frameworks/kwindowsystem/default.nix
@@ -4,11 +4,10 @@
   qtdeclarative,
   qtwayland,
   pkg-config,
-  wayland,
 }:
 mkKdeDerivation {
   pname = "kwindowsystem";
 
   extraNativeBuildInputs = [qttools pkg-config];
-  extraBuildInputs = [qtdeclarative qtwayland wayland];
+  extraBuildInputs = [qtdeclarative qtwayland];
 }
diff --git a/pkgs/kde/frameworks/qqc2-desktop-style/default.nix b/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
index d681efd14f415..3c756d9b93530 100644
--- a/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
+++ b/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
@@ -2,12 +2,10 @@
   mkKdeDerivation,
   qtdeclarative,
   qttools,
-  sonnet,
 }:
 mkKdeDerivation {
   pname = "qqc2-desktop-style";
 
   extraNativeBuildInputs = [qttools];
   extraBuildInputs = [qtdeclarative];
-  extraPropagatedBuildInputs = [sonnet];
 }
diff --git a/pkgs/kde/frameworks/solid/default.nix b/pkgs/kde/frameworks/solid/default.nix
index d59d15f16ead3..2c628b8dbc3ed 100644
--- a/pkgs/kde/frameworks/solid/default.nix
+++ b/pkgs/kde/frameworks/solid/default.nix
@@ -1,6 +1,5 @@
 {
   mkKdeDerivation,
-  fetchpatch,
   qttools,
   bison,
   flex,
@@ -12,13 +11,6 @@ mkKdeDerivation {
   patches = [
     # Also search /run/wrappers for mount/umount
     ./fix-search-path.patch
-
-    # Backport fix for mounting removable LUKS devices
-    # FIXME: remove in 6.2
-    (fetchpatch {
-      url = "https://invent.kde.org/frameworks/solid/-/commit/a3b18591ba144fae0cd0cfc087a45c64000d4e51.patch";
-      hash = "sha256-e7+amjOShUSzPb0pAxnAuuh/fbK/YLESqR0co1bs+wg=";
-    })
   ];
 
   extraNativeBuildInputs = [qttools bison flex];
diff --git a/pkgs/kde/gear/akonadi-search/default.nix b/pkgs/kde/gear/akonadi-search/default.nix
index 6e89f0b685ff7..416dd91a9ee5b 100644
--- a/pkgs/kde/gear/akonadi-search/default.nix
+++ b/pkgs/kde/gear/akonadi-search/default.nix
@@ -26,9 +26,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [xapian];
+  extraBuildInputs = [corrosion xapian];
 }
diff --git a/pkgs/kde/gear/angelfish/default.nix b/pkgs/kde/gear/angelfish/default.nix
index 2250b5db6a43b..0d9b4a341f05d 100644
--- a/pkgs/kde/gear/angelfish/default.nix
+++ b/pkgs/kde/gear/angelfish/default.nix
@@ -25,9 +25,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [qtsvg qtwebengine qcoro];
+  extraBuildInputs = [qtsvg qtwebengine corrosion qcoro];
 }
diff --git a/pkgs/kde/gear/arianna/default.nix b/pkgs/kde/gear/arianna/default.nix
index 9e56cfda9efe7..247da11b6d3dd 100644
--- a/pkgs/kde/gear/arianna/default.nix
+++ b/pkgs/kde/gear/arianna/default.nix
@@ -5,7 +5,6 @@
   qtwebchannel,
   qtwebengine,
   kitemmodels,
-  kquickcharts,
 }:
 mkKdeDerivation {
   pname = "arianna";
@@ -16,7 +15,6 @@ mkKdeDerivation {
     qtwebchannel
     qtwebengine
     kitemmodels
-    kquickcharts
   ];
   meta.mainProgram = "arianna";
 }
diff --git a/pkgs/kde/gear/ghostwriter/default.nix b/pkgs/kde/gear/ghostwriter/default.nix
index f4b4a3cee21e3..273e805549e74 100644
--- a/pkgs/kde/gear/ghostwriter/default.nix
+++ b/pkgs/kde/gear/ghostwriter/default.nix
@@ -12,7 +12,7 @@
 mkKdeDerivation {
   pname = "ghostwriter";
 
-  extraNativeBuildInputs = [pkg-config kdoctools];
-  extraBuildInputs = [qtsvg qttools qtwebchannel qtwebengine qt5compat hunspell];
+  extraNativeBuildInputs = [pkg-config];
+  extraBuildInputs = [qtsvg qttools qtwebchannel qtwebengine qt5compat kdoctools hunspell];
   meta.mainProgram = "ghostwriter";
 }
diff --git a/pkgs/kde/gear/gwenview/default.nix b/pkgs/kde/gear/gwenview/default.nix
index 2788e592ef3e2..4bbb5f98eb1e8 100644
--- a/pkgs/kde/gear/gwenview/default.nix
+++ b/pkgs/kde/gear/gwenview/default.nix
@@ -10,8 +10,6 @@
   kimageannotator,
   lcms2,
   libtiff,
-  wayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "gwenview";
@@ -29,7 +27,5 @@ mkKdeDerivation {
     kimageannotator
     lcms2
     libtiff
-    wayland
-    wayland-protocols
   ];
 }
diff --git a/pkgs/kde/gear/kasts/default.nix b/pkgs/kde/gear/kasts/default.nix
index 860af4a1f0817..2375bb00af21f 100644
--- a/pkgs/kde/gear/kasts/default.nix
+++ b/pkgs/kde/gear/kasts/default.nix
@@ -3,7 +3,6 @@
   qtsvg,
   qtmultimedia,
   pkg-config,
-  qqc2-desktop-style,
   taglib,
   libvlc,
 }:
@@ -14,7 +13,6 @@ mkKdeDerivation {
   extraBuildInputs = [
     qtsvg
     qtmultimedia
-    qqc2-desktop-style
     taglib
     libvlc
   ];
diff --git a/pkgs/kde/gear/kcalc/default.nix b/pkgs/kde/gear/kcalc/default.nix
index fdc55b3532782..28f1d314ce964 100644
--- a/pkgs/kde/gear/kcalc/default.nix
+++ b/pkgs/kde/gear/kcalc/default.nix
@@ -8,7 +8,6 @@
 mkKdeDerivation {
   pname = "kcalc";
 
-  extraNativeBuildInputs = [kdoctools];
-  extraBuildInputs = [qt5compat gmp mpfr];
+  extraBuildInputs = [qt5compat gmp mpfr kdoctools];
   meta.mainProgram = "kcalc";
 }
diff --git a/pkgs/kde/gear/kdepim-addons/default.nix b/pkgs/kde/gear/kdepim-addons/default.nix
index e256ee8fdf1dc..fded9e9b02058 100644
--- a/pkgs/kde/gear/kdepim-addons/default.nix
+++ b/pkgs/kde/gear/kdepim-addons/default.nix
@@ -4,8 +4,8 @@
   rustPlatform,
   cargo,
   rustc,
-  corrosion,
   discount,
+  corrosion,
   alpaka,
   # provided as callPackage input to enable easier overrides through overlays
   cargoHash ? "sha256-Yt1Gxw9Q1Q108YRJoUIpeNZlGjZ7yabLW3bRO4+x6Vo=",
@@ -28,9 +28,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [discount alpaka];
+  extraBuildInputs = [discount corrosion alpaka];
 }
diff --git a/pkgs/kde/gear/kio-extras/default.nix b/pkgs/kde/gear/kio-extras/default.nix
index b80f9175a5e9b..18cf462941373 100644
--- a/pkgs/kde/gear/kio-extras/default.nix
+++ b/pkgs/kde/gear/kio-extras/default.nix
@@ -3,7 +3,6 @@
   qt5compat,
   qtsvg,
   pkg-config,
-  libkexiv2,
   samba,
   libssh,
   libmtp,
@@ -24,7 +23,6 @@ mkKdeDerivation {
   extraBuildInputs = [
     qt5compat
     qtsvg
-    libkexiv2
 
     samba
     libssh
diff --git a/pkgs/kde/gear/koko/default.nix b/pkgs/kde/gear/koko/default.nix
index faec24560b6c6..1241f68e12a74 100644
--- a/pkgs/kde/gear/koko/default.nix
+++ b/pkgs/kde/gear/koko/default.nix
@@ -7,7 +7,6 @@
   qtsvg,
   exiv2,
   kirigami-addons,
-  kquickimageeditor,
 }: let
   # URLs snapshotted through
   # https://web.archive.org/save/$url
@@ -41,7 +40,6 @@ in
       qtsvg
       exiv2
       kirigami-addons
-      kquickimageeditor
     ];
     meta.mainProgram = "koko";
   }
diff --git a/pkgs/kde/gear/kopeninghours/default.nix b/pkgs/kde/gear/kopeninghours/default.nix
index b315d765fb396..7ba5214ac09fb 100644
--- a/pkgs/kde/gear/kopeninghours/default.nix
+++ b/pkgs/kde/gear/kopeninghours/default.nix
@@ -16,5 +16,6 @@ mkKdeDerivation {
       enablePython = true;
       python = python3;
     })
+    python3
   ];
 }
diff --git a/pkgs/kde/gear/plasmatube/default.nix b/pkgs/kde/gear/plasmatube/default.nix
index 05285f6b6c1d6..63236fe00d76f 100644
--- a/pkgs/kde/gear/plasmatube/default.nix
+++ b/pkgs/kde/gear/plasmatube/default.nix
@@ -3,18 +3,15 @@
   mkKdeDerivation,
   qtquick3d,
   qtsvg,
-  purpose,
-  qqc2-desktop-style,
   pkg-config,
-  mpv,
+  mpv-unwrapped,
   yt-dlp,
 }:
 mkKdeDerivation {
   pname = "plasmatube";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtquick3d qtsvg mpv qqc2-desktop-style];
-  extraPropagatedBuildInputs = [purpose];
+  extraBuildInputs = [qtquick3d qtsvg mpv-unwrapped];
 
   qtWrapperArgs = ["--prefix" "PATH" ":" (lib.makeBinPath [ yt-dlp ])];
   meta.mainProgram = "plasmatube";
diff --git a/pkgs/kde/gear/sweeper/default.nix b/pkgs/kde/gear/sweeper/default.nix
index e2b7fd934436e..24e75b7c5301e 100644
--- a/pkgs/kde/gear/sweeper/default.nix
+++ b/pkgs/kde/gear/sweeper/default.nix
@@ -1,10 +1,6 @@
-{
-  mkKdeDerivation,
-  plasma-activities-stats,
-}:
+{mkKdeDerivation}:
 mkKdeDerivation {
   pname = "sweeper";
 
-  extraBuildInputs = [plasma-activities-stats];
   meta.mainProgram = "sweeper";
 }
diff --git a/pkgs/kde/gear/tokodon/default.nix b/pkgs/kde/gear/tokodon/default.nix
index 1e12163eb98bd..fd47144eda1d1 100644
--- a/pkgs/kde/gear/tokodon/default.nix
+++ b/pkgs/kde/gear/tokodon/default.nix
@@ -5,14 +5,13 @@
   qtsvg,
   qtwebsockets,
   qtwebview,
-  mpv,
-  kitemmodels,
+  mpv-unwrapped,
   sonnet,
 }:
 mkKdeDerivation {
   pname = "tokodon";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtmultimedia qtsvg qtwebsockets qtwebview mpv kitemmodels sonnet];
+  extraBuildInputs = [qtmultimedia qtsvg qtwebsockets qtwebview mpv-unwrapped sonnet];
   meta.mainProgram = "tokodon";
 }
diff --git a/pkgs/kde/generated/dependencies.json b/pkgs/kde/generated/dependencies.json
index aed3f12814529..70f5499bfdbc0 100644
--- a/pkgs/kde/generated/dependencies.json
+++ b/pkgs/kde/generated/dependencies.json
@@ -18,7 +18,6 @@
       "kcrash",
       "ki18n",
       "kiconthemes",
-      "kio",
       "kitemmodels",
       "kwidgetsaddons",
       "kxmlgui"
@@ -70,6 +69,7 @@
     "akonadi-mime": [
       "akonadi",
       "extra-cmake-modules",
+      "kio",
       "kmime"
     ],
     "akonadi-notes": [
@@ -144,6 +144,7 @@
       "ki18n",
       "kirigami",
       "kirigami-addons",
+      "qqc2-desktop-style",
       "syndication"
     ],
     "alpaka": [
@@ -275,6 +276,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kiconthemes",
@@ -509,7 +511,6 @@
       "knotifyconfig",
       "kparts",
       "ktextwidgets",
-      "kwallet",
       "kwidgetsaddons",
       "kwindowsystem",
       "kxmlgui",
@@ -704,6 +705,7 @@
     "dolphin-plugins": [
       "dolphin",
       "extra-cmake-modules",
+      "kconfig",
       "kcoreaddons",
       "ki18n",
       "kio",
@@ -769,6 +771,7 @@
       "kiconthemes",
       "kio",
       "kirigami",
+      "kirigami-addons",
       "kxmlgui",
       "qqc2-desktop-style"
     ],
@@ -812,7 +815,8 @@
       "kcoreaddons",
       "kdbusaddons",
       "ki18n",
-      "kirigami"
+      "kirigami",
+      "kirigami-addons"
     ],
     "filelight": [
       "extra-cmake-modules",
@@ -875,15 +879,6 @@
       "kxmlgui",
       "sonnet"
     ],
-    "glaxnimate": [
-      "extra-cmake-modules",
-      "karchive",
-      "kcompletion",
-      "kconfigwidgets",
-      "kcoreaddons",
-      "kcrash",
-      "kxmlgui"
-    ],
     "granatier": [
       "extra-cmake-modules",
       "kconfig",
@@ -952,7 +947,20 @@
       "kiconthemes",
       "kio",
       "kirigami",
-      "mpvqt"
+      "mpvqt",
+      "qqc2-desktop-style"
+    ],
+    "hash-o-matic": [
+      "extra-cmake-modules",
+      "kcolorscheme",
+      "kconfig",
+      "kcoreaddons",
+      "kdbusaddons",
+      "ki18n",
+      "kirigami",
+      "kwindowsystem",
+      "libkleo",
+      "qqc2-desktop-style"
     ],
     "heaptrack": [
       "extra-cmake-modules",
@@ -1117,6 +1125,14 @@
       "libkdepim",
       "pimcommon"
     ],
+    "kaidan": [
+      "extra-cmake-modules",
+      "kcoreaddons",
+      "kio",
+      "kirigami",
+      "kirigami-addons",
+      "kquickimageeditor"
+    ],
     "kajongg": [
       "extra-cmake-modules",
       "kdoctools",
@@ -1183,7 +1199,8 @@
       "kcrash",
       "ki18n",
       "kirigami",
-      "kirigami-addons"
+      "kirigami-addons",
+      "qqc2-desktop-style"
     ],
     "kalternatives": [
       "extra-cmake-modules",
@@ -1281,6 +1298,7 @@
       "ki18n",
       "kirigami",
       "kirigami-addons",
+      "qqc2-desktop-style",
       "qtkeychain",
       "syndication",
       "threadweaver"
@@ -2113,11 +2131,13 @@
       "ki18n",
       "kirigami",
       "kwidgetsaddons",
-      "kwindowsystem"
+      "kwindowsystem",
+      "qqc2-desktop-style"
     ],
     "kfilemetadata": [
       "extra-cmake-modules",
       "karchive",
+      "kcodecs",
       "kcoreaddons",
       "ki18n",
       "poppler",
@@ -2150,6 +2170,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdnssd",
       "kdoctools",
       "ki18n",
@@ -2332,6 +2353,7 @@
       "extra-cmake-modules"
     ],
     "kiconthemes": [
+      "breeze-icons",
       "extra-cmake-modules",
       "karchive",
       "kcolorscheme",
@@ -2574,6 +2596,7 @@
     ],
     "kirigami-addons": [
       "extra-cmake-modules",
+      "kconfig",
       "ki18n",
       "kirigami"
     ],
@@ -2898,7 +2921,6 @@
       "extra-cmake-modules",
       "kconfig",
       "kconfigwidgets",
-      "kcrash",
       "kdbusaddons",
       "kdoctools",
       "kglobalaccel",
@@ -3419,7 +3441,6 @@
       "kiconthemes",
       "kio",
       "ktextaddons",
-      "ktexttemplate",
       "kwidgetsaddons",
       "kxmlgui",
       "sonnet",
@@ -3496,8 +3517,7 @@
       "kcoreaddons",
       "ki18n",
       "kirigami",
-      "kirigami-addons",
-      "kwindowsystem"
+      "kirigami-addons"
     ],
     "kregexpeditor": [
       "extra-cmake-modules",
@@ -3506,7 +3526,6 @@
       "kdoctools",
       "ki18n",
       "kiconthemes",
-      "kservice",
       "ktextwidgets",
       "kwidgetsaddons",
       "kxmlgui"
@@ -3555,7 +3574,6 @@
       "extra-cmake-modules",
       "kconfig",
       "kcoreaddons",
-      "kcrash",
       "kdbusaddons",
       "kdnssd",
       "kdoctools",
@@ -3633,7 +3651,6 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kdbusaddons",
-      "kglobalaccel",
       "ki18n",
       "kpackage",
       "kservice",
@@ -3698,6 +3715,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kio",
@@ -3761,6 +3779,20 @@
       "kwallet",
       "kwidgetsaddons"
     ],
+    "kstars": [
+      "breeze-icons",
+      "extra-cmake-modules",
+      "kconfig",
+      "kcrash",
+      "kdoctools",
+      "kguiaddons",
+      "ki18n",
+      "knewstuff",
+      "knotifications",
+      "knotifyconfig",
+      "kplotting",
+      "kxmlgui"
+    ],
     "kstatusnotifieritem": [
       "extra-cmake-modules",
       "kwindowsystem"
@@ -3772,6 +3804,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "kguiaddons",
       "ki18n",
@@ -3988,6 +4021,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kwidgetsaddons",
@@ -4054,6 +4088,7 @@
       "kdoctools",
       "ki18n",
       "kio",
+      "kservice",
       "kstatusnotifieritem",
       "kwallet",
       "kwidgetsaddons",
@@ -4198,7 +4233,8 @@
       "ktexteditor",
       "kuserfeedback",
       "kwidgetsaddons",
-      "kxmlgui"
+      "kxmlgui",
+      "purpose"
     ],
     "latte-dock": [
       "extra-cmake-modules",
@@ -4339,21 +4375,12 @@
     "libksysguard": [
       "extra-cmake-modules",
       "kauth",
-      "kcodecs",
-      "kcompletion",
       "kconfig",
-      "kconfigwidgets",
       "kcoreaddons",
-      "kglobalaccel",
       "ki18n",
-      "kiconthemes",
-      "kio",
-      "kjobwidgets",
       "knewstuff",
       "kpackage",
       "kservice",
-      "kwidgetsaddons",
-      "kwindowsystem",
       "solid"
     ],
     "libktorrent": [
@@ -4426,6 +4453,7 @@
       "kconfig",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "kguiaddons",
       "ki18n",
@@ -4469,10 +4497,13 @@
     ],
     "marknote": [
       "extra-cmake-modules",
+      "kcolorscheme",
       "kconfig",
       "kcoreaddons",
       "ki18n",
-      "kirigami"
+      "kirigami",
+      "kirigami-addons",
+      "kxmlgui"
     ],
     "massif-visualizer": [
       "extra-cmake-modules",
@@ -4598,6 +4629,7 @@
     ],
     "milou": [
       "extra-cmake-modules",
+      "kconfig",
       "ki18n",
       "krunner",
       "libplasma"
@@ -4629,6 +4661,7 @@
       "kcolorscheme",
       "kconfig",
       "kcoreaddons",
+      "kcrash",
       "kdbusaddons",
       "ki18n",
       "kio",
@@ -4642,6 +4675,7 @@
       "kwindowsystem",
       "libquotient",
       "prison",
+      "purpose",
       "qcoro",
       "qqc2-desktop-style",
       "qtkeychain",
@@ -4687,12 +4721,15 @@
       "breeze-icons",
       "karchive",
       "kbookmarks",
+      "kcolorscheme",
       "kdegraphics-mobipocket",
       "ki18n",
       "kio",
+      "kitemviews",
       "kparts",
       "kpty",
       "ktextwidgets",
+      "kwidgetsaddons",
       "kxmlgui",
       "libkexiv2",
       "phonon",
@@ -4700,6 +4737,15 @@
       "purpose",
       "threadweaver"
     ],
+    "optiimage": [
+      "extra-cmake-modules",
+      "kcoreaddons",
+      "ki18n",
+      "kio",
+      "kirigami",
+      "kirigami-addons",
+      "qqc2-desktop-style"
+    ],
     "oxygen": [
       "extra-cmake-modules",
       "frameworkintegration",
@@ -4731,6 +4777,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kio",
@@ -5210,18 +5257,11 @@
     ],
     "plasma-settings": [
       "extra-cmake-modules",
-      "kauth",
-      "kconfig",
+      "kcmutils",
       "kcoreaddons",
       "kdbusaddons",
       "ki18n",
-      "kio",
-      "kirigami-addons",
-      "kservice",
-      "libplasma",
-      "modemmanager-qt",
-      "networkmanager-qt",
-      "solid"
+      "kirigami-addons"
     ],
     "plasma-simplemenu": [
       "extra-cmake-modules",
@@ -5389,6 +5429,7 @@
       "kitemmodels",
       "mpvqt",
       "purpose",
+      "qqc2-desktop-style",
       "qtkeychain"
     ],
     "plymouth-kcm": [
@@ -5486,6 +5527,14 @@
       "kirigami",
       "kservice"
     ],
+    "pvfviewer": [
+      "extra-cmake-modules",
+      "kdoctools",
+      "ki18n",
+      "kio",
+      "kwidgetsaddons",
+      "kxmlgui"
+    ],
     "qmlkonsole": [
       "extra-cmake-modules",
       "kconfig",
@@ -5549,6 +5598,21 @@
       "messagelib",
       "pimcommon"
     ],
+    "rkward": [
+      "extra-cmake-modules",
+      "karchive",
+      "kconfig",
+      "kcoreaddons",
+      "kcrash",
+      "kdoctools",
+      "ki18n",
+      "knotifications",
+      "kparts",
+      "ktexteditor",
+      "kwidgetsaddons",
+      "kwindowsystem",
+      "kxmlgui"
+    ],
     "rocs": [
       "extra-cmake-modules",
       "karchive",
@@ -5606,7 +5670,6 @@
       "prison",
       "purpose",
       "qtkeychain",
-      "selenium-webdriver-at-spi",
       "sonnet",
       "syntax-highlighting"
     ],
@@ -5634,7 +5697,6 @@
       "extra-cmake-modules",
       "kpipewire",
       "kwayland",
-      "kwin",
       "kwindowsystem",
       "wayland"
     ],
@@ -5663,6 +5725,20 @@
       "kxmlgui",
       "purpose"
     ],
+    "skladnik": [
+      "extra-cmake-modules",
+      "kconfig",
+      "kconfigwidgets",
+      "kcoreaddons",
+      "kcrash",
+      "kdbusaddons",
+      "kdoctools",
+      "ki18n",
+      "kio",
+      "kwidgetsaddons",
+      "kxmlgui",
+      "libkdegames"
+    ],
     "skrooge": [
       "extra-cmake-modules",
       "karchive",
@@ -5758,7 +5834,8 @@
       "kxmlgui",
       "layer-shell-qt",
       "purpose",
-      "wayland"
+      "wayland",
+      "zxing-cpp"
     ],
     "step": [
       "extra-cmake-modules",
@@ -5859,8 +5936,8 @@
     ],
     "tellico": [
       "extra-cmake-modules",
-      "kcoreaddons",
-      "kcrash",
+      "kconfig",
+      "kconfigwidgets",
       "kdoctools",
       "kfilemetadata",
       "ki18n",
@@ -5868,9 +5945,7 @@
       "kio",
       "kitemmodels",
       "knewstuff",
-      "kparts",
-      "ktexteditor",
-      "kxmlgui",
+      "kwidgetsaddons",
       "libkcddb",
       "libksane"
     ],
@@ -5881,7 +5956,8 @@
       "kcrash",
       "ki18n",
       "kirigami",
-      "kirigami-addons"
+      "kirigami-addons",
+      "qqc2-desktop-style"
     ],
     "threadweaver": [
       "extra-cmake-modules"
@@ -6070,5 +6146,5 @@
       "kwindowsystem"
     ]
   },
-  "version": "c03e6379"
+  "version": "525ad8d3"
 }
\ No newline at end of file
diff --git a/pkgs/kde/generated/projects.json b/pkgs/kde/generated/projects.json
index 8986f2db0823f..d798654c27d8e 100644
--- a/pkgs/kde/generated/projects.json
+++ b/pkgs/kde/generated/projects.json
@@ -1058,7 +1058,7 @@
   "glaxnimate": {
     "description": "Simple vector animation program.",
     "name": "glaxnimate",
-    "project_path": "playground/graphics/glaxnimate",
+    "project_path": "kdereview/glaxnimate",
     "repo_path": "graphics/glaxnimate"
   },
   "gluon": {
@@ -1920,7 +1920,7 @@
     "repo_path": "unmaintained/kdenetwork-strigi-analyzers"
   },
   "kdenlive": {
-    "description": "Free and open source video editor, based on MLT Framework and KDE Frameworks 5",
+    "description": "Free and open source video editor, based on MLT Framework and KDE Frameworks",
     "name": "kdenlive",
     "project_path": "kde/kdemultimedia/kdenlive",
     "repo_path": "multimedia/kdenlive"
@@ -2808,9 +2808,9 @@
     "repo_path": "education/klettres"
   },
   "klevernotes": {
-    "description": "A convergent markdown note taking application.",
+    "description": "A note-taking and management application using markdown.",
     "name": "klevernotes",
-    "project_path": "playground/office/klevernotes",
+    "project_path": "kdereview/klevernotes",
     "repo_path": "office/klevernotes"
   },
   "klickety": {
@@ -7037,6 +7037,12 @@
     "project_path": "websites/discover-kde-org",
     "repo_path": "websites/discover-kde-org"
   },
+  "websites-docs-glaxnimate-org": {
+    "description": "Documentation website for Glaxnimate \u2014 docs.glaxnimate.org",
+    "name": "websites-docs-glaxnimate-org",
+    "project_path": "websites/docs-glaxnimate-org",
+    "repo_path": "websites/docs-glaxnimate-org"
+  },
   "websites-docs-kde-org": {
     "description": "Scripts and other materials needed to support and operate docs.kde.org",
     "name": "websites-docs-kde-org",
@@ -7163,11 +7169,11 @@
     "project_path": "websites/ghostwriter-kde-org",
     "repo_path": "websites/ghostwriter-kde-org"
   },
-  "websites-glaxnimate-kde-org": {
-    "description": "Website for Glaxnimate \u2014 glaxnimate.kde.org",
-    "name": "websites-glaxnimate-kde-org",
-    "project_path": "websites/glaxnimate-kde-org",
-    "repo_path": "websites/glaxnimate-kde-org"
+  "websites-glaxnimate-org": {
+    "description": "Website for Glaxnimate \u2014 glaxnimate.org",
+    "name": "websites-glaxnimate-org",
+    "project_path": "websites/glaxnimate-org",
+    "repo_path": "websites/glaxnimate-org"
   },
   "websites-go-kde-org": {
     "description": "Data for the KDE Short URL Redirector Service - go.kde.org",
diff --git a/pkgs/kde/generated/sources/frameworks.json b/pkgs/kde/generated/sources/frameworks.json
index a2b93aa050548..3096bec16988b 100644
--- a/pkgs/kde/generated/sources/frameworks.json
+++ b/pkgs/kde/generated/sources/frameworks.json
@@ -1,362 +1,362 @@
 {
   "attica": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/attica-6.1.0.tar.xz",
-    "hash": "sha256-iz3KyaZ1Op0PeAeCww82ne0/UxxHjpXKHBlThK19taA="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/attica-6.2.0.tar.xz",
+    "hash": "sha256-J1+wCz9INwTYAEhIg6N4l5ejGYsM5oDYUxPZl3/94vA="
   },
   "baloo": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/baloo-6.1.0.tar.xz",
-    "hash": "sha256-VNghxNwSGRs/GutedTwQeMi7RvFRXQIEZ3Bdf3xZzKo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/baloo-6.2.0.tar.xz",
+    "hash": "sha256-HqQTudutp9Bkah+Nw/BoiSjCZuY4hSjP0F1MB5p+Iqg="
   },
   "bluez-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/bluez-qt-6.1.0.tar.xz",
-    "hash": "sha256-+UJO8V4H+BdPBpEa9GFqBt2Ird2pdflU+W6qqHHNjrs="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/bluez-qt-6.2.0.tar.xz",
+    "hash": "sha256-lkh09OS0z6Y6lAy9CsIb0NxPwGwU/3qNtU+YEZv4tDA="
   },
   "breeze-icons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/breeze-icons-6.1.0.tar.xz",
-    "hash": "sha256-sbqALQ0NvQ7NeGy9+q9UXy3TwheWa4lLkyGioYQmoWo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/breeze-icons-6.2.0.tar.xz",
+    "hash": "sha256-31o7FQdo3Vx4Gmw9GEjXn0sOsvMn4kjFQmoSNKpME1s="
   },
   "extra-cmake-modules": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/extra-cmake-modules-6.1.0.tar.xz",
-    "hash": "sha256-dsnt8AgH5s+NSuNfUZW0vD/pRkjZdv71Mr9/l9hjiL0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/extra-cmake-modules-6.2.0.tar.xz",
+    "hash": "sha256-Y3S/oN3ti+JlxwKs1d4R7s0oUcYluT4ch9jQ9fGo6+E="
   },
   "frameworkintegration": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/frameworkintegration-6.1.0.tar.xz",
-    "hash": "sha256-R7s4p3i5RAW9niUb53S6kQwrhc1qRRK6H26bb4eRROg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/frameworkintegration-6.2.0.tar.xz",
+    "hash": "sha256-5B9ksXitna3K1RsUW9WAhoq6Bh+4D/FWFCaNCexODXw="
   },
   "kapidox": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kapidox-6.1.0.tar.xz",
-    "hash": "sha256-sSnxafopk6yomOcmGdPbr6Owfom/9L08unNh3QS8XBU="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kapidox-6.2.0.tar.xz",
+    "hash": "sha256-A6zTkjMxrztOTsJ9MlNfow1lg9LQhh/SgqtjgiOYdas="
   },
   "karchive": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/karchive-6.1.0.tar.xz",
-    "hash": "sha256-V2xxM8+5lLUwvXN3AwuSa9oieqKuQg1dhTjyaBkm+Cw="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/karchive-6.2.0.tar.xz",
+    "hash": "sha256-FDXgnmS/TPJ87r/HZYLkTbnTexRT5Vru4Jd4vM/ZqLI="
   },
   "kauth": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kauth-6.1.0.tar.xz",
-    "hash": "sha256-R+eAQCCAUJjMmrNwtsU5mRuwKAQfqvWmGat8srmS8Is="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kauth-6.2.0.tar.xz",
+    "hash": "sha256-NRHZ2FfA9pYrAFs4HsXi/vne1ZJE2hTjHdBnPgWmmwo="
   },
   "kbookmarks": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kbookmarks-6.1.0.tar.xz",
-    "hash": "sha256-t2NWMhfB4+hINLS3d5iRxFEuj9J8srU68Aoqt2EtR0c="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kbookmarks-6.2.0.tar.xz",
+    "hash": "sha256-GvDWvnxDyxe8movaRkw3K58n+Z083zvpXsXyTjQ2jvs="
   },
   "kcalendarcore": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcalendarcore-6.1.0.tar.xz",
-    "hash": "sha256-HP/vMqQHa3nCZwXhIEP8t2y7/K74wSDvQLhYzESiE5s="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcalendarcore-6.2.0.tar.xz",
+    "hash": "sha256-o+J3wBNqWd5jWmWfcRnXNoUsL/9QCy9f1Dn2kGbz8gk="
   },
   "kcmutils": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcmutils-6.1.0.tar.xz",
-    "hash": "sha256-PRebmormY26jNR5b4EFKNJkaeh9RTqSS0ki2gxXsKoY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcmutils-6.2.0.tar.xz",
+    "hash": "sha256-jO8UDKnqvynoighInHmQeOhSR5B/1vdBZa6v1O1AwLs="
   },
   "kcodecs": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcodecs-6.1.0.tar.xz",
-    "hash": "sha256-8fAHWVWy3WE7XF95mYROofngoJ/z8ssjBlOunL2EOBY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcodecs-6.2.0.tar.xz",
+    "hash": "sha256-0ED7A1EMqQlC5UMjsa/SbsANRZsbLFTm7u7OUWaELy8="
   },
   "kcolorscheme": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcolorscheme-6.1.0.tar.xz",
-    "hash": "sha256-wwqofzpgaAfEBo2rAIA5K9ykn4++8YVT4afeD3xbA2o="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcolorscheme-6.2.0.tar.xz",
+    "hash": "sha256-CZDBcsWxKZa3wL48LlNTDO9l6vdtGShUzyB4cvupXxs="
   },
   "kcompletion": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcompletion-6.1.0.tar.xz",
-    "hash": "sha256-4eC+vh7diL6gi7D0eEbSNiTjRIbfnDozgGl/xBGEScg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcompletion-6.2.0.tar.xz",
+    "hash": "sha256-WMuTjrER6IWd0bqlEGJGfyJrjGfLH9uYdI0+l/q/COk="
   },
   "kconfig": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kconfig-6.1.0.tar.xz",
-    "hash": "sha256-L9pfJb6sUmCnDz9ikUS1wim/NSyuIIiT7USpcyxtyvc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kconfig-6.2.0.tar.xz",
+    "hash": "sha256-JRK8A2/EDNwjNFy/gDeFPHr9yTt/gVKFR6RR4PjEKek="
   },
   "kconfigwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kconfigwidgets-6.1.0.tar.xz",
-    "hash": "sha256-CyUrLnlv9vBelKuSEw/nOeT+aYwiMjC+k2tXnp350XE="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kconfigwidgets-6.2.0.tar.xz",
+    "hash": "sha256-O15yxuVee50LPr7g/os5wJjdB6Vt452hVWiRkl632WM="
   },
   "kcontacts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcontacts-6.1.0.tar.xz",
-    "hash": "sha256-vtC+W4MCz010kSAjTJjQ3GKdoEoBI2lBOGgaAiGEJk4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcontacts-6.2.0.tar.xz",
+    "hash": "sha256-cJyhnpB2+YdRdk0Cm41kjGphsXJiukghz5f5E8y9G/k="
   },
   "kcoreaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcoreaddons-6.1.0.tar.xz",
-    "hash": "sha256-dgjvmiSDsoo6+CowJAVM2zxYzx/fvXkaAvcO/IDqM0M="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcoreaddons-6.2.0.tar.xz",
+    "hash": "sha256-P5g2o85ecog78DJYe3Rc5VQ1qnYnF0V50uAY2nFzOO0="
   },
   "kcrash": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcrash-6.1.0.tar.xz",
-    "hash": "sha256-cn+C6XZ8L2R7fua9edUevUBpEnEyDct4NaMM+IBkee0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcrash-6.2.0.tar.xz",
+    "hash": "sha256-ALe0iFyyqS6DKBbpzB2oz1zMxMRILBNkjwIJiMhs9Yg="
   },
   "kdav": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdav-6.1.0.tar.xz",
-    "hash": "sha256-ZETT6lgdUU+4KvlC0JKwvAYToayi+iMTqQAC0UhZTCs="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdav-6.2.0.tar.xz",
+    "hash": "sha256-8YJ4z8creo7tSKTUR+rgfkMdFCmNvPWbpFu5NihsZOE="
   },
   "kdbusaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdbusaddons-6.1.0.tar.xz",
-    "hash": "sha256-tCOkyh/KuXO5RUOG77r13CxkLSHukSXXO4/Gf4BGNUE="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdbusaddons-6.2.0.tar.xz",
+    "hash": "sha256-vKDfP8c2Hv/Pgf+3ldj/YuIYnqlnJJLWsmweAUT+3Wc="
   },
   "kdeclarative": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdeclarative-6.1.0.tar.xz",
-    "hash": "sha256-+UE41i4XNVgS83YTqpNvrS5RQP5PCankLk2b+piBxwI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdeclarative-6.2.0.tar.xz",
+    "hash": "sha256-qFw/FZnSKfBS7jeG6QQazlUQyZhEyO/Hv8ndrtGTbYQ="
   },
   "kded": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kded-6.1.0.tar.xz",
-    "hash": "sha256-sY0O8jaZXBnakm5bo/JIaJhQ/95mDrhrGKto6HsRm6E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kded-6.2.0.tar.xz",
+    "hash": "sha256-ym1pcbZhtRQu3mq5oay+JNQIXvvJ8TmIwXlkmxJhq08="
   },
   "kdesu": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdesu-6.1.0.tar.xz",
-    "hash": "sha256-pqOX4IzNNTfcmxMp6MwfBcpqzz2cGDluQRjlFEa6gn4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdesu-6.2.0.tar.xz",
+    "hash": "sha256-fGEv6kidnj49PJDKsNMU2YSGvcBgFKYPYJ/f8hUFgi8="
   },
   "kdnssd": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdnssd-6.1.0.tar.xz",
-    "hash": "sha256-O5gfemnyZe0zE0b1bUAw0xu98dk29iwnbH4zOztntxI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdnssd-6.2.0.tar.xz",
+    "hash": "sha256-UJARNnwRw7FwNNdD6mk0lRpvxSW5Un0Yw4r4H2Cwj0U="
   },
   "kdoctools": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdoctools-6.1.0.tar.xz",
-    "hash": "sha256-JAJUrbtSGEpXEHIGi/UEu8NXnrmBGYPGo3lVYyYO87U="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdoctools-6.2.0.tar.xz",
+    "hash": "sha256-7POFVuxfnZnuLOssKHJ/TIA0IhfLabmqlFpvcC3D/08="
   },
   "kfilemetadata": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kfilemetadata-6.1.0.tar.xz",
-    "hash": "sha256-1Sp4LFTq5doykSyodvGXX7fkv/4cseFyJtg2FKs7sco="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kfilemetadata-6.2.0.tar.xz",
+    "hash": "sha256-EGlBZUAkthZdo/rCYi++vTX/CfCDRa2TorLBq/oXfjA="
   },
   "kglobalaccel": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kglobalaccel-6.1.0.tar.xz",
-    "hash": "sha256-iFsT04iO6+WFWJ3CiOOCYESrW/O44qdJuQcNk9MvZPI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kglobalaccel-6.2.0.tar.xz",
+    "hash": "sha256-x0cn/vSjloDjbF7SfNtMW3VQQ3lfpSd07jvGo7Vo5yQ="
   },
   "kguiaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kguiaddons-6.1.0.tar.xz",
-    "hash": "sha256-CNiEUq5LzcBziRSZ2bQUEpzcWYK9O62Icm2+8o7lrFM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kguiaddons-6.2.0.tar.xz",
+    "hash": "sha256-ulpeQtW5uUSGQZJjg2B0Qp/T+s/DZP1OOimlS8beXds="
   },
   "kholidays": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kholidays-6.1.0.tar.xz",
-    "hash": "sha256-g2YVWatXcM1WGQLuuBvlFxkiQ1tTnZf0vBcnfaS5cwo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kholidays-6.2.0.tar.xz",
+    "hash": "sha256-nXqAUofgQoHdWbjMsTAkBqkv4JQeJzysHHJO9hJfrCk="
   },
   "ki18n": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ki18n-6.1.0.tar.xz",
-    "hash": "sha256-FjIZ8bXJ3qeq6m3cSg0oqLnhiE0jnPVjPmhMIUhRdkg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ki18n-6.2.0.tar.xz",
+    "hash": "sha256-iqj0dA2wgPTwws6I0PKJdA1VyqBrf3a/IWPQ+5/TZg8="
   },
   "kiconthemes": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kiconthemes-6.1.0.tar.xz",
-    "hash": "sha256-ec53cB1BlHluLCVQCPGQcUYKoD/yCKIRf8TkyTEMNAI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kiconthemes-6.2.0.tar.xz",
+    "hash": "sha256-wP/mX1P1m3W/BDLE9X99NraEDIf4Dp6luIzrcaKLVkU="
   },
   "kidletime": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kidletime-6.1.0.tar.xz",
-    "hash": "sha256-yNhcEp/S6VIL7DqpZwRJtOos8JIGClT9sky6Y0dfrzo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kidletime-6.2.0.tar.xz",
+    "hash": "sha256-BpGC5Kv7g/k2YdW7Dq6xS0TjcF+jSS29uOwDv+bj2dw="
   },
   "kimageformats": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kimageformats-6.1.0.tar.xz",
-    "hash": "sha256-sDP6BYq0yWV+G81oKonKlKW4geeQTd3uaqtKFLr8yV4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kimageformats-6.2.0.tar.xz",
+    "hash": "sha256-mEQhkYXwP+eZCurm/7ql9FKw9sUFPIcovIfpdoJkNWE="
   },
   "kio": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kio-6.1.0.tar.xz",
-    "hash": "sha256-R8sAJYyjj5we4qp5KfWxK8fZnLWA2lYK2nEFD6CJ/9I="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kio-6.2.0.tar.xz",
+    "hash": "sha256-Mx1v9rnLsOZSGl0HRrFSviWI/WMac9DiSbeM0s2mnM8="
   },
   "kirigami": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kirigami-6.1.0.tar.xz",
-    "hash": "sha256-KlQ4GGts+IR6V5wDD+03eGOOX7Tl61T3HcJgLaRgcZY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kirigami-6.2.0.tar.xz",
+    "hash": "sha256-VyRbUY1kxGr6tCoaYZYJr7YOVGAzoWK3GMdSuINQtAw="
   },
   "kitemmodels": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kitemmodels-6.1.0.tar.xz",
-    "hash": "sha256-UWfTKvab8A9slTHIlRPVS//hbt00qelI77SekjXj4wI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kitemmodels-6.2.0.tar.xz",
+    "hash": "sha256-wGaIgxMmDXWiB5OTNLBWtAFLpzZLQ3MlVheQ63s3Qro="
   },
   "kitemviews": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kitemviews-6.1.0.tar.xz",
-    "hash": "sha256-6ehsKqSSeMOJWbGAT+HGwgV/PpvolgkfiY+4FpKyCk0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kitemviews-6.2.0.tar.xz",
+    "hash": "sha256-c2LZiT0emoY0glc+z8Or3djGNFEtihiE8JSl9UOvSik="
   },
   "kjobwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kjobwidgets-6.1.0.tar.xz",
-    "hash": "sha256-rHndtIs4UnpgWpVkSFrTcMvP20BrleD5JV1VJWRU/bg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kjobwidgets-6.2.0.tar.xz",
+    "hash": "sha256-L7dgLyu6gYvP/+GtExDXkAiJ4Q5T44S4dClfs1k/s6E="
   },
   "knewstuff": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knewstuff-6.1.0.tar.xz",
-    "hash": "sha256-HGoHZBBTgIQCHP8e6wK+LzQoAoRxejQpDUKxHf47PT8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knewstuff-6.2.0.tar.xz",
+    "hash": "sha256-9UlidWuOuYxnhANSoe/qRpjxWhfUvIKC9lrbDbCMV4A="
   },
   "knotifications": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knotifications-6.1.0.tar.xz",
-    "hash": "sha256-AvNvS8HS0QlOGwIDo04DfOx4MDxqrZ1p+ayMc4is/Ks="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knotifications-6.2.0.tar.xz",
+    "hash": "sha256-lifCAPWN5eXcTnTRoTAFYkEVttI9oDTmSqG/MUPngWQ="
   },
   "knotifyconfig": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knotifyconfig-6.1.0.tar.xz",
-    "hash": "sha256-3+haRVAEcKMG3zF29mWvJYlSHvUJBhLnqC7GGOBh/oc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knotifyconfig-6.2.0.tar.xz",
+    "hash": "sha256-tb/sRYK8IvDIfHD90loF4UX9/l5KYKlj9RJXHgPTfMw="
   },
   "kpackage": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpackage-6.1.0.tar.xz",
-    "hash": "sha256-7XWRK0FlgKT5rNvt7jHlkLGX4VfNod6hOtKHURFrUq8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpackage-6.2.0.tar.xz",
+    "hash": "sha256-eMhGbXIB8qpoCdmFiCQq72MUvkpHFVYXxSnGoFSfOV0="
   },
   "kparts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kparts-6.1.0.tar.xz",
-    "hash": "sha256-38on49T+f6cDjLrT06CpVcVwvXO1vArOs5AOBxSVEB0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kparts-6.2.0.tar.xz",
+    "hash": "sha256-BPcIKavHAzMn9C5eXuE2X026mWixhPNCEsVIbjapvrE="
   },
   "kpeople": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpeople-6.1.0.tar.xz",
-    "hash": "sha256-pfouLmexqa1l7JWpUgGvKOINxGLp0xAHA0rU2leOHWI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpeople-6.2.0.tar.xz",
+    "hash": "sha256-P1+qSO3h5H7j43R+8K3y8dgyDb76jw7G63X9L0q0WDc="
   },
   "kplotting": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kplotting-6.1.0.tar.xz",
-    "hash": "sha256-uyExlyWyA4KkSpvi1wx2petY5sgM8otvMU9J6ctzsfo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kplotting-6.2.0.tar.xz",
+    "hash": "sha256-zdx+leM3a+FiGjR/bp/6iK14e0haomx+AmM2wFJ3wW0="
   },
   "kpty": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpty-6.1.0.tar.xz",
-    "hash": "sha256-3yJs2Qum93NWBATHmVYrJ2StOdT0HxUQXy7Z+bLPWd8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpty-6.2.0.tar.xz",
+    "hash": "sha256-92g+i1zV271CV+jVrNJuWGhaO8PxYdwP4Q9ToHUkAmQ="
   },
   "kquickcharts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kquickcharts-6.1.0.tar.xz",
-    "hash": "sha256-dhtXOP8aG7H+aPBCfiiI4lyQG2+tRAFnY4biegbjpMc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kquickcharts-6.2.0.tar.xz",
+    "hash": "sha256-/dlr9CGKMJvihSOsMYvXgW6L0f6/DncbEzWc1ljGdWs="
   },
   "krunner": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/krunner-6.1.0.tar.xz",
-    "hash": "sha256-+qIfmQ2YhmWe1Ex1PM+Nd86wfflOhMAYk/k7COBnYNQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/krunner-6.2.0.tar.xz",
+    "hash": "sha256-8Y8VeP+MdsRVg3pLyaPnEnO7pKxUr9JOFDqdwgcGBB8="
   },
   "kservice": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kservice-6.1.0.tar.xz",
-    "hash": "sha256-7i7n/eLEeVWJCHb4kKDRZ5LymwzHT9KWzKsVPYtc54E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kservice-6.2.0.tar.xz",
+    "hash": "sha256-BkbJIZwNfZojcbkNxCfryGzzCtr8sitFjxMPAR3iiII="
   },
   "kstatusnotifieritem": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kstatusnotifieritem-6.1.0.tar.xz",
-    "hash": "sha256-k+LJyqcNTM6AWapsuB5bFh1AVwHbGE3f+BMD+iT97xQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kstatusnotifieritem-6.2.0.tar.xz",
+    "hash": "sha256-BLn8CQW2FK/I4K/PVFEBjSoSbxZSIbbbIOQXG+L7H88="
   },
   "ksvg": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ksvg-6.1.0.tar.xz",
-    "hash": "sha256-KGqOHshnjXYZYKPNK0wOncg3716bY5a8jXaw/rcba18="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ksvg-6.2.0.tar.xz",
+    "hash": "sha256-Vom/ncPvqyn92uoK8AquyMqDI+ZQT0kMO7O0eoLrdvM="
   },
   "ktexteditor": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktexteditor-6.1.0.tar.xz",
-    "hash": "sha256-O6GPQe9eV/6GjcKV0BhS0xsVkMC+iTrJfO7ZIpsJqd8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktexteditor-6.2.0.tar.xz",
+    "hash": "sha256-wQpeTMkhrrUbF+l9TymIOrGGtj0QgZnmoxlECjnx8qA="
   },
   "ktexttemplate": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktexttemplate-6.1.0.tar.xz",
-    "hash": "sha256-Iib5RyrdGWr9W4t1uVOkLYJJMWQ37QYNAkRid34t83E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktexttemplate-6.2.0.tar.xz",
+    "hash": "sha256-pZsObjrLlHN7gur6xH0UclJVxsbyHCNxzPnswQYs8so="
   },
   "ktextwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktextwidgets-6.1.0.tar.xz",
-    "hash": "sha256-cs1EchySCcwXvz6OHcy6gjvL6BVqo3AgXFzh/3RrZVM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktextwidgets-6.2.0.tar.xz",
+    "hash": "sha256-RpNow0EmWGXiViq20751TbloligL3KkME0EnsVAate0="
   },
   "kunitconversion": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kunitconversion-6.1.0.tar.xz",
-    "hash": "sha256-323m8tQbOUOzHM7AUQE8sNT8bpl5qOUjLmQ245CzMew="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kunitconversion-6.2.0.tar.xz",
+    "hash": "sha256-5e1gV4ukw3hqEJzh+y5LNuSCWnkzjErKHd3JpJMAboA="
   },
   "kuserfeedback": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kuserfeedback-6.1.0.tar.xz",
-    "hash": "sha256-zfpG/QJ3PyWCDVqAF9bKl0bRBUz0TjrjP/9pHrJmvF8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kuserfeedback-6.2.0.tar.xz",
+    "hash": "sha256-gpxS2xXWm5Dm0isI3qze3NE0I8kB5Nq2OJPoFLTnaFg="
   },
   "kwallet": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwallet-6.1.0.tar.xz",
-    "hash": "sha256-z5Ktu9/nZDpOD5Oo0ilib7hZ/pA9C0tYQa0RQXW4RhM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwallet-6.2.0.tar.xz",
+    "hash": "sha256-LlgRmmRCywDjAU8BY26HIzfP82LsHvEgyvK6AYE70sE="
   },
   "kwidgetsaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwidgetsaddons-6.1.0.tar.xz",
-    "hash": "sha256-gSJdfsLW6nON7VX+QZeN62OcP3ei2q0OsuVCOqBG5M4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwidgetsaddons-6.2.0.tar.xz",
+    "hash": "sha256-A87y9mrsa397InbEfnIL2rk5sFt3twNF5/B2096tghE="
   },
   "kwindowsystem": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwindowsystem-6.1.0.tar.xz",
-    "hash": "sha256-jAdUOIOqo4sBUI8GtEOVWdiQdwAG+On26OdpxdQiZZU="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwindowsystem-6.2.0.tar.xz",
+    "hash": "sha256-D4+xK07qkmp/TPWeyF2VKXqMtn2Ak9xLGUtRocRnHYk="
   },
   "kxmlgui": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kxmlgui-6.1.0.tar.xz",
-    "hash": "sha256-glugKq3KvBzhOlWDKVyLEDbC8UvR+kayZDHtxEzGzw0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kxmlgui-6.2.0.tar.xz",
+    "hash": "sha256-/yKnn8onN+M8VGPYf60rRpIMjUjGWDJoqa4nCXqKyQI="
   },
   "modemmanager-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/modemmanager-qt-6.1.0.tar.xz",
-    "hash": "sha256-hTuu9b2BDIpk1MYPdI7xhCtzaOapUqL5PNSNhetfSXA="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/modemmanager-qt-6.2.0.tar.xz",
+    "hash": "sha256-89HbmsZKNTM0sHTkXNB/zktArBOIyWT4sml0bcNb7qg="
   },
   "networkmanager-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/networkmanager-qt-6.1.0.tar.xz",
-    "hash": "sha256-bkl5tfiJr8/0+MdBfig8Hbnk3zbKBii7Pr7wm2Kr0wI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/networkmanager-qt-6.2.0.tar.xz",
+    "hash": "sha256-e+Iqa7xYQ7GtoKFw+1bJyWvvZD19SFQT8q95KRTtAtI="
   },
   "prison": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/prison-6.1.0.tar.xz",
-    "hash": "sha256-FwhxB2mvGVPn88yhUNQ725YghWT4lHees5e2fPUmHvQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/prison-6.2.0.tar.xz",
+    "hash": "sha256-h3GWdcFlLwdzFJuN44T0BpSabWWr4lptNhHhENEtbKg="
   },
   "purpose": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/purpose-6.1.0.tar.xz",
-    "hash": "sha256-RhL/9M5RJ5ZCL0vePvqPX/Y/lri32S5I+H+WyJ4hGY4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/purpose-6.2.0.tar.xz",
+    "hash": "sha256-VbAtSTh7dvVOO+xI+CzXjzmLVAO8jRDUgr//fjCgAoo="
   },
   "qqc2-desktop-style": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/qqc2-desktop-style-6.1.0.tar.xz",
-    "hash": "sha256-6R2avPkWnso1fn3It/xQSjt+Xv8yT+qm/+zICR4WItk="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/qqc2-desktop-style-6.2.0.tar.xz",
+    "hash": "sha256-uO0nDZMKrQXq3x7FpUCHDxEo2Mco2GFsQIAdaYCGmxw="
   },
   "solid": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/solid-6.1.0.tar.xz",
-    "hash": "sha256-B0qYS1jvUQF+52dUi/zgygC7cQ6IpKsAvJAgpGz6QmI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/solid-6.2.0.tar.xz",
+    "hash": "sha256-ACoNKydZm+vHIVFmgdMnh2li/cr5lA8DNjT7k6T51yI="
   },
   "sonnet": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/sonnet-6.1.0.tar.xz",
-    "hash": "sha256-wTzrSCasT9AnuwhSSqczk82KoMZxmvi2MU0L0YCi6/4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/sonnet-6.2.0.tar.xz",
+    "hash": "sha256-hOcSrVa8lP+O/Jvd+rQfbDJxIbPd1pAw6UCsyRM2J+0="
   },
   "syndication": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/syndication-6.1.0.tar.xz",
-    "hash": "sha256-CdU5Si4wJMEYi+e2kDR7efwhQabRuDO8W0lL3MMvloM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/syndication-6.2.0.tar.xz",
+    "hash": "sha256-UOw4Q6COx7GFNSyUuJvC0nIM6vF+uWGkw9pV+T0Frzw="
   },
   "syntax-highlighting": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/syntax-highlighting-6.1.0.tar.xz",
-    "hash": "sha256-HnRJBSsOPpfWFdYVflZHlY6buY+l2PnF1pSCnF1nyrY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/syntax-highlighting-6.2.0.tar.xz",
+    "hash": "sha256-Mn7VjSDVJQK7/ZJ4+hyeerSoRhWeXPYw0J++oUTru38="
   },
   "threadweaver": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/threadweaver-6.1.0.tar.xz",
-    "hash": "sha256-3aXVUI1hcH60y9BE83HjRID/L0Q4GtxM0bcDz05Fjcg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/threadweaver-6.2.0.tar.xz",
+    "hash": "sha256-503i3wu1AUisyKYWH5gJmRrksjNLWKnuCSuh2CcEQzc="
   }
 }
\ No newline at end of file
diff --git a/pkgs/kde/lib/mk-kde-derivation.nix b/pkgs/kde/lib/mk-kde-derivation.nix
index 975d2e4af93ab..2a983782a4170 100644
--- a/pkgs/kde/lib/mk-kde-derivation.nix
+++ b/pkgs/kde/lib/mk-kde-derivation.nix
@@ -88,6 +88,20 @@ in
     # but cross is currently very broken anyway, so we can figure this out later.
     deps = map (dep: self.${dep}) filteredDepNames;
 
+    traceDuplicateDeps = attrName: attrValue:
+      let
+        pretty = lib.generators.toPretty {};
+        duplicates = builtins.filter (dep: (builtins.elem (lib.getName dep) filteredDepNames)) attrValue;
+      in
+        if duplicates != []
+        then lib.warn "Duplicate dependencies in ${attrName} of package ${pname}: ${pretty duplicates}"
+        else lib.id;
+
+    traceAllDuplicateDeps = lib.flip lib.pipe [
+      (traceDuplicateDeps "extraBuildInputs" extraBuildInputs)
+      (traceDuplicateDeps "extraPropagatedBuildInputs" extraPropagatedBuildInputs)
+    ];
+
     defaultArgs = {
       inherit version src;
 
@@ -128,4 +142,4 @@ in
 
     pos = builtins.unsafeGetAttrPos "pname" args;
   in
-    stdenv.mkDerivation (defaultArgs // cleanArgs // { inherit meta pos; })
+    traceAllDuplicateDeps (stdenv.mkDerivation (defaultArgs // cleanArgs // { inherit meta pos; }))
diff --git a/pkgs/kde/misc/kirigami-addons/default.nix b/pkgs/kde/misc/kirigami-addons/default.nix
index 90106d588fede..187a5aebe2ba4 100644
--- a/pkgs/kde/misc/kirigami-addons/default.nix
+++ b/pkgs/kde/misc/kirigami-addons/default.nix
@@ -7,11 +7,11 @@
 }:
 mkKdeDerivation rec {
   pname = "kirigami-addons";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchurl {
     url = "mirror://kde/stable/kirigami-addons/kirigami-addons-${version}.tar.xz";
-    hash = "sha256-jvNSSZE5YWsxQqbXqSqyN0nFaEA+zo2FTwZKlB0IVTY=";
+    hash = "sha256-j/NkWKqQ/x2YBik1e23fXoira8kXsBGn+fpdXhKs9Ro=";
   };
 
   extraBuildInputs = [qtdeclarative];
diff --git a/pkgs/kde/misc/mpvqt/default.nix b/pkgs/kde/misc/mpvqt/default.nix
index fc237f97a803a..84d78e26bc000 100644
--- a/pkgs/kde/misc/mpvqt/default.nix
+++ b/pkgs/kde/misc/mpvqt/default.nix
@@ -2,7 +2,7 @@
   lib,
   mkKdeDerivation,
   fetchFromGitLab,
-  mpv,
+  mpv-unwrapped,
   qtdeclarative,
 }:
 mkKdeDerivation rec {
@@ -18,7 +18,7 @@ mkKdeDerivation rec {
   };
 
   extraBuildInputs = [qtdeclarative];
-  extraPropagatedBuildInputs = [mpv];
+  extraPropagatedBuildInputs = [mpv-unwrapped];
 
   meta.license = with lib.licenses; [bsd2 bsd3 cc-by-sa-40 cc0 lgpl21Only lgpl3Only lgpl3Plus mit];
 }
diff --git a/pkgs/kde/plasma/kwayland/default.nix b/pkgs/kde/plasma/kwayland/default.nix
index 341fd8d356082..86713b834bec7 100644
--- a/pkgs/kde/plasma/kwayland/default.nix
+++ b/pkgs/kde/plasma/kwayland/default.nix
@@ -2,11 +2,10 @@
   mkKdeDerivation,
   pkg-config,
   qtwayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "kwayland";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland-protocols];
+  extraBuildInputs = [qtwayland];
 }
diff --git a/pkgs/kde/plasma/layer-shell-qt/default.nix b/pkgs/kde/plasma/layer-shell-qt/default.nix
index 9783220cddf2d..dd7290379c5f2 100644
--- a/pkgs/kde/plasma/layer-shell-qt/default.nix
+++ b/pkgs/kde/plasma/layer-shell-qt/default.nix
@@ -2,12 +2,10 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "layer-shell-qt";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland wayland-protocols];
+  extraBuildInputs = [qtwayland];
 }
diff --git a/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix b/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
index 9d5be65fe097b..7563e934e502f 100644
--- a/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
+++ b/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
@@ -2,13 +2,11 @@
   mkKdeDerivation,
   pkg-config,
   qtwayland,
-  wayland,
-  wayland-protocols,
   cups,
 }:
 mkKdeDerivation {
   pname = "xdg-desktop-portal-kde";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland wayland-protocols cups];
+  extraBuildInputs = [qtwayland cups];
 }
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix
index 5382a0655f968..34fc23dfcc881 100644
--- a/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix
@@ -5,18 +5,18 @@
 
 buildNpmPackage rec {
   pname = "android-tv-card";
-  version = "3.6.1";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "Nerwyn";
     repo = "android-tv-card";
     rev = version;
-    hash = "sha256-bVfaB5s4b0bu8RiPGoyuPzhe2otCPugldmoVQuYX3P8=";
+    hash = "sha256-6SwSoFeGS3kzk4jz+vSVb8ENMcSFxaunyTzuPe1kHBI=";
   };
 
   patches = [ ./dont-call-git.patch ];
 
-  npmDepsHash = "sha256-yLIf+VXrNF81pq8dbPa+JplNZqhrRnXHEdEk6wJN98A=";
+  npmDepsHash = "sha256-QO3IAd7RC8VBa2YjQVn4HUm64mQL86OuAhjJO0Oo94M=";
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/servers/web-apps/wordpress/packages/plugins.json b/pkgs/servers/web-apps/wordpress/packages/plugins.json
index 50266a639ba3c..e3702cb34d23e 100644
--- a/pkgs/servers/web-apps/wordpress/packages/plugins.json
+++ b/pkgs/servers/web-apps/wordpress/packages/plugins.json
@@ -30,10 +30,10 @@
     "version": "2.1.7"
   },
   "co-authors-plus": {
-    "path": "co-authors-plus/tags/3.5.15",
-    "rev": "2959167",
-    "sha256": "1n01sk2vgiym25wvxi4igpx773ph59y5f5lvwaasilamdpw0lzh4",
-    "version": "3.5.15"
+    "path": "co-authors-plus/tags/3.6.1",
+    "rev": "3077160",
+    "sha256": "10733qibrcrshm3c9zjxhwqar2fg60na70npam1z2lz6gnwmwdqn",
+    "version": "3.6.1"
   },
   "code-syntax-block": {
     "path": "code-syntax-block/tags/3.2.1",
@@ -60,10 +60,10 @@
     "version": "1.4.0"
   },
   "gutenberg": {
-    "path": "gutenberg/tags/18.2.0",
-    "rev": "3077097",
-    "sha256": "126zbp5ix94qrkrw4lwsiwk3mri7xd28f7zz4cqbv03wq7pzla6x",
-    "version": "18.2.0"
+    "path": "gutenberg/tags/18.3.0",
+    "rev": "3083588",
+    "sha256": "0dl6hdi38988zpcl69avy1p8s93djlzk6f56ra490lvzlmf4g73z",
+    "version": "18.3.0"
   },
   "hcaptcha-for-forms-and-more": {
     "path": "hcaptcha-for-forms-and-more/tags/4.1.1",
@@ -84,10 +84,10 @@
     "version": "3.0.2"
   },
   "jetpack": {
-    "path": "jetpack/tags/13.3.1",
-    "rev": "3068650",
-    "sha256": "0fwigf6xg5y5nqfkk2nv08qyqp97v96rnccx2a72p19a6dq6b97x",
-    "version": "13.3.1"
+    "path": "jetpack/tags/13.4.1",
+    "rev": "3084434",
+    "sha256": "17fg162f5nqf87xi0bii9xsgc19vfd9hrf86b82c4m6sgb80rf2p",
+    "version": "13.4.1"
   },
   "jetpack-lite": {
     "path": "jetpack-lite/tags/3.0.3",
@@ -108,10 +108,10 @@
     "version": "2.09"
   },
   "mailpoet": {
-    "path": "mailpoet/tags/4.48.2",
-    "rev": "3067726",
-    "sha256": "13brfys3xmpmw5yd1wn826mrzxvb6312177l7hmr6mhk0adp5lhz",
-    "version": "4.48.2"
+    "path": "mailpoet/tags/4.50.0",
+    "rev": "3083197",
+    "sha256": "01z2r87jw94ap9ha8kz1l999pczpa6985j4z0nq44b20672p62gv",
+    "version": "4.50.0"
   },
   "merge-minify-refresh": {
     "path": "merge-minify-refresh/trunk",
@@ -143,6 +143,12 @@
     "sha256": "1mrwgqp1ril54xqr8k2gwgjcsbf4xv3671v15xawapwz730h2c4r",
     "version": "0.10.0"
   },
+  "surge": {
+    "path": "surge/tags/1.1.0",
+    "rev": "3030901",
+    "sha256": "1bg99gsxv32l62pv0n2pq0384ggk2p154pg79yxiwnab2mrrs8j2",
+    "version": "1.1.0"
+  },
   "tc-custom-javascript": {
     "path": "tc-custom-javascript/tags/1.2.3",
     "rev": "2870386",
diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
index f544c91cc098c..83d3b6d1edae6 100644
--- a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
+++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
@@ -23,6 +23,7 @@
 , "simple-login-captcha": "gpl2Plus"
 , "simple-mastodon-verification": "gpl2Plus"
 , "static-mail-sender-configurator": "mit"
+, "surge": "gpl3Only"
 , "tc-custom-javascript": "gpl2Plus"
 , "webp-converter-for-media": "gpl2Plus"
 , "webp-express": "gpl3Only"
diff --git a/pkgs/tools/misc/uucp/default.nix b/pkgs/tools/misc/uucp/default.nix
index 28f7a6572c185..325ad135558c3 100644
--- a/pkgs/tools/misc/uucp/default.nix
+++ b/pkgs/tools/misc/uucp/default.nix
@@ -1,11 +1,11 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, autoreconfHook, testers }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "uucp";
   version = "1.07";
 
   src = fetchurl {
-    url = "mirror://gnu/uucp/uucp-${version}.tar.gz";
+    url = "mirror://gnu/uucp/uucp-${finalAttrs.version}.tar.gz";
     sha256 = "0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306";
   };
 
@@ -13,15 +13,28 @@ stdenv.mkDerivation rec {
 
   prePatch = ''
     # do not set sticky bit in nix store
-    substituteInPlace Makefile.in \
-      --replace 4555 0555
-    sed -i '/chown $(OWNER)/d' Makefile.in
+    substituteInPlace Makefile.am \
+      --replace-fail 4555 0555
+    sed -i '/chown $(OWNER)/d' Makefile.am
+
+    # don't reply on implicitly defined `exit` function in `HAVE_VOID` test:
+    substituteInPlace configure.in \
+      --replace-fail '(void) exit (0)' '(void) (0)'
   '';
 
+  # Regenerate `configure`; the checked in version was generated in 2002 and
+  # contains snippets like `main(){return(0);}` that modern compilers dislike.
+  nativeBuildInputs = [ autoreconfHook ];
+
   makeFlags = [ "AR:=$(AR)" ];
 
+  passthru.tests.version = testers.testVersion {
+    package = finalAttrs.finalPackage;
+  };
+
   meta = {
     description = "Unix-unix cp over serial line, also includes cu program";
+    mainProgram = "uucp";
 
     longDescription =
       '' Taylor UUCP is a free implementation of UUCP and is the standard
@@ -37,4 +50,4 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.all;
     maintainers = [ ];
   };
-}
+})
diff --git a/pkgs/tools/networking/linkchecker/default.nix b/pkgs/tools/networking/linkchecker/default.nix
index 2adf2c8f82d10..dad2af76964fd 100644
--- a/pkgs/tools/networking/linkchecker/default.nix
+++ b/pkgs/tools/networking/linkchecker/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , fetchFromGitHub
 , python3
 , gettext
@@ -8,50 +7,49 @@
 python3.pkgs.buildPythonApplication rec {
   pname = "linkchecker";
   version = "10.2.1";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "linkchecker";
+    repo = "linkchecker";
     rev = "refs/tags/v${version}";
     hash = "sha256-z7Qp74cai8GfsxB4n9dSCWQepp0/4PimFiRJQBaVSoo=";
   };
 
-  nativeBuildInputs = [
-    gettext
+  nativeBuildInputs = [ gettext ];
+
+  build-system = with python3.pkgs; [
+    hatchling
+    hatch-vcs
+    polib # translations
   ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     argcomplete
     beautifulsoup4
-    configargparse
     dnspython
-    hatch-vcs
-    hatchling
-    pyopenssl
     requests
   ];
 
   nativeCheckInputs = with python3.pkgs; [
+    pyopenssl
     parameterized
     pytestCheckHook
   ];
 
   disabledTests = [
-    # test_timeit2 is flakey, and depends sleep being precise to the milisecond
     "TestLoginUrl"
-    "test_timeit2"
+    "test_timeit2" # flakey, and depends sleep being precise to the milisecond
+    "test_internet" # uses network, fails on Darwin (not sure why it doesn't fail on linux)
   ];
 
   disabledTestPaths = [
     "tests/checker/telnetserver.py"
     "tests/checker/test_telnet.py"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "tests/checker/test_content_allows_robots.py"
-    "tests/checker/test_http*.py"
-    "tests/test_network.py"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Check websites for broken links";
     mainProgram = "linkchecker";
diff --git a/pkgs/tools/package-management/nix-eval-jobs/2.19.nix b/pkgs/tools/package-management/nix-eval-jobs/2.19.nix
new file mode 100644
index 0000000000000..bf2d48e4adfb1
--- /dev/null
+++ b/pkgs/tools/package-management/nix-eval-jobs/2.19.nix
@@ -0,0 +1,47 @@
+{ lib
+, boost
+, cmake
+, fetchFromGitHub
+, meson
+, ninja
+, nix
+, nlohmann_json
+, pkg-config
+, stdenv
+}:
+stdenv.mkDerivation rec {
+  pname = "nix-eval-jobs";
+  version = "2.19.4";
+  src = fetchFromGitHub {
+    owner = "nix-community";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-97ZqhTMqnAr1rzEy96faceWzFyWexnYbH1aTfc1y0JE=";
+  };
+  buildInputs = [
+    boost
+    nix
+    nlohmann_json
+  ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    # nlohmann_json can be only discovered via cmake files
+    cmake
+  ];
+
+  # Since this package is intimately tied to a specific Nix release, we
+  # propagate the Nix used for building it to make it easier for users
+  # downstream to reference it.
+  passthru = { inherit nix; };
+
+  meta = {
+    description = "Hydra's builtin hydra-eval-jobs as a standalone";
+    homepage = "https://github.com/nix-community/nix-eval-jobs";
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ adisbladis mic92 ];
+    platforms = lib.platforms.unix;
+    mainProgram = "nix-eval-jobs";
+  };
+}
diff --git a/pkgs/tools/package-management/nix-eval-jobs/default.nix b/pkgs/tools/package-management/nix-eval-jobs/default.nix
index 37194739e5d18..15a095f6c3b13 100644
--- a/pkgs/tools/package-management/nix-eval-jobs/default.nix
+++ b/pkgs/tools/package-management/nix-eval-jobs/default.nix
@@ -11,12 +11,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "nix-eval-jobs";
-  version = "2.21.0";
+  version = "2.22.0";
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-StJq7Zy+/iVBUAKFzhHWlsirFucZ3gNtzXhAYXAsNnw=";
+    hash = "sha256-Foi9FUuwKBUVExR3uEJEGsNRCGkkoNDj0yEhASanGCM=";
   };
   buildInputs = [
     boost
diff --git a/pkgs/tools/security/nuclei/default.nix b/pkgs/tools/security/nuclei/default.nix
index e81a92b3f1e03..259680693dac5 100644
--- a/pkgs/tools/security/nuclei/default.nix
+++ b/pkgs/tools/security/nuclei/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "3.2.6";
+  version = "3.2.7";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = "nuclei";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lbN82tzH2sXRM8aOjPvFI5J18k4OdYpurLCR8TjVyrw=";
+    hash = "sha256-sXrDmtuKfFeYAJnxIZGQiYiAjx40YQLfnMQ8YUCkZ7s=";
   };
 
-  vendorHash = "sha256-F7k8XejAPlrv4RYCvVWxX1OlDXOGS/ow8wHXyuaCkq0=";
+  vendorHash = "sha256-PXa8Fd7LE6uebpep1/HV2EuJdzj8cxeiZ4DYALIoh2A=";
 
   subPackages = [ "cmd/nuclei/" ];
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 981162944ef7d..71c35ae5cd2f4 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7823,7 +7823,7 @@ with pkgs;
 
   enscript = callPackage ../tools/text/enscript { };
 
-  ensemble-chorus = callPackage ../applications/audio/ensemble-chorus { stdenv = gcc8Stdenv; };
+  ensemble-chorus = callPackage ../applications/audio/ensemble-chorus { };
 
   entr = callPackage ../tools/misc/entr { };
 
@@ -8099,8 +8099,6 @@ with pkgs;
 
   flowblade = callPackage ../applications/video/flowblade { };
 
-  fontfor = callPackage ../tools/misc/fontfor { };
-
   fontforge = lowPrio (callPackage ../tools/misc/fontforge {
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
     python = python3;
@@ -16727,7 +16725,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
   cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { };
-  cargo-geiger = callPackage ../development/tools/rust/cargo-geiger { };
 
   cargo-hf2 = callPackage ../development/tools/rust/cargo-hf2 {
     inherit (darwin.apple_sdk.frameworks) AppKit;
@@ -39712,9 +39709,14 @@ with pkgs;
 
   dnadd = callPackage ../tools/nix/dnadd { };
 
-  nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs {
-    nix = nixVersions.nix_2_21;
-  };
+  nix-eval-jobs = if stdenv.isDarwin then
+    callPackage ../tools/package-management/nix-eval-jobs/2.19.nix {
+      nix = nixVersions.nix_2_19;
+    }
+  else
+    callPackage ../tools/package-management/nix-eval-jobs {
+      nix = nixVersions.nix_2_22;
+    };
 
   nix-doc = callPackage ../tools/package-management/nix-doc { };