about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2022-11-10 00:16:25 +0000
committerGitHub <noreply@github.com>2022-11-10 00:16:25 +0000
commit3ff06869dce7b128109ccc78767d18d4271523cc (patch)
treee7c2cc659994e7a60ba036258f9d66b9474cd207
parent11882a0bde778e813c79b8d17c033f3ddf13a8f1 (diff)
parent054a983e10c59ad7341181b70ede8cf8779bdc2e (diff)
Merge master into haskell-updates
-rw-r--r--.github/CODEOWNERS5
-rw-r--r--doc/languages-frameworks/javascript.section.md55
-rw-r--r--lib/licenses.nix15
-rwxr-xr-xmaintainers/scripts/nix-generate-from-cpan.pl4
-rw-r--r--nixos/modules/module-list.nix2
-rw-r--r--nixos/modules/services/cluster/kubernetes/kubelet.nix7
-rw-r--r--nixos/modules/services/desktops/geoclue2.nix1
-rw-r--r--nixos/modules/services/misc/ethminer.nix117
-rw-r--r--nixos/modules/services/monitoring/smartd.nix3
-rw-r--r--nixos/modules/services/networking/firefox-syncserver.nix90
-rw-r--r--nixos/modules/services/networking/flannel.nix6
-rw-r--r--nixos/modules/services/networking/jitsi-videobridge.nix2
-rw-r--r--nixos/modules/services/web-apps/bookstack.nix7
-rw-r--r--nixos/modules/services/web-apps/discourse.nix7
-rw-r--r--nixos/modules/services/web-apps/invoiceplane.nix6
-rw-r--r--nixos/modules/services/web-apps/matomo.nix8
-rw-r--r--nixos/modules/services/web-apps/snipe-it.nix7
-rw-r--r--nixos/modules/system/activation/specialisation.nix85
-rw-r--r--nixos/modules/system/activation/top-level.nix103
-rw-r--r--nixos/modules/system/boot/loader/grub/grub.nix5
-rw-r--r--nixos/modules/tasks/network-interfaces.nix22
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/invoiceplane.nix12
-rw-r--r--pkgs/applications/audio/ardour/6.nix191
-rw-r--r--pkgs/applications/audio/ardour/default.nix49
-rw-r--r--pkgs/applications/audio/audacity/default.nix2
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/musikcube/default.nix2
-rw-r--r--pkgs/applications/blockchains/sparrow/default.nix19
-rwxr-xr-xpkgs/applications/blockchains/sparrow/update.sh26
-rw-r--r--pkgs/applications/editors/cudatext/default.nix4
-rw-r--r--pkgs/applications/editors/cudatext/deps.json8
-rw-r--r--pkgs/applications/editors/gnome-latex/default.nix4
-rw-r--r--pkgs/applications/editors/sublime/4/packages.nix6
-rw-r--r--pkgs/applications/emulators/np2kai/default.nix2
-rw-r--r--pkgs/applications/file-managers/mucommander/default.nix95
-rw-r--r--pkgs/applications/graphics/hdr-plus/default.nix34
-rw-r--r--pkgs/applications/kde/akonadi-import-wizard.nix2
-rw-r--r--pkgs/applications/kde/akonadi-notes.nix2
-rw-r--r--pkgs/applications/kde/akonadi-search.nix2
-rw-r--r--pkgs/applications/kde/akonadiconsole.nix2
-rw-r--r--pkgs/applications/kde/akregator.nix2
-rw-r--r--pkgs/applications/kde/calendarsupport.nix2
-rw-r--r--pkgs/applications/kde/dolphin.nix2
-rw-r--r--pkgs/applications/kde/dragon.nix2
-rw-r--r--pkgs/applications/kde/eventviews.nix2
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/grantleetheme/default.nix2
-rw-r--r--pkgs/applications/kde/gwenview.nix2
-rw-r--r--pkgs/applications/kde/incidenceeditor.nix2
-rw-r--r--pkgs/applications/kde/kaddressbook.nix2
-rw-r--r--pkgs/applications/kde/kcalutils.nix2
-rw-r--r--pkgs/applications/kde/kdepim-runtime/default.nix2
-rw-r--r--pkgs/applications/kde/kdialog.nix2
-rw-r--r--pkgs/applications/kde/keditbookmarks.nix2
-rw-r--r--pkgs/applications/kde/kidentitymanagement.nix2
-rw-r--r--pkgs/applications/kde/kimap.nix2
-rw-r--r--pkgs/applications/kde/kldap.nix2
-rw-r--r--pkgs/applications/kde/kleopatra.nix2
-rw-r--r--pkgs/applications/kde/kmail-account-wizard.nix2
-rw-r--r--pkgs/applications/kde/kmail.nix2
-rw-r--r--pkgs/applications/kde/kmailtransport.nix2
-rw-r--r--pkgs/applications/kde/kmbox.nix2
-rw-r--r--pkgs/applications/kde/kmix.nix2
-rw-r--r--pkgs/applications/kde/kmousetool.nix2
-rw-r--r--pkgs/applications/kde/kmplot.nix2
-rw-r--r--pkgs/applications/kde/konsole.nix2
-rw-r--r--pkgs/applications/kde/kontact.nix2
-rw-r--r--pkgs/applications/kde/kontactinterface.nix2
-rw-r--r--pkgs/applications/kde/korganizer.nix2
-rw-r--r--pkgs/applications/kde/kpat.nix2
-rw-r--r--pkgs/applications/kde/kpimtextedit.nix2
-rw-r--r--pkgs/applications/kde/kqtquickcharts.nix2
-rw-r--r--pkgs/applications/kde/krdc.nix2
-rw-r--r--pkgs/applications/kde/krfb.nix2
-rw-r--r--pkgs/applications/kde/ksmtp/default.nix2
-rw-r--r--pkgs/applications/kde/ktnef.nix2
-rw-r--r--pkgs/applications/kde/libgravatar.nix2
-rw-r--r--pkgs/applications/kde/libkdepim.nix2
-rw-r--r--pkgs/applications/kde/libkgapi.nix2
-rw-r--r--pkgs/applications/kde/libkleo.nix2
-rw-r--r--pkgs/applications/kde/libksieve.nix2
-rw-r--r--pkgs/applications/kde/mailcommon.nix2
-rw-r--r--pkgs/applications/kde/mailimporter.nix2
-rw-r--r--pkgs/applications/kde/mbox-importer.nix2
-rw-r--r--pkgs/applications/kde/messagelib.nix2
-rw-r--r--pkgs/applications/kde/okular.nix2
-rw-r--r--pkgs/applications/kde/pim-data-exporter.nix2
-rw-r--r--pkgs/applications/kde/pim-sieve-editor.nix2
-rw-r--r--pkgs/applications/kde/pimcommon.nix2
-rw-r--r--pkgs/applications/kde/rocs.nix2
-rw-r--r--pkgs/applications/kde/srcs.nix1864
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/networking/blocky/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json49
-rw-r--r--pkgs/applications/networking/dnscontrol/default.nix4
-rw-r--r--pkgs/applications/networking/go-graft/default.nix4
-rw-r--r--pkgs/applications/networking/mumble/default.nix13
-rw-r--r--pkgs/applications/networking/mumble/overlay.nix1
-rw-r--r--pkgs/applications/networking/newsreaders/pan/default.nix2
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix23
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/wireshark-lookup-dumpcap-in-path.patch32
-rw-r--r--pkgs/applications/science/biology/delly/default.nix4
-rw-r--r--pkgs/applications/science/misc/root/default.nix26
-rw-r--r--pkgs/applications/version-management/sublime-merge/default.nix4
-rw-r--r--pkgs/applications/video/ffmpeg-normalize/default.nix4
-rw-r--r--pkgs/applications/video/kmplayer/default.nix2
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix4
-rw-r--r--pkgs/build-support/node/build-npm-package/default.nix54
-rw-r--r--pkgs/build-support/node/build-npm-package/hooks/default.nix35
-rw-r--r--pkgs/build-support/node/build-npm-package/hooks/npm-build-hook.sh37
-rw-r--r--pkgs/build-support/node/build-npm-package/hooks/npm-config-hook.sh102
-rw-r--r--pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh43
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/.gitignore1
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/Cargo.lock689
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/Cargo.toml19
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/default.nix137
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/src/cacache.rs116
-rw-r--r--pkgs/build-support/node/fetch-npm-deps/src/main.rs334
-rw-r--r--pkgs/build-support/rust/lib/default.nix15
-rw-r--r--pkgs/data/documentation/std-man-pages/default.nix2
-rw-r--r--pkgs/data/fonts/victor-mono/default.nix2
-rw-r--r--pkgs/data/icons/qogir-icon-theme/default.nix4
-rw-r--r--pkgs/data/themes/marwaita/default.nix4
-rw-r--r--pkgs/data/themes/qogir/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/mutter/default.nix13
-rw-r--r--pkgs/desktops/gnome/extensions/system-monitor/default.nix17
-rw-r--r--pkgs/desktops/mate/mate-user-guide/default.nix2
-rw-r--r--pkgs/desktops/plasma-5/default.nix2
-rw-r--r--pkgs/desktops/plasma-5/fetch.sh2
-rw-r--r--pkgs/desktops/plasma-5/srcs.nix464
-rw-r--r--pkgs/development/compilers/cudatoolkit/redist/extension.nix1
-rw-r--r--pkgs/development/compilers/dotnet/versions/3.1.nix190
-rw-r--r--pkgs/development/compilers/dotnet/versions/6.0.nix252
-rw-r--r--pkgs/development/compilers/dotnet/versions/7.0.nix268
-rw-r--r--pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch6
-rw-r--r--pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch6
-rw-r--r--pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch8
-rw-r--r--pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch6
-rw-r--r--pkgs/development/interpreters/joker/default.nix4
-rw-r--r--pkgs/development/interpreters/lua-5/interpreter.nix2
-rw-r--r--pkgs/development/interpreters/scheme48/default.nix4
-rw-r--r--pkgs/development/libraries/ada/spark2014/default.nix71
-rw-r--r--pkgs/development/libraries/amtk/default.nix4
-rw-r--r--pkgs/development/libraries/catch2/3.nix4
-rw-r--r--pkgs/development/libraries/gjs/default.nix4
-rw-r--r--pkgs/development/libraries/gtksourceview/4.x.nix4
-rw-r--r--pkgs/development/libraries/kde-frameworks/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kdav.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kholidays.nix2
-rw-r--r--pkgs/development/libraries/libftdi/default.nix11
-rw-r--r--pkgs/development/libraries/libmysqlconnectorcpp/default.nix4
-rw-r--r--pkgs/development/libraries/libpanel/default.nix4
-rw-r--r--pkgs/development/libraries/log4shib/default.nix2
-rw-r--r--pkgs/development/libraries/openjpeg/default.nix1
-rw-r--r--pkgs/development/libraries/qpdf/default.nix3
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtbase.nix2
-rw-r--r--pkgs/development/libraries/qt-5/qtModule.nix2
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtbase.nix2
-rw-r--r--pkgs/development/libraries/qt-6/qtModule.nix2
-rw-r--r--pkgs/development/libraries/qt-mobility/default.nix2
-rw-r--r--pkgs/development/libraries/qtforkawesome/default.nix4
-rw-r--r--pkgs/development/libraries/qtutilities/default.nix4
-rw-r--r--pkgs/development/libraries/rapidfuzz-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/tepl/default.nix4
-rw-r--r--pkgs/development/misc/yelp-tools/default.nix4
-rw-r--r--pkgs/development/python-modules/fakeredis/default.nix4
-rw-r--r--pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--pkgs/development/python-modules/hy/default.nix6
-rw-r--r--pkgs/development/python-modules/hyrule/default.nix4
-rw-r--r--pkgs/development/python-modules/jc/default.nix1
-rw-r--r--pkgs/development/python-modules/mpmath/default.nix15
-rw-r--r--pkgs/development/python-modules/pescea/default.nix2
-rw-r--r--pkgs/development/python-modules/pyshark/default.nix37
-rw-r--r--pkgs/development/python-modules/pyunifiprotect/default.nix4
-rw-r--r--pkgs/development/python-modules/qiling/default.nix4
-rw-r--r--pkgs/development/python-modules/rapidfuzz/default.nix4
-rw-r--r--pkgs/development/python-modules/transitions/default.nix9
-rw-r--r--pkgs/development/python-modules/types-python-dateutil/default.nix4
-rw-r--r--pkgs/development/python-modules/types-requests/default.nix4
-rw-r--r--pkgs/development/python-modules/types-urllib3/default.nix4
-rw-r--r--pkgs/development/python-modules/uvloop/default.nix3
-rw-r--r--pkgs/development/tools/allure/default.nix4
-rw-r--r--pkgs/development/tools/memray/default.nix1
-rw-r--r--pkgs/development/tools/misc/universal-ctags/default.nix4
-rw-r--r--pkgs/development/tools/parsing/byacc/default.nix34
-rw-r--r--pkgs/development/tools/rust/cargo-audit/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-generate/default.nix17
-rw-r--r--pkgs/development/tools/rust/cargo-generate/no-vendor.patch6
-rw-r--r--pkgs/development/tools/sumneko-lua-language-server/default.nix4
-rw-r--r--pkgs/development/tools/zed/default.nix1
-rw-r--r--pkgs/development/web/deno/default.nix6
-rw-r--r--pkgs/games/itch/butler.nix17
-rw-r--r--pkgs/games/sil/default.nix2
-rw-r--r--pkgs/games/tetrio-desktop/default.nix34
-rw-r--r--pkgs/games/tetrio-desktop/tetrio-plus.nix27
-rw-r--r--pkgs/games/the-powder-toy/default.nix2
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/open.nix2
-rw-r--r--pkgs/servers/hqplayerd/add-option-for-installation-sysconfdir.patch35
-rw-r--r--pkgs/servers/hqplayerd/default.nix24
-rw-r--r--pkgs/servers/hqplayerd/rygel.nix108
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/keycloak/config_vars.patch15
-rw-r--r--pkgs/servers/keycloak/default.nix15
-rw-r--r--pkgs/servers/matrix-synapse/tools/synadm.nix4
-rw-r--r--pkgs/servers/monitoring/grafana-agent/default.nix6
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/nitter/default.nix10
-rw-r--r--pkgs/servers/nitter/nitter-version.patch17
-rw-r--r--pkgs/servers/plex/raw.nix6
-rw-r--r--pkgs/servers/uwsgi/default.nix21
-rw-r--r--pkgs/servers/uwsgi/missing-arginfo-php8.patch49
-rw-r--r--pkgs/servers/varnish/default.nix13
-rw-r--r--pkgs/servers/varnish/packages.nix16
-rw-r--r--pkgs/servers/web-apps/wiki-js/default.nix4
-rw-r--r--pkgs/shells/nushell/default.nix6
-rw-r--r--pkgs/tools/admin/bubblewrap/default.nix1
-rw-r--r--pkgs/tools/admin/turbovnc/default.nix1
-rw-r--r--pkgs/tools/filesystems/squashfs/default.nix1
-rw-r--r--pkgs/tools/graphics/zbar/default.nix1
-rw-r--r--pkgs/tools/misc/ddccontrol/default.nix6
-rw-r--r--pkgs/tools/misc/ddcutil/default.nix1
-rw-r--r--pkgs/tools/misc/ethminer/add-global-context.patch25
-rw-r--r--pkgs/tools/misc/ethminer/default.nix94
-rw-r--r--pkgs/tools/misc/skim/default.nix6
-rw-r--r--pkgs/tools/misc/tldr/default.nix3
-rw-r--r--pkgs/tools/misc/tremor-rs/default.nix43
-rw-r--r--pkgs/tools/networking/lychee/default.nix6
-rw-r--r--pkgs/tools/networking/mozillavpn/default.nix57
-rw-r--r--pkgs/tools/security/b2sum/default.nix10
-rw-r--r--pkgs/tools/system/nvtop/default.nix1
-rw-r--r--pkgs/top-level/aliases.nix2
-rw-r--r--pkgs/top-level/all-packages.nix38
-rw-r--r--pkgs/top-level/impure.nix7
237 files changed, 4587 insertions, 2522 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index e7e57f381246d..b2584681b84df 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -289,3 +289,8 @@
 # Dotnet
 /pkgs/build-support/dotnet          @IvarWithoutBones
 /pkgs/development/compilers/dotnet  @IvarWithoutBones
+
+# Node.js
+/pkgs/build-support/node/build-npm-package      @winterqt
+/pkgs/build-support/node/fetch-npm-deps         @winterqt
+/doc/languages-frameworks/javascript.section.md @winterqt
diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md
index 9d16b951e8ddb..490daf991588a 100644
--- a/doc/languages-frameworks/javascript.section.md
+++ b/doc/languages-frameworks/javascript.section.md
@@ -157,6 +157,61 @@ git config --global url."https://github.com/".insteadOf git://github.com/
 
 ## Tool specific instructions {#javascript-tool-specific}
 
+### buildNpmPackage {#javascript-buildNpmPackage}
+
+`buildNpmPackage` allows you to package npm-based projects in Nixpkgs without the use of an auto-generated dependencies file (as used in [node2nix](#javascript-node2nix)). It works by utilizing npm's cache functionality -- creating a reproducible cache that contains the dependencies of a project, and pointing npm to it.
+
+```nix
+{ lib, buildNpmPackage, fetchFromGitHub }:
+
+buildNpmPackage rec {
+  pname = "flood";
+  version = "4.7.0";
+
+  src = fetchFromGitHub {
+    owner = "jesec";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-BR+ZGkBBfd0dSQqAvujsbgsEPFYw/ThrylxUbOksYxM=";
+  };
+
+  patches = [ ./remove-prepack-script.patch ];
+
+  npmDepsHash = "sha256-s8SpZY/1tKZVd3vt7sA9vsqHvEaNORQBMrSyhWpj048=";
+
+  NODE_OPTIONS = "--openssl-legacy-provider";
+
+  meta = with lib; {
+    description = "A modern web UI for various torrent clients with a Node.js backend and React frontend";
+    homepage = "https://flood.js.org";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ winter ];
+  };
+}
+```
+
+#### Arguments {#javascript-buildNpmPackage-arguments}
+
+* `npmDepsHash`: The output hash of the dependencies for this project. Can be calculated in advance with [`prefetch-npm-deps`](#javascript-buildNpmPackage-prefetch-npm-deps).
+* `makeCacheWritable`: Whether to make the cache writable prior to installing dependencies. Don't set this unless npm tries to write to the cache directory, as it can slow down the build.
+* `npmBuildScript`: The script to run to build the project. Defaults to `"build"`.
+* `npmFlags`: Flags to pass to all npm commands.
+* `npmInstallFlags`: Flags to pass to `npm ci`.
+* `npmBuildFlags`: Flags to pass to `npm run ${npmBuildScript}`.
+* `npmPackFlags`: Flags to pass to `npm pack`.
+
+#### prefetch-npm-deps {#javascript-buildNpmPackage-prefetch-npm-deps}
+
+`prefetch-npm-deps` can calculate the hash of the dependencies of an npm project ahead of time.
+
+```console
+$ ls
+package.json package-lock.json index.js
+$ prefetch-npm-deps package-lock.json
+...
+sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+```
+
 ### node2nix {#javascript-node2nix}
 
 #### Preparation {#javascript-node2nix-preparation}
diff --git a/lib/licenses.nix b/lib/licenses.nix
index c84d5e8706df3..09f8be7d725b6 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -990,21 +990,6 @@ in mkLicense lset) ({
     fullName = "GNU Affero General Public License v3.0";
     deprecated = true;
   };
-  fdl11 = {
-    spdxId = "GFDL-1.1";
-    fullName = "GNU Free Documentation License v1.1";
-    deprecated = true;
-  };
-  fdl12 = {
-    spdxId = "GFDL-1.2";
-    fullName = "GNU Free Documentation License v1.2";
-    deprecated = true;
-  };
-  fdl13 = {
-    spdxId = "GFDL-1.3";
-    fullName = "GNU Free Documentation License v1.3";
-    deprecated = true;
-  };
   gpl2 = {
     spdxId = "GPL-2.0";
     fullName = "GNU General Public License v2.0";
diff --git a/maintainers/scripts/nix-generate-from-cpan.pl b/maintainers/scripts/nix-generate-from-cpan.pl
index 6494acb50da5b..ce0599dda0e71 100755
--- a/maintainers/scripts/nix-generate-from-cpan.pl
+++ b/maintainers/scripts/nix-generate-from-cpan.pl
@@ -61,12 +61,12 @@ Readonly::Hash my %LICENSE_MAP => (
 
     # GNU Free Documentation License, Version 1.2.
     gfdl_1_2 => {
-        licenses => [qw( fdl12 )]
+        licenses => [qw( fdl12Plus )]
     },
 
     # GNU Free Documentation License, Version 1.3.
     gfdl_1_3 => {
-        licenses => [qw( fdl13 )]
+        licenses => [qw( fdl13Plus )]
     },
 
     # GNU General Public License, Version 1.
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 8dac67f0c308d..53439accd659f 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -575,7 +575,6 @@
   ./services/misc/etcd.nix
   ./services/misc/etebase-server.nix
   ./services/misc/etesync-dav.nix
-  ./services/misc/ethminer.nix
   ./services/misc/exhibitor.nix
   ./services/misc/felix.nix
   ./services/misc/freeswitch.nix
@@ -1224,6 +1223,7 @@
   ./services/x11/xfs.nix
   ./services/x11/xserver.nix
   ./system/activation/activation-script.nix
+  ./system/activation/specialisation.nix
   ./system/activation/top-level.nix
   ./system/boot/binfmt.nix
   ./system/boot/emergency-mode.nix
diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix
index 5dcd18293488a..0898fee9bdb71 100644
--- a/nixos/modules/services/cluster/kubernetes/kubelet.nix
+++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix
@@ -177,8 +177,7 @@ in
 
     hostname = mkOption {
       description = lib.mdDoc "Kubernetes kubelet hostname override.";
-      default = config.networking.hostName;
-      defaultText = literalExpression "config.networking.hostName";
+      defaultText = literalExpression "config.networking.fqdnOrHostName";
       type = str;
     };
 
@@ -349,8 +348,8 @@ in
 
       boot.kernelModules = ["br_netfilter" "overlay"];
 
-      services.kubernetes.kubelet.hostname = with config.networking;
-        mkDefault (hostName + optionalString (domain != null) ".${domain}");
+      services.kubernetes.kubelet.hostname =
+        mkDefault config.networking.fqdnOrHostName;
 
       services.kubernetes.pki.certs = with top.lib; {
         kubelet = mkCert {
diff --git a/nixos/modules/services/desktops/geoclue2.nix b/nixos/modules/services/desktops/geoclue2.nix
index a9712b962ffd9..b04f46c26a568 100644
--- a/nixos/modules/services/desktops/geoclue2.nix
+++ b/nixos/modules/services/desktops/geoclue2.nix
@@ -200,6 +200,7 @@ in
     };
 
     systemd.services.geoclue = {
+      after = lib.optionals cfg.enableWifi [ "network-online.target" ];
       # restart geoclue service when the configuration changes
       restartTriggers = [
         config.environment.etc."geoclue/geoclue.conf".source
diff --git a/nixos/modules/services/misc/ethminer.nix b/nixos/modules/services/misc/ethminer.nix
deleted file mode 100644
index c9b2e24b8bf1b..0000000000000
--- a/nixos/modules/services/misc/ethminer.nix
+++ /dev/null
@@ -1,117 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-  cfg = config.services.ethminer;
-  poolUrl = escapeShellArg "stratum1+tcp://${cfg.wallet}@${cfg.pool}:${toString cfg.stratumPort}/${cfg.rig}/${cfg.registerMail}";
-in
-
-{
-
-  ###### interface
-
-  options = {
-
-    services.ethminer = {
-
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = lib.mdDoc "Enable ethminer ether mining.";
-      };
-
-      recheckInterval = mkOption {
-        type = types.ints.unsigned;
-        default = 2000;
-        description = lib.mdDoc "Interval in milliseconds between farm rechecks.";
-      };
-
-      toolkit = mkOption {
-        type = types.enum [ "cuda" "opencl" ];
-        default = "cuda";
-        description = lib.mdDoc "Cuda or opencl toolkit.";
-      };
-
-      apiPort = mkOption {
-        type = types.int;
-        default = -3333;
-        description = lib.mdDoc "Ethminer api port. minus sign puts api in read-only mode.";
-      };
-
-      wallet = mkOption {
-        type = types.str;
-        example = "0x0123456789abcdef0123456789abcdef01234567";
-        description = lib.mdDoc "Ethereum wallet address.";
-      };
-
-      pool = mkOption {
-        type = types.str;
-        example = "eth-us-east1.nanopool.org";
-        description = lib.mdDoc "Mining pool address.";
-      };
-
-      stratumPort = mkOption {
-        type = types.port;
-        default = 9999;
-        description = lib.mdDoc "Stratum protocol tcp port.";
-      };
-
-      rig = mkOption {
-        type = types.str;
-        default = "mining-rig-name";
-        description = lib.mdDoc "Mining rig name.";
-      };
-
-      registerMail = mkOption {
-        type = types.str;
-        example = "email%40example.org";
-        description = lib.mdDoc "Url encoded email address to register with pool.";
-      };
-
-      maxPower = mkOption {
-        type = types.ints.unsigned;
-        default = 113;
-        description = lib.mdDoc "Miner max watt usage.";
-      };
-
-    };
-
-  };
-
-
-  ###### implementation
-
-  config = mkIf cfg.enable {
-
-    systemd.services.ethminer = {
-      path = optionals (cfg.toolkit == "cuda") [ pkgs.cudaPackages.cudatoolkit ];
-      description = "ethminer ethereum mining service";
-      wantedBy = [ "multi-user.target" ];
-      after = [ "network.target" ];
-
-      serviceConfig = {
-        DynamicUser = true;
-        ExecStartPre = "${pkgs.ethminer}/bin/.ethminer-wrapped --list-devices";
-        ExecStartPost = optional (cfg.toolkit == "cuda") "+${getBin config.boot.kernelPackages.nvidia_x11}/bin/nvidia-smi -pl ${toString cfg.maxPower}";
-        Restart = "always";
-      };
-
-      environment = mkIf (cfg.toolkit == "cuda") {
-        LD_LIBRARY_PATH = "${config.boot.kernelPackages.nvidia_x11}/lib";
-      };
-
-      script = ''
-        ${pkgs.ethminer}/bin/.ethminer-wrapped \
-          --farm-recheck ${toString cfg.recheckInterval} \
-          --report-hashrate \
-          --${cfg.toolkit} \
-          --api-port ${toString cfg.apiPort} \
-          --pool ${poolUrl}
-      '';
-
-    };
-
-  };
-
-}
diff --git a/nixos/modules/services/monitoring/smartd.nix b/nixos/modules/services/monitoring/smartd.nix
index cfebb4b9798bd..1e654cad5dd2a 100644
--- a/nixos/modules/services/monitoring/smartd.nix
+++ b/nixos/modules/services/monitoring/smartd.nix
@@ -4,8 +4,7 @@ with lib;
 
 let
 
-  host = config.networking.hostName or "unknown"
-       + optionalString (config.networking.domain != null) ".${config.networking.domain}";
+  host = config.networking.fqdnOrHostName;
 
   cfg = config.services.smartd;
   opt = options.services.smartd;
diff --git a/nixos/modules/services/networking/firefox-syncserver.nix b/nixos/modules/services/networking/firefox-syncserver.nix
index d7d5df59a4eb3..c3d9f43f74577 100644
--- a/nixos/modules/services/networking/firefox-syncserver.nix
+++ b/nixos/modules/services/networking/firefox-syncserver.nix
@@ -32,6 +32,44 @@ let
     };
   };
   configFile = format.generate "syncstorage.toml" (lib.recursiveUpdate settings cfg.settings);
+  setupScript = pkgs.writeShellScript "firefox-syncserver-setup" ''
+        set -euo pipefail
+        shopt -s inherit_errexit
+
+        schema_configured() {
+          mysql ${cfg.database.name} -Ne 'SHOW TABLES' | grep -q services
+        }
+
+        update_config() {
+          mysql ${cfg.database.name} <<"EOF"
+            BEGIN;
+
+            INSERT INTO `services` (`id`, `service`, `pattern`)
+              VALUES (1, 'sync-1.5', '{node}/1.5/{uid}')
+              ON DUPLICATE KEY UPDATE service='sync-1.5', pattern='{node}/1.5/{uid}';
+            INSERT INTO `nodes` (`id`, `service`, `node`, `available`, `current_load`,
+                                 `capacity`, `downed`, `backoff`)
+              VALUES (1, 1, '${cfg.singleNode.url}', ${toString cfg.singleNode.capacity},
+              0, ${toString cfg.singleNode.capacity}, 0, 0)
+              ON DUPLICATE KEY UPDATE node = '${cfg.singleNode.url}', capacity=${toString cfg.singleNode.capacity};
+
+            COMMIT;
+        EOF
+        }
+
+
+        for (( try = 0; try < 60; try++ )); do
+          if ! schema_configured; then
+            sleep 2
+          else
+            update_config
+            exit 0
+          fi
+        done
+
+        echo "Single-node setup failed"
+        exit 1
+      '';
 in
 
 {
@@ -210,6 +248,7 @@ in
       wantedBy = [ "multi-user.target" ];
       requires = lib.mkIf dbIsLocal [ "mysql.service" ];
       after = lib.mkIf dbIsLocal [ "mysql.service" ];
+      restartTriggers = lib.optional cfg.singleNode.enable setupScript;
       environment.RUST_LOG = cfg.logLevel;
       serviceConfig = {
         User = defaultUser;
@@ -255,56 +294,7 @@ in
       requires = [ "firefox-syncserver.service" ] ++ lib.optional dbIsLocal "mysql.service";
       after = [ "firefox-syncserver.service" ] ++ lib.optional dbIsLocal "mysql.service";
       path = [ config.services.mysql.package ];
-      script = ''
-        set -euo pipefail
-        shopt -s inherit_errexit
-
-        schema_configured() {
-          mysql ${cfg.database.name} -Ne 'SHOW TABLES' | grep -q services
-        }
-
-        services_configured() {
-          [ 1 != $(mysql ${cfg.database.name} -Ne 'SELECT COUNT(*) < 1 FROM `services`') ]
-        }
-
-        create_services() {
-          mysql ${cfg.database.name} <<"EOF"
-            BEGIN;
-
-            INSERT INTO `services` (`id`, `service`, `pattern`)
-              VALUES (1, 'sync-1.5', '{node}/1.5/{uid}');
-            INSERT INTO `nodes` (`id`, `service`, `node`, `available`, `current_load`,
-                                 `capacity`, `downed`, `backoff`)
-              VALUES (1, 1, '${cfg.singleNode.url}', ${toString cfg.singleNode.capacity},
-                      0, ${toString cfg.singleNode.capacity}, 0, 0);
-
-            COMMIT;
-        EOF
-        }
-
-        update_nodes() {
-          mysql ${cfg.database.name} <<"EOF"
-            UPDATE `nodes`
-              SET `capacity` = ${toString cfg.singleNode.capacity}
-              WHERE `id` = 1;
-        EOF
-        }
-
-        for (( try = 0; try < 60; try++ )); do
-          if ! schema_configured; then
-            sleep 2
-          elif services_configured; then
-            update_nodes
-            exit 0
-          else
-            create_services
-            exit 0
-          fi
-        done
-
-        echo "Single-node setup failed"
-        exit 1
-      '';
+      serviceConfig.ExecStart = [ "${setupScript}" ];
     };
 
     services.nginx.virtualHosts = lib.mkIf cfg.singleNode.enableNginx {
diff --git a/nixos/modules/services/networking/flannel.nix b/nixos/modules/services/networking/flannel.nix
index c19e51e5aa6c8..6ed4f78ddc92b 100644
--- a/nixos/modules/services/networking/flannel.nix
+++ b/nixos/modules/services/networking/flannel.nix
@@ -92,10 +92,8 @@ in {
         Needed when running with Kubernetes as backend as this cannot be auto-detected";
       '';
       type = types.nullOr types.str;
-      default = with config.networking; (hostName + optionalString (domain != null) ".${domain}");
-      defaultText = literalExpression ''
-        with config.networking; (hostName + optionalString (domain != null) ".''${domain}")
-      '';
+      default = config.networking.fqdnOrHostName;
+      defaultText = literalExpression "config.networking.fqdnOrHostName";
       example = "node1.example.com";
     };
 
diff --git a/nixos/modules/services/networking/jitsi-videobridge.nix b/nixos/modules/services/networking/jitsi-videobridge.nix
index eefaa70604cdd..09f2ddf92c5c7 100644
--- a/nixos/modules/services/networking/jitsi-videobridge.nix
+++ b/nixos/modules/services/networking/jitsi-videobridge.nix
@@ -150,7 +150,7 @@ in
         config = {
           hostName = mkDefault name;
           mucNickname = mkDefault (builtins.replaceStrings [ "." ] [ "-" ] (
-            config.networking.hostName + optionalString (config.networking.domain != null) ".${config.networking.domain}"
+            config.networking.fqdnOrHostName
           ));
         };
       }));
diff --git a/nixos/modules/services/web-apps/bookstack.nix b/nixos/modules/services/web-apps/bookstack.nix
index eeef77727769b..40bb377e2c88a 100644
--- a/nixos/modules/services/web-apps/bookstack.nix
+++ b/nixos/modules/services/web-apps/bookstack.nix
@@ -60,11 +60,8 @@ in {
 
     hostname = lib.mkOption {
       type = lib.types.str;
-      default = if config.networking.domain != null then
-                  config.networking.fqdn
-                else
-                  config.networking.hostName;
-      defaultText = lib.literalExpression "config.networking.fqdn";
+      default = config.networking.fqdnOrHostName;
+      defaultText = lib.literalExpression "config.networking.fqdnOrHostName";
       example = "bookstack.example.com";
       description = lib.mdDoc ''
         The hostname to serve BookStack on.
diff --git a/nixos/modules/services/web-apps/discourse.nix b/nixos/modules/services/web-apps/discourse.nix
index 9ad451f31f743..6500b8cad217b 100644
--- a/nixos/modules/services/web-apps/discourse.nix
+++ b/nixos/modules/services/web-apps/discourse.nix
@@ -42,11 +42,8 @@ in
 
       hostname = lib.mkOption {
         type = lib.types.str;
-        default = if config.networking.domain != null then
-                    config.networking.fqdn
-                  else
-                    config.networking.hostName;
-        defaultText = lib.literalExpression "config.networking.fqdn";
+        default = config.networking.fqdnOrHostName;
+        defaultText = lib.literalExpression "config.networking.fqdnOrHostName";
         example = "discourse.example.com";
         description = lib.mdDoc ''
           The hostname to serve Discourse on.
diff --git a/nixos/modules/services/web-apps/invoiceplane.nix b/nixos/modules/services/web-apps/invoiceplane.nix
index 8f0acbea4ee2f..cccf70295e898 100644
--- a/nixos/modules/services/web-apps/invoiceplane.nix
+++ b/nixos/modules/services/web-apps/invoiceplane.nix
@@ -25,6 +25,7 @@ let
     ENCRYPTION_KEY=
     ENCRYPTION_CIPHER=AES-256
     SETUP_COMPLETED=false
+    REMOVE_INDEXPHP=true
   '';
 
   extraConfig = hostName: cfg: pkgs.writeText "extraConfig.php" ''
@@ -331,7 +332,7 @@ in
           serviceConfig = {
             Type = "oneshot";
             User = user;
-            ExecStart = "${pkgs.curl}/bin/curl --header 'Host: ${hostName}' http://localhost/index.php/invoices/cron/recur/${cfg.cron.key}";
+            ExecStart = "${pkgs.curl}/bin/curl --header 'Host: ${hostName}' http://localhost/invoices/cron/recur/${cfg.cron.key}";
           };
         })
     )) eachSite);
@@ -344,9 +345,8 @@ in
       virtualHosts = mapAttrs' (hostName: cfg: (
         nameValuePair "http://${hostName}" {
           extraConfig = ''
-            root    * ${pkg hostName cfg}
+            root * ${pkg hostName cfg}
             file_server
-
             php_fastcgi unix/${config.services.phpfpm.pools."invoiceplane-${hostName}".socket}
           '';
         }
diff --git a/nixos/modules/services/web-apps/matomo.nix b/nixos/modules/services/web-apps/matomo.nix
index 9e8d85161da76..117d540ba36b1 100644
--- a/nixos/modules/services/web-apps/matomo.nix
+++ b/nixos/modules/services/web-apps/matomo.nix
@@ -12,8 +12,6 @@ let
   phpExecutionUnit = "phpfpm-${pool}";
   databaseService = "mysql.service";
 
-  fqdn = if config.networking.domain != null then config.networking.fqdn else config.networking.hostName;
-
 in {
   imports = [
     (mkRenamedOptionModule [ "services" "piwik" "enable" ] [ "services" "matomo" "enable" ])
@@ -77,11 +75,9 @@ in {
 
       hostname = mkOption {
         type = types.str;
-        default = "${user}.${fqdn}";
+        default = "${user}.${config.networking.fqdnOrHostName}";
         defaultText = literalExpression ''
-          if config.${options.networking.domain} != null
-          then "${user}.''${config.${options.networking.fqdn}}"
-          else "${user}.''${config.${options.networking.hostName}}"
+          "${user}.''${config.${options.networking.fqdnOrHostName}}"
         '';
         example = "matomo.yourdomain.org";
         description = lib.mdDoc ''
diff --git a/nixos/modules/services/web-apps/snipe-it.nix b/nixos/modules/services/web-apps/snipe-it.nix
index e0d2eb8c6ab2a..6da44f1bdf34c 100644
--- a/nixos/modules/services/web-apps/snipe-it.nix
+++ b/nixos/modules/services/web-apps/snipe-it.nix
@@ -54,11 +54,8 @@ in {
 
     hostName = lib.mkOption {
       type = lib.types.str;
-      default = if config.networking.domain != null then
-                  config.networking.fqdn
-                else
-                  config.networking.hostName;
-      defaultText = lib.literalExpression "config.networking.fqdn";
+      default = config.networking.fqdnOrHostName;
+      defaultText = lib.literalExpression "config.networking.fqdnOrHostName";
       example = "snipe-it.example.com";
       description = lib.mdDoc ''
         The hostname to serve Snipe-IT on.
diff --git a/nixos/modules/system/activation/specialisation.nix b/nixos/modules/system/activation/specialisation.nix
new file mode 100644
index 0000000000000..86603c8476419
--- /dev/null
+++ b/nixos/modules/system/activation/specialisation.nix
@@ -0,0 +1,85 @@
+{ config, lib, pkgs, extendModules, noUserModules, ... }:
+
+let
+  inherit (lib)
+    concatStringsSep
+    mapAttrs
+    mapAttrsToList
+    mkOption
+    types
+    ;
+
+  # This attribute is responsible for creating boot entries for
+  # child configuration. They are only (directly) accessible
+  # when the parent configuration is boot default. For example,
+  # you can provide an easy way to boot the same configuration
+  # as you use, but with another kernel
+  # !!! fix this
+  children =
+    mapAttrs
+      (childName: childConfig: childConfig.configuration.system.build.toplevel)
+      config.specialisation;
+
+in
+{
+  options = {
+
+    specialisation = mkOption {
+      default = { };
+      example = lib.literalExpression "{ fewJobsManyCores.configuration = { nix.settings = { core = 0; max-jobs = 1; }; }; }";
+      description = lib.mdDoc ''
+        Additional configurations to build. If
+        `inheritParentConfig` is true, the system
+        will be based on the overall system configuration.
+
+        To switch to a specialised configuration
+        (e.g. `fewJobsManyCores`) at runtime, run:
+
+        ```
+        sudo /run/current-system/specialisation/fewJobsManyCores/bin/switch-to-configuration test
+        ```
+      '';
+      type = types.attrsOf (types.submodule (
+        local@{ ... }:
+        let
+          extend =
+            if local.config.inheritParentConfig
+            then extendModules
+            else noUserModules.extendModules;
+        in
+        {
+          options.inheritParentConfig = mkOption {
+            type = types.bool;
+            default = true;
+            description = lib.mdDoc "Include the entire system's configuration. Set to false to make a completely differently configured system.";
+          };
+
+          options.configuration = mkOption {
+            default = { };
+            description = lib.mdDoc ''
+              Arbitrary NixOS configuration.
+
+              Anything you can add to a normal NixOS configuration, you can add
+              here, including imports and config values, although nested
+              specialisations will be ignored.
+            '';
+            visible = "shallow";
+            inherit (extend { modules = [ ./no-clone.nix ]; }) type;
+          };
+        }
+      ));
+    };
+
+  };
+
+  config = {
+    system.systemBuilderCommands = ''
+      mkdir $out/specialisation
+      ${concatStringsSep "\n"
+      (mapAttrsToList (name: path: "ln -s ${path} $out/specialisation/${name}") children)}
+    '';
+  };
+
+  # uses extendModules to generate a type
+  meta.buildDocsInSandbox = false;
+}
diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix
index b71ddf95dc500..2ff9acd3e2de7 100644
--- a/nixos/modules/system/activation/top-level.nix
+++ b/nixos/modules/system/activation/top-level.nix
@@ -1,21 +1,8 @@
-{ config, lib, pkgs, extendModules, noUserModules, ... }:
+{ config, lib, pkgs, ... }:
 
 with lib;
 
 let
-
-
-  # This attribute is responsible for creating boot entries for
-  # child configuration. They are only (directly) accessible
-  # when the parent configuration is boot default. For example,
-  # you can provide an easy way to boot the same configuration
-  # as you use, but with another kernel
-  # !!! fix this
-  children =
-    mapAttrs
-      (childName: childConfig: childConfig.configuration.system.build.toplevel)
-      config.specialisation;
-
   systemBuilder =
     let
       kernelPath = "${config.boot.kernelPackages.kernel}/" +
@@ -72,15 +59,10 @@ let
       ln -s ${config.system.path} $out/sw
       ln -s "$systemd" $out/systemd
 
-      echo -n "$configurationName" > $out/configuration-name
       echo -n "systemd ${toString config.systemd.package.interfaceVersion}" > $out/init-interface-version
       echo -n "$nixosLabel" > $out/nixos-version
       echo -n "${config.boot.kernelPackages.stdenv.hostPlatform.system}" > $out/system
 
-      mkdir $out/specialisation
-      ${concatStringsSep "\n"
-      (mapAttrsToList (name: path: "ln -s ${path} $out/specialisation/${name}") children)}
-
       mkdir $out/bin
       export localeArchive="${config.i18n.glibcLocales}/lib/locale/locale-archive"
       substituteAll ${./switch-to-configuration.pl} $out/bin/switch-to-configuration
@@ -93,6 +75,8 @@ let
         fi
       ''}
 
+      ${config.system.systemBuilderCommands}
+
       echo -n "${toString config.system.extraDependencies}" > $out/extra-dependencies
 
       ${config.system.extraSystemBuilderCmds}
@@ -103,7 +87,7 @@ let
   # kernel, systemd units, init scripts, etc.) as well as a script
   # `switch-to-configuration' that activates the configuration and
   # makes it bootable.
-  baseSystem = pkgs.stdenvNoCC.mkDerivation {
+  baseSystem = pkgs.stdenvNoCC.mkDerivation ({
     name = "nixos-system-${config.system.name}-${config.system.nixos.label}";
     preferLocalBuild = true;
     allowSubstitutes = false;
@@ -121,11 +105,9 @@ let
     dryActivationScript = config.system.dryActivationScript;
     nixosLabel = config.system.nixos.label;
 
-    configurationName = config.boot.loader.grub.configurationName;
-
     # Needed by switch-to-configuration.
     perl = pkgs.perl.withPackages (p: with p; [ ConfigIniFiles FileSlurp ]);
-  };
+  } // config.system.systemBuilderArgs);
 
   # Handle assertions and warnings
 
@@ -140,16 +122,6 @@ let
       pkgs.replaceDependency { inherit oldDependency newDependency drv; }
     ) baseSystemAssertWarn config.system.replaceRuntimeDependencies;
 
-  /* Workaround until https://github.com/NixOS/nixpkgs/pull/156533
-     Call can be replaced by argument when that's merged.
-  */
-  tmpFixupSubmoduleBoundary = subopts:
-    lib.mkOption {
-      type = lib.types.submoduleWith {
-        modules = [ { options = subopts; } ];
-      };
-    };
-
 in
 
 {
@@ -161,49 +133,6 @@ in
 
   options = {
 
-    specialisation = mkOption {
-      default = {};
-      example = lib.literalExpression "{ fewJobsManyCores.configuration = { nix.settings = { core = 0; max-jobs = 1; }; }; }";
-      description = lib.mdDoc ''
-        Additional configurations to build. If
-        `inheritParentConfig` is true, the system
-        will be based on the overall system configuration.
-
-        To switch to a specialised configuration
-        (e.g. `fewJobsManyCores`) at runtime, run:
-
-        ```
-        sudo /run/current-system/specialisation/fewJobsManyCores/bin/switch-to-configuration test
-        ```
-      '';
-      type = types.attrsOf (types.submodule (
-        local@{ ... }: let
-          extend = if local.config.inheritParentConfig
-            then extendModules
-            else noUserModules.extendModules;
-        in {
-          options.inheritParentConfig = mkOption {
-            type = types.bool;
-            default = true;
-            description = lib.mdDoc "Include the entire system's configuration. Set to false to make a completely differently configured system.";
-          };
-
-          options.configuration = mkOption {
-            default = {};
-            description = lib.mdDoc ''
-              Arbitrary NixOS configuration.
-
-              Anything you can add to a normal NixOS configuration, you can add
-              here, including imports and config values, although nested
-              specialisations will be ignored.
-            '';
-            visible = "shallow";
-            inherit (extend { modules = [ ./no-clone.nix ]; }) type;
-          };
-        })
-      );
-    };
-
     system.boot.loader.id = mkOption {
       internal = true;
       default = "";
@@ -231,7 +160,7 @@ in
       '';
     };
 
-    system.build = tmpFixupSubmoduleBoundary {
+    system.build = {
       installBootLoader = mkOption {
         internal = true;
         # "; true" => make the `$out` argument from switch-to-configuration.pl
@@ -276,6 +205,24 @@ in
       '';
     };
 
+    system.systemBuilderCommands = mkOption {
+      type = types.lines;
+      internal = true;
+      default = "";
+      description = ''
+        This code will be added to the builder creating the system store path.
+      '';
+    };
+
+    system.systemBuilderArgs = mkOption {
+      type = types.attrsOf types.unspecified;
+      internal = true;
+      default = {};
+      description = lib.mdDoc ''
+        `lib.mkDerivation` attributes that will be passed to the top level system builder.
+      '';
+    };
+
     system.extraSystemBuilderCmds = mkOption {
       type = types.lines;
       internal = true;
@@ -357,6 +304,4 @@ in
 
   };
 
-  # uses extendModules to generate a type
-  meta.buildDocsInSandbox = false;
 }
diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix
index 1b075133ff40c..a67b10608aa74 100644
--- a/nixos/modules/system/boot/loader/grub/grub.nix
+++ b/nixos/modules/system/boot/loader/grub/grub.nix
@@ -748,6 +748,11 @@ in
 
       boot.loader.supportsInitrdSecrets = true;
 
+      system.systemBuilderArgs.configurationName = cfg.configurationName;
+      system.systemBuilderCommands = ''
+        echo -n "$configurationName" > $out/configuration-name
+      '';
+
       system.build.installBootLoader =
         let
           install-grub-pl = pkgs.substituteAll {
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 1982175eac94c..b7a4282f9727f 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -473,9 +473,29 @@ in
       defaultText = literalExpression ''"''${networking.hostName}.''${networking.domain}"'';
       description = lib.mdDoc ''
         The fully qualified domain name (FQDN) of this host. It is the result
-        of combining networking.hostName and networking.domain. Using this
+        of combining `networking.hostName` and `networking.domain.` Using this
         option will result in an evaluation error if the hostname is empty or
         no domain is specified.
+
+        Modules that accept a mere `networing.hostName` but prefer a fully qualified
+        domain name may use `networking.fqdnOrHostName` instead.
+      '';
+    };
+
+    networking.fqdnOrHostName = mkOption {
+      readOnly = true;
+      type = types.str;
+      default = if cfg.domain == null then cfg.hostName else cfg.fqdn;
+      defaultText = literalExpression ''
+        if cfg.domain == null then cfg.hostName else cfg.fqdn
+      '';
+      description = lib.mdDoc ''
+        Either the fully qualified domain name (FQDN), or just the host name if
+        it does not exists.
+
+        This is a convenience option for modules to read instead of `fqdn` when
+        a mere `hostName` is also an acceptable value; this option does not
+        throw an error when `domain` is unset.
       '';
     };
 
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index fbbebc2520a3d..4fa102e3fd710 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -671,7 +671,6 @@ in {
   uwsgi = handleTest ./uwsgi.nix {};
   v2ray = handleTest ./v2ray.nix {};
   varnish60 = handleTest ./varnish.nix { package = pkgs.varnish60; };
-  varnish71 = handleTest ./varnish.nix { package = pkgs.varnish71; };
   varnish72 = handleTest ./varnish.nix { package = pkgs.varnish72; };
   vault = handleTest ./vault.nix {};
   vault-dev = handleTest ./vault-dev.nix {};
diff --git a/nixos/tests/invoiceplane.nix b/nixos/tests/invoiceplane.nix
index 260e49db54d33..70ed96ee39f35 100644
--- a/nixos/tests/invoiceplane.nix
+++ b/nixos/tests/invoiceplane.nix
@@ -46,37 +46,37 @@ import ./make-test-python.nix ({ pkgs, ... }:
 
         with subtest("Finish InvoicePlane setup"):
           machine.succeed(
-            f"curl -sSfL --cookie-jar cjar {site_name}/index.php/setup/language"
+            f"curl -sSfL --cookie-jar cjar {site_name}/setup/language"
           )
           csrf_token = machine.succeed(
             "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
           )
           machine.succeed(
-            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&ip_lang=english&btn_continue=Continue' {site_name}/index.php/setup/language"
+            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&ip_lang=english&btn_continue=Continue' {site_name}/setup/language"
           )
           csrf_token = machine.succeed(
             "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
           )
           machine.succeed(
-            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/prerequisites"
+            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/prerequisites"
           )
           csrf_token = machine.succeed(
             "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
           )
           machine.succeed(
-            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/configure_database"
+            f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/configure_database"
           )
           csrf_token = machine.succeed(
             "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
           )
           machine.succeed(
-            f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/install_tables"
+            f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/install_tables"
           )
           csrf_token = machine.succeed(
             "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
           )
           machine.succeed(
-            f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/upgrade_tables"
+            f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/upgrade_tables"
           )
   '';
 })
diff --git a/pkgs/applications/audio/ardour/6.nix b/pkgs/applications/audio/ardour/6.nix
new file mode 100644
index 0000000000000..140d20c2aad5b
--- /dev/null
+++ b/pkgs/applications/audio/ardour/6.nix
@@ -0,0 +1,191 @@
+{ lib, stdenv
+, fetchgit
+, alsa-lib
+, aubio
+, boost
+, cairomm
+, cppunit
+, curl
+, dbus
+, doxygen
+, ffmpeg
+, fftw
+, fftwSinglePrec
+, flac
+, glibc
+, glibmm
+, graphviz
+, gtkmm2
+, harvid
+, itstool
+, libarchive
+, libjack2
+, liblo
+, libogg
+, libpulseaudio
+, librdf_raptor
+, librdf_rasqal
+, libsamplerate
+, libsigcxx
+, libsndfile
+, libusb1
+, libuv
+, libwebsockets
+, libxml2
+, libxslt
+, lilv
+, lrdf
+, lv2
+, makeWrapper
+, pango
+, perl
+, pkg-config
+, python3
+, readline
+, rubberband
+, serd
+, sord
+, soundtouch
+, sratom
+, suil
+, taglib
+, vamp-plugin-sdk
+, wafHook
+, xjadeo
+, videoSupport ? true
+}:
+stdenv.mkDerivation rec {
+  pname = "ardour";
+  version = "6.9";
+
+  # We can't use `fetchFromGitea` here, as attempting to fetch release archives from git.ardour.org
+  # result in an empty archive. See https://tracker.ardour.org/view.php?id=7328 for more info.
+  src = fetchgit {
+    url = "git://git.ardour.org/ardour/ardour.git";
+    rev = version;
+    sha256 = "0vlcbd70y0an881zv87kc3akmaiz4w7whsy3yaiiqqjww35jg1mm";
+  };
+
+  patches = [
+    # AS=as in the environment causes build failure https://tracker.ardour.org/view.php?id=8096
+    ./as-flags.patch
+  ];
+
+  nativeBuildInputs = [
+    doxygen
+    graphviz # for dot
+    itstool
+    makeWrapper
+    perl
+    pkg-config
+    python3
+    wafHook
+  ];
+
+  buildInputs = [
+    alsa-lib
+    aubio
+    boost
+    cairomm
+    cppunit
+    curl
+    dbus
+    ffmpeg
+    fftw
+    fftwSinglePrec
+    flac
+    glibmm
+    gtkmm2
+    itstool
+    libarchive
+    libjack2
+    liblo
+    libogg
+    libpulseaudio
+    librdf_raptor
+    librdf_rasqal
+    libsamplerate
+    libsigcxx
+    libsndfile
+    libusb1
+    libuv
+    libwebsockets
+    libxml2
+    libxslt
+    lilv
+    lrdf
+    lv2
+    pango
+    perl
+    python3
+    readline
+    rubberband
+    serd
+    sord
+    soundtouch
+    sratom
+    suil
+    taglib
+    vamp-plugin-sdk
+  ] ++ lib.optionals videoSupport [ harvid xjadeo ];
+
+  wafConfigureFlags = [
+    "--cxx11"
+    "--docs"
+    "--freedesktop"
+    "--no-phone-home"
+    "--optimize"
+    "--ptformat"
+    "--run-tests"
+    "--test"
+  ];
+  # removed because it fixes https://tracker.ardour.org/view.php?id=8161 and https://tracker.ardour.org/view.php?id=8437
+  # "--use-external-libs"
+
+  # Ardour's wscript requires git revision and date to be available.
+  # Since they are not, let's generate the file manually.
+  postPatch = ''
+    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc
+    sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
+    patchShebangs ./tools/
+    substituteInPlace libs/ardour/video_tools_paths.cc \
+      --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \
+      --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");'
+  '';
+
+  postInstall = ''
+    # wscript does not install these for some reason
+    install -vDm 644 "build/gtk2_ardour/ardour.xml" \
+      -t "$out/share/mime/packages"
+    install -vDm 644 "build/gtk2_ardour/ardour6.desktop" \
+      -t "$out/share/applications"
+    for size in 16 22 32 48 256 512; do
+      install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
+        "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour6.png"
+    done
+    install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
+  '' + lib.optionalString videoSupport ''
+    # `harvid` and `xjadeo` must be accessible in `PATH` for video to work.
+    wrapProgram "$out/bin/ardour6" \
+      --prefix PATH : "${lib.makeBinPath [ harvid xjadeo ]}"
+  '';
+
+  LINKFLAGS = "-lpthread";
+
+  meta = with lib; {
+    description = "Multi-track hard disk recording software";
+    longDescription = ''
+      Ardour is a digital audio workstation (DAW), You can use it to
+      record, edit and mix multi-track audio and midi. Produce your
+      own CDs. Mix video soundtracks. Experiment with new ideas about
+      music and sound.
+
+      Please consider supporting the ardour project financially:
+      https://community.ardour.org/donate
+    '';
+    homepage = "https://ardour.org/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ goibhniu magnetophon mitchmindtree ];
+  };
+}
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index d5afcac86cd48..44b54111fd360 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchgit
+, fetchzip
 , alsa-lib
 , aubio
 , boost
@@ -56,13 +58,21 @@
 }:
 stdenv.mkDerivation rec {
   pname = "ardour";
-  version = "6.9";
+  version = "7.1";
 
-  # don't fetch releases from the GitHub mirror, they are broken
+  # We can't use `fetchFromGitea` here, as attempting to fetch release archives from git.ardour.org
+  # result in an empty archive. See https://tracker.ardour.org/view.php?id=7328 for more info.
   src = fetchgit {
     url = "git://git.ardour.org/ardour/ardour.git";
     rev = version;
-    sha256 = "0vlcbd70y0an881zv87kc3akmaiz4w7whsy3yaiiqqjww35jg1mm";
+    hash = "sha256-eLF9n71tjdPA+ks0B8UonmPZqRgcZEA7ok79+m9PioU=";
+  };
+
+  bundledContent = fetchzip {
+    url = "https://web.archive.org/web/20221026200824/http://stuff.ardour.org/loops/ArdourBundledMedia.zip";
+    hash = "sha256-IbPQWFeyMuvCoghFl1ZwZNNcSvLNsH84rGArXnw+t7A=";
+    # archive does not contain a single folder at the root
+    stripRoot = false;
   };
 
   patches = [
@@ -70,6 +80,17 @@ stdenv.mkDerivation rec {
     ./as-flags.patch
   ];
 
+  # Ardour's wscript requires git revision and date to be available.
+  # Since they are not, let's generate the file manually.
+  postPatch = ''
+    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc
+    sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
+    patchShebangs ./tools/
+    substituteInPlace libs/ardour/video_tools_paths.cc \
+      --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \
+      --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");'
+  '';
+
   nativeBuildInputs = [
     doxygen
     graphviz # for dot
@@ -141,31 +162,23 @@ stdenv.mkDerivation rec {
   # removed because it fixes https://tracker.ardour.org/view.php?id=8161 and https://tracker.ardour.org/view.php?id=8437
   # "--use-external-libs"
 
-  # Ardour's wscript requires git revision and date to be available.
-  # Since they are not, let's generate the file manually.
-  postPatch = ''
-    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc
-    sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
-    patchShebangs ./tools/
-    substituteInPlace libs/ardour/video_tools_paths.cc \
-      --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \
-      --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");'
-  '';
-
   postInstall = ''
     # wscript does not install these for some reason
     install -vDm 644 "build/gtk2_ardour/ardour.xml" \
       -t "$out/share/mime/packages"
-    install -vDm 644 "build/gtk2_ardour/ardour6.desktop" \
+    install -vDm 644 "build/gtk2_ardour/ardour${lib.versions.major version}.desktop" \
       -t "$out/share/applications"
     for size in 16 22 32 48 256 512; do
       install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
-        "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour6.png"
+        "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour${lib.versions.major version}.png"
     done
     install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
+
+    # install additional bundled beats, chords and progressions
+    cp -rp "${bundledContent}"/* "$out/share/ardour${lib.versions.major version}/media"
   '' + lib.optionalString videoSupport ''
     # `harvid` and `xjadeo` must be accessible in `PATH` for video to work.
-    wrapProgram "$out/bin/ardour6" \
+    wrapProgram "$out/bin/ardour${lib.versions.major version}" \
       --prefix PATH : "${lib.makeBinPath [ harvid xjadeo ]}"
   '';
 
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index 5e583bf64727f..47bfcf8b8c06e 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -4,6 +4,7 @@
 , fetchpatch
 , cmake
 , makeWrapper
+, wrapGAppsHook
 , pkg-config
 , python3
 , gettext
@@ -91,6 +92,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     makeWrapper
+    wrapGAppsHook
   ] ++ optionals stdenv.isLinux [
     linuxHeaders
   ];
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index cfa831ab525af..5b1fbbb2d7df1 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.60";
+  version = "1.61";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    sha256 = "sha256-6/9NaQSRNGnuIivIeWi/dOBSOzxhZYghy7zvdB5i500=";
+    sha256 = "sha256-dm+l+CECsr3TzL1ZGAqW+NLQXNh5JRtdYVROKOjKMXY=";
   };
 
   # Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix
index 9389d2d5e68f2..38e96c7f098e5 100644
--- a/pkgs/applications/audio/musikcube/default.nix
+++ b/pkgs/applications/audio/musikcube/default.nix
@@ -36,6 +36,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-pnAdlCCqWzR0W8dF9CE48K8yHMVIx3egZlXvibxU18A=";
   };
 
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [
     cmake
     pkg-config
diff --git a/pkgs/applications/blockchains/sparrow/default.nix b/pkgs/applications/blockchains/sparrow/default.nix
index e3b54a7465634..9a184bed83a53 100644
--- a/pkgs/applications/blockchains/sparrow/default.nix
+++ b/pkgs/applications/blockchains/sparrow/default.nix
@@ -5,7 +5,7 @@
 , makeDesktopItem
 , copyDesktopItems
 , autoPatchelfHook
-, openjdk17
+, openjdk18
 , gtk3
 , gsettings-desktop-schemas
 , writeScript
@@ -20,11 +20,11 @@
 
 let
   pname = "sparrow";
-  version = "1.6.5";
+  version = "1.7.0";
 
   src = fetchurl {
-    url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0zk33w664fky3ir6cqm6walc80fjhg9s0hnrllrc2hrxrqnrn88p";
+    url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-x86_64.tar.gz";
+    sha256 = "1rrf5xba733c2vxgd7bf164iswc66ggp64ywh79d0vf188imzmwr";
   };
 
   launcher = writeScript "sparrow" ''
@@ -60,7 +60,7 @@ let
       -m com.sparrowwallet.sparrow
     )
 
-    XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS ${openjdk17}/bin/java ''${params[@]} $@
+    XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS ${openjdk18}/bin/java ''${params[@]} $@
   '';
 
   torWrapper = writeScript "tor-wrapper" ''
@@ -71,14 +71,14 @@ let
 
   jdk-modules = stdenv.mkDerivation {
     name = "jdk-modules";
-    nativeBuildInputs = [ openjdk17 ];
+    nativeBuildInputs = [ openjdk18 ];
     dontUnpack = true;
 
     buildPhase = ''
       # Extract the JDK's JIMAGE and generate a list of modules.
       mkdir modules
       pushd modules
-      jimage extract ${openjdk17}/lib/openjdk/lib/modules
+      jimage extract ${openjdk18}/lib/openjdk/lib/modules
       ls | xargs -d " " -- echo > ../manifest.txt
       popd
     '';
@@ -93,7 +93,7 @@ let
   sparrow-modules = stdenv.mkDerivation {
     pname = "sparrow-modules";
     inherit version src;
-    nativeBuildInputs = [ makeWrapper gnugrep openjdk17 autoPatchelfHook stdenv.cc.cc.lib zlib ];
+    nativeBuildInputs = [ makeWrapper gnugrep openjdk18 autoPatchelfHook stdenv.cc.cc.lib zlib ];
 
     buildPhase = ''
       # Extract Sparrow's JIMAGE and generate a list of them.
@@ -187,6 +187,7 @@ stdenv.mkDerivation rec {
       desktopName = "Sparrow Bitcoin Wallet";
       genericName = "Bitcoin Wallet";
       categories = [ "Finance" ];
+      mimeTypes = [ "application/psbt" "application/bitcoin-transaction" "x-scheme-handler/bitcoin" "x-scheme-handler/auth47" "x-scheme-handler/lightning" ];
     })
   ];
 
@@ -222,6 +223,8 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "A modern desktop Bitcoin wallet application supporting most hardware wallets and built on common standards such as PSBT, with an emphasis on transparency and usability.";
     homepage = "https://sparrowwallet.com";
diff --git a/pkgs/applications/blockchains/sparrow/update.sh b/pkgs/applications/blockchains/sparrow/update.sh
new file mode 100755
index 0000000000000..bda8b0765aede
--- /dev/null
+++ b/pkgs/applications/blockchains/sparrow/update.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p coreutils curl jq gnused gnupg common-updater-scripts
+
+set -eu -o pipefail
+
+version="$(curl -s https://api.github.com/repos/sparrowwallet/sparrow/releases| jq '.[] | {name} | limit(1;.[])' | sed 's/[\"v]//g' | head -n 1)"
+depname="sparrow-$version-x86_64.tar.gz"
+src_root="https://github.com/sparrowwallet/sparrow/releases/download/$version";
+src="$src_root/$depname";
+manifest="$src_root/sparrow-$version-manifest.txt"
+signature="$src_root/sparrow-$version-manifest.txt.asc"
+key="D4D0 D320 2FC0 6849 A257 B38D E946 1833 4C67 4B40"
+
+pushd $(mktemp -d --suffix=-sparrow-updater)
+export GNUPGHOME=$PWD/gnupg
+mkdir -m 700 -p "$GNUPGHOME"
+curl -L -o "$depname" -- "$src"
+curl -L -o manifest.txt -- "$manifest"
+curl -L -o signature.asc -- "$signature"
+gpg --batch --recv-keys "$key"
+gpg --batch --verify signature.asc manifest.txt
+sha256sum -c --ignore-missing manifest.txt
+sha256=$(nix-prefetch-url --type sha256 "file://$PWD/$depname")
+popd
+
+update-source-version sparrow "$version" "$sha256"
diff --git a/pkgs/applications/editors/cudatext/default.nix b/pkgs/applications/editors/cudatext/default.nix
index af60ffc9e589a..7af47c46485a3 100644
--- a/pkgs/applications/editors/cudatext/default.nix
+++ b/pkgs/applications/editors/cudatext/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "cudatext";
-  version = "1.175.0";
+  version = "1.176.0";
 
   src = fetchFromGitHub {
     owner = "Alexey-T";
     repo = "CudaText";
     rev = version;
-    hash = "sha256-Q4T4CmMK+sxOst18pW4L4uMYzc/heMetntM0L+HrSlo=";
+    hash = "sha256-7J/FAcmZYmgbmYEFm2V3+RBUcLE+8A+yOiJd/xp2Aww=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/editors/cudatext/deps.json b/pkgs/applications/editors/cudatext/deps.json
index 9ea04447272f4..4ae432b946a7a 100644
--- a/pkgs/applications/editors/cudatext/deps.json
+++ b/pkgs/applications/editors/cudatext/deps.json
@@ -11,13 +11,13 @@
   },
   "ATFlatControls": {
     "owner": "Alexey-T",
-    "rev": "2022.11.03",
-    "hash": "sha256-U6jF+gXFOuPY512y4KWL18q8rZlfNwGqB9fTUHAHXl8="
+    "rev": "2022.11.09",
+    "hash": "sha256-2Q1azfhThrk1t65Q+2aRr00V0UFrvR+z5oVMeW9c2ug="
   },
   "ATSynEdit": {
     "owner": "Alexey-T",
-    "rev": "2022.11.03",
-    "hash": "sha256-BLKzmkIopcvbngQFWS+f1MQfMBOpZ9S2qch7cDGY7/0="
+    "rev": "2022.11.09",
+    "hash": "sha256-rgXVOWmmc1ap/fCiXCvn34rhUbNRoMHbTXXYtnxk2pQ="
   },
   "ATSynEdit_Cmp": {
     "owner": "Alexey-T",
diff --git a/pkgs/applications/editors/gnome-latex/default.nix b/pkgs/applications/editors/gnome-latex/default.nix
index 3a4760265d12b..156e8eaac7e76 100644
--- a/pkgs/applications/editors/gnome-latex/default.nix
+++ b/pkgs/applications/editors/gnome-latex/default.nix
@@ -21,12 +21,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.41.2";
+  version = "3.42.0";
   pname = "gnome-latex";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "8xDwoUUEmfDP92y5+cXWaZGpUGH6s9bmcMSlZHOF1jM=";
+    sha256 = "ASMecEE3WNGu1pYNqhoigfqRNaYFkQuodM7VMn3LhUM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/sublime/4/packages.nix b/pkgs/applications/editors/sublime/4/packages.nix
index 5d03b20837281..512ac86210aa8 100644
--- a/pkgs/applications/editors/sublime/4/packages.nix
+++ b/pkgs/applications/editors/sublime/4/packages.nix
@@ -11,9 +11,9 @@ in
     } {};
 
     sublime4-dev = common {
-      buildVersion = "4137";
+      buildVersion = "4141";
       dev = true;
-      x64sha256 = "oGBPoqVwTIQfIzh/8fEOOrZkrbzT0tG23ASeHbN/OMk=";
-      aarch64sha256 = "7mqYSoggfrcRoDh+QfA4rW0qvF2ZpiUY5yVxhxZKsfE=";
+      x64sha256 = "eFo9v4hSrp1gV56adVyFB9sOApOXlKNvVBW0wbFYG4g=";
+      aarch64sha256 = "MmwSptvSH507+X9GT8GC4tzZFzEfT2pKc+/Qu5SbMkM=";
     } {};
   }
diff --git a/pkgs/applications/emulators/np2kai/default.nix b/pkgs/applications/emulators/np2kai/default.nix
index cf55085b78a19..4e2f01ade369a 100644
--- a/pkgs/applications/emulators/np2kai/default.nix
+++ b/pkgs/applications/emulators/np2kai/default.nix
@@ -124,7 +124,7 @@ stdenv.mkDerivation rec {
 
   configurePhase = ''
     export GIT_VERSION=${builtins.substring 0 7 src.rev}
-    buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES"
+    buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES}"
   '' + optionalString enableX11 ''
     cd x11
     substituteInPlace Makefile.am \
diff --git a/pkgs/applications/file-managers/mucommander/default.nix b/pkgs/applications/file-managers/mucommander/default.nix
index a91bb273f3e68..5e474f81f1877 100644
--- a/pkgs/applications/file-managers/mucommander/default.nix
+++ b/pkgs/applications/file-managers/mucommander/default.nix
@@ -1,86 +1,109 @@
-{ lib, stdenv, fetchFromGitHub, gradle_6, perl, makeWrapper, jdk11, gsettings-desktop-schemas }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, gradle_7
+, perl
+, makeWrapper
+, writeText
+, jdk11
+, gsettings-desktop-schemas
+}:
 
 let
-  version = "0.9.3-3";
+  version = "1.1.0-1";
 
   src = fetchFromGitHub {
     owner = "mucommander";
     repo = "mucommander";
     rev = version;
-    sha256 = "1zhglsx3b5k6np3ppfkkrqz9wg0j7ip598xxfgn75gjl020w0can";
+    sha256 = "sha256-sCBbY3aBSuJmyOuy36pg8X2jX6hXwW8SW2UzYyp/isM=";
   };
 
   postPatch = ''
     # there is no .git anyway
     substituteInPlace build.gradle \
-      --replace "git = org.ajoberstar.grgit.Grgit.open(file('.'))"  "" \
-      --replace "revision = git.head().id"                          "revision = 'abcdefgh'" \
-      --replace "proguard.enabled =" "// proguard.enabled =" \
-      --replace "version = '0.9.4'" "version = '${version}'"
-
-    # disable gradle plugins with native code and their targets
-    perl -i.bak1 -pe "s#(^\s*id '.+' version '.+'$)#// \1#" build.gradle
-    perl -i.bak2 -pe "s#(.*)#// \1# if /^(buildscript|task portable|task nsis|task proguard|task tgz|task\(afterEclipseImport\)|launch4j|macAppBundle|buildRpm|buildDeb|shadowJar)/ ... /^}/" build.gradle
-
-    # fix source encoding
-    find . -type f -name build.gradle \
-      -exec perl -i.bak3 -pe "s#(repositories\.jcenter\(\))#
-                                \1
-                                compileJava.options.encoding = 'UTF-8'
-                                compileTestJava.options.encoding = 'UTF-8'
-                               #" {} \;
+      --replace "git = grgit.open(dir: project.rootDir)" "" \
+      --replace "id 'org.ajoberstar.grgit' version '3.1.1'" "" \
+      --replace "revision = git.head().id" "revision = '${version}'"
   '';
 
   # fake build to pre-download deps into fixed-output derivation
   deps = stdenv.mkDerivation {
     pname = "mucommander-deps";
     inherit version src postPatch;
-    nativeBuildInputs = [ gradle_6 perl ];
+    nativeBuildInputs = [ gradle_7 perl ];
     buildPhase = ''
       export GRADLE_USER_HOME=$(mktemp -d)
-      gradle --no-daemon build
+      gradle --no-daemon tgz
     '';
     # perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
+    # reproducible by sorting
     installPhase = ''
       find $GRADLE_USER_HOME/caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \
+        | LC_ALL=C sort \
         | perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \
         | sh
+      # copy maven-metadata.xml for commons-codec
+      # thankfully there is only one xml
+      cp $GRADLE_USER_HOME/caches/modules-2/resources-2.1/*/*/maven-metadata.xml $out/commons-codec/commons-codec/maven-metadata.xml
     '';
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "1v5a76pvk7llbyv2rg50wlxc2wf468l2cslz1vi20aihycbyky7j";
+    outputHash = "sha256-15ThPkvcmOfa5m/HMJzjrOOUi/BYbd57p5bBfj5/3n4=";
   };
 
-in stdenv.mkDerivation {
+in
+stdenv.mkDerivation rec {
   pname = "mucommander";
   inherit version src postPatch;
-  nativeBuildInputs = [ gradle_6 perl makeWrapper ];
+  nativeBuildInputs = [ gradle_7 perl makeWrapper ];
+
+  # Point to our local deps repo
+  gradleInit = writeText "init.gradle" ''
+    logger.lifecycle 'Replacing Maven repositories with ${deps}...'
+    gradle.projectsLoaded {
+      rootProject.allprojects {
+        buildscript {
+          repositories {
+            clear()
+            maven { url '${deps}' }
+          }
+        }
+        repositories {
+          clear()
+          maven { url '${deps}' }
+        }
+      }
+    }
+    settingsEvaluated { settings ->
+      settings.pluginManagement {
+        repositories {
+          maven { url '${deps}' }
+        }
+      }
+    }
+  '';
 
   buildPhase = ''
     export GRADLE_USER_HOME=$(mktemp -d)
 
-    # point to offline repo
-    find . -type f -name build.gradle \
-      -exec perl -i.bak3 -pe "s#repositories\.jcenter\(\)#
-                                repositories { mavenLocal(); maven { url '${deps}' } }
-                               #" {} \;
-
-    gradle --offline --no-daemon distTar
+    gradle --offline --init-script ${gradleInit} --no-daemon tgz
   '';
 
   installPhase = ''
-    mkdir $out
-    tar xvf build/distributions/mucommander-${version}.tar --directory=$out --strip=1
-    wrapProgram $out/bin/mucommander \
+    mkdir -p $out/share/mucommander
+    tar xvf build/distributions/mucommander-*.tgz --directory=$out/share/mucommander
+
+    makeWrapper $out/share/mucommander/mucommander.sh $out/bin/mucommander \
       --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name} \
       --set JAVA_HOME ${jdk11}
   '';
 
   meta = with lib; {
-    homepage = "http://www.mucommander.com/";
+    homepage = "https://www.mucommander.com/";
     description = "Cross-platform file manager";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ jiegec ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/graphics/hdr-plus/default.nix b/pkgs/applications/graphics/hdr-plus/default.nix
deleted file mode 100644
index 55411e92f7f95..0000000000000
--- a/pkgs/applications/graphics/hdr-plus/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchFromGitHub
-, cmake, halide
-, libpng, libjpeg, libtiff, libraw
-}:
-
-stdenv.mkDerivation rec {
-  pname = "hdr-plus";
-  version = "unstable-2021-12-10";
-
-  src = fetchFromGitHub {
-    owner = "timothybrooks";
-    repo = "hdr-plus";
-    rev = "0ab70564493bdbcd5aca899b5885505d0c824435";
-    sha256 = "sha256-QV8bGxkwFpbNzJG4kmrWwFQxUo2XzLPnoI1e32UmM6g=";
-  };
-
-  nativeBuildInputs = [ cmake ];
-
-  buildInputs = [ halide libpng libjpeg libtiff libraw ];
-
-  installPhase = ''
-    for bin in hdrplus stack_frames; do
-      install -Dm755 $bin $out/bin/$bin
-    done
-  '';
-
-  meta = with lib; {
-    description = "Burst photography pipeline based on Google's HDR+";
-    homepage = "https://www.timothybrooks.com/tech/hdr-plus/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ OPNA2608 ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/applications/kde/akonadi-import-wizard.nix b/pkgs/applications/kde/akonadi-import-wizard.nix
index 948f9e5d2a23e..370f77c383181 100644
--- a/pkgs/applications/kde/akonadi-import-wizard.nix
+++ b/pkgs/applications/kde/akonadi-import-wizard.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "akonadi-import-wizard";
   meta = {
-    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/akonadi-notes.nix b/pkgs/applications/kde/akonadi-notes.nix
index 6db7e00be9b0c..1ab0ca74819f3 100644
--- a/pkgs/applications/kde/akonadi-notes.nix
+++ b/pkgs/applications/kde/akonadi-notes.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "akonadi-notes";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/akonadi-search.nix b/pkgs/applications/kde/akonadi-search.nix
index 495b63abd4435..84657177f891f 100644
--- a/pkgs/applications/kde/akonadi-search.nix
+++ b/pkgs/applications/kde/akonadi-search.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "akonadi-search";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/akonadiconsole.nix b/pkgs/applications/kde/akonadiconsole.nix
index 76e5ca480b47f..bb0b8424b4e47 100644
--- a/pkgs/applications/kde/akonadiconsole.nix
+++ b/pkgs/applications/kde/akonadiconsole.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "akonadiconsole";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/akregator.nix b/pkgs/applications/kde/akregator.nix
index 9cb23ad35ac5f..714f636341da8 100644
--- a/pkgs/applications/kde/akregator.nix
+++ b/pkgs/applications/kde/akregator.nix
@@ -14,7 +14,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/akregator/";
     description = "KDE feed reader";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/calendarsupport.nix b/pkgs/applications/kde/calendarsupport.nix
index 24f93ee0af753..c6a4e36c82d4d 100644
--- a/pkgs/applications/kde/calendarsupport.nix
+++ b/pkgs/applications/kde/calendarsupport.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "calendarsupport";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/dolphin.nix b/pkgs/applications/kde/dolphin.nix
index b70f4977f587b..9e4ab1d41027c 100644
--- a/pkgs/applications/kde/dolphin.nix
+++ b/pkgs/applications/kde/dolphin.nix
@@ -13,7 +13,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/dolphin/";
     description = "KDE file manager";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = [ lib.maintainers.ttuegel ];
     broken = lib.versionOlder qtbase.version "5.14";
   };
diff --git a/pkgs/applications/kde/dragon.nix b/pkgs/applications/kde/dragon.nix
index 4fb5583a8ff99..399205da6caaf 100644
--- a/pkgs/applications/kde/dragon.nix
+++ b/pkgs/applications/kde/dragon.nix
@@ -11,7 +11,7 @@ mkDerivation {
   pname = "dragon";
   meta = {
     homepage = "https://apps.kde.org/dragonplayer/";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     description = "A simple media player for KDE";
     maintainers = [ lib.maintainers.jonathanreeve ];
   };
diff --git a/pkgs/applications/kde/eventviews.nix b/pkgs/applications/kde/eventviews.nix
index 1a6cc9442b96b..001c1e6cbcb92 100644
--- a/pkgs/applications/kde/eventviews.nix
+++ b/pkgs/applications/kde/eventviews.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "eventviews";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index b0d3b44600d3c..97cbb33a03776 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/release-service/22.08.2/src -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/release-service/22.08.3/src -A '*.tar.xz' )
diff --git a/pkgs/applications/kde/grantleetheme/default.nix b/pkgs/applications/kde/grantleetheme/default.nix
index 517cb072f74d6..6d29d6e6d8c10 100644
--- a/pkgs/applications/kde/grantleetheme/default.nix
+++ b/pkgs/applications/kde/grantleetheme/default.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "grantleetheme";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
     broken = lib.versionOlder qtbase.version "5.13.0";
   };
diff --git a/pkgs/applications/kde/gwenview.nix b/pkgs/applications/kde/gwenview.nix
index 36d46f43966d3..545b1a2b69e78 100644
--- a/pkgs/applications/kde/gwenview.nix
+++ b/pkgs/applications/kde/gwenview.nix
@@ -11,7 +11,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/gwenview/";
     description = "KDE image viewer";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/incidenceeditor.nix b/pkgs/applications/kde/incidenceeditor.nix
index 7f2c284ad74df..9c248f199a5d2 100644
--- a/pkgs/applications/kde/incidenceeditor.nix
+++ b/pkgs/applications/kde/incidenceeditor.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "incidenceeditor";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kaddressbook.nix b/pkgs/applications/kde/kaddressbook.nix
index 1a800525255cd..441a150ee170e 100644
--- a/pkgs/applications/kde/kaddressbook.nix
+++ b/pkgs/applications/kde/kaddressbook.nix
@@ -12,7 +12,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kaddressbook/";
     description = "KDE contact manager";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kcalutils.nix b/pkgs/applications/kde/kcalutils.nix
index 21e84dff05ff9..7da9739aad1d6 100644
--- a/pkgs/applications/kde/kcalutils.nix
+++ b/pkgs/applications/kde/kcalutils.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "kcalutils";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kdepim-runtime/default.nix b/pkgs/applications/kde/kdepim-runtime/default.nix
index 0cc78c69aec7f..b5158bfd15491 100644
--- a/pkgs/applications/kde/kdepim-runtime/default.nix
+++ b/pkgs/applications/kde/kdepim-runtime/default.nix
@@ -12,7 +12,7 @@
 mkDerivation {
   pname = "kdepim-runtime";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools shared-mime-info ];
diff --git a/pkgs/applications/kde/kdialog.nix b/pkgs/applications/kde/kdialog.nix
index 015c86bc7d124..ea7393e72261b 100644
--- a/pkgs/applications/kde/kdialog.nix
+++ b/pkgs/applications/kde/kdialog.nix
@@ -10,7 +10,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kdialog/";
     description = "Display dialog boxes from shell scripts";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = with lib.maintainers; [ peterhoeg ];
   };
 
diff --git a/pkgs/applications/kde/keditbookmarks.nix b/pkgs/applications/kde/keditbookmarks.nix
index 9deb1a3c01588..8bc0ec8736130 100644
--- a/pkgs/applications/kde/keditbookmarks.nix
+++ b/pkgs/applications/kde/keditbookmarks.nix
@@ -10,7 +10,7 @@ mkDerivation {
   buildInputs = [ kio kparts kwindowsystem ];
   meta = with lib; {
     homepage = "http://www.kde.org";
-    license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
+    license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ];
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/kde/kidentitymanagement.nix b/pkgs/applications/kde/kidentitymanagement.nix
index 789206a16390c..c2f2abcd32d01 100644
--- a/pkgs/applications/kde/kidentitymanagement.nix
+++ b/pkgs/applications/kde/kidentitymanagement.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "kidentitymanagement";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kimap.nix b/pkgs/applications/kde/kimap.nix
index e93804bd885da..ece32e3ee0571 100644
--- a/pkgs/applications/kde/kimap.nix
+++ b/pkgs/applications/kde/kimap.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kimap";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kldap.nix b/pkgs/applications/kde/kldap.nix
index 69849f757514d..6016cfd090c83 100644
--- a/pkgs/applications/kde/kldap.nix
+++ b/pkgs/applications/kde/kldap.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kldap";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kleopatra.nix b/pkgs/applications/kde/kleopatra.nix
index b3444e97532f8..a02e7b08aa651 100644
--- a/pkgs/applications/kde/kleopatra.nix
+++ b/pkgs/applications/kde/kleopatra.nix
@@ -18,7 +18,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kleopatra/";
     description = "Certificate manager and unified crypto GUI";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
 }
diff --git a/pkgs/applications/kde/kmail-account-wizard.nix b/pkgs/applications/kde/kmail-account-wizard.nix
index c0ab4ff947e9c..216586076aeca 100644
--- a/pkgs/applications/kde/kmail-account-wizard.nix
+++ b/pkgs/applications/kde/kmail-account-wizard.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "kmail-account-wizard";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools shared-mime-info ];
diff --git a/pkgs/applications/kde/kmail.nix b/pkgs/applications/kde/kmail.nix
index 341d54a6388a5..6a71529eb0f16 100644
--- a/pkgs/applications/kde/kmail.nix
+++ b/pkgs/applications/kde/kmail.nix
@@ -55,7 +55,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kmail2/";
     description = "Mail client";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kmailtransport.nix b/pkgs/applications/kde/kmailtransport.nix
index 976bd634e66a1..577beb8d5ec8e 100644
--- a/pkgs/applications/kde/kmailtransport.nix
+++ b/pkgs/applications/kde/kmailtransport.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "kmailtransport";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kmbox.nix b/pkgs/applications/kde/kmbox.nix
index 6f3db970b942b..d2b4dbde8ac40 100644
--- a/pkgs/applications/kde/kmbox.nix
+++ b/pkgs/applications/kde/kmbox.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kmbox";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kmix.nix b/pkgs/applications/kde/kmix.nix
index 2f85454eb67ea..352fd129ce945 100644
--- a/pkgs/applications/kde/kmix.nix
+++ b/pkgs/applications/kde/kmix.nix
@@ -10,7 +10,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kmix/";
     description = "Sound mixer";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = [ lib.maintainers.rongcuid ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kmousetool.nix b/pkgs/applications/kde/kmousetool.nix
index fb4323455b795..4bac765dc4b9a 100644
--- a/pkgs/applications/kde/kmousetool.nix
+++ b/pkgs/applications/kde/kmousetool.nix
@@ -28,7 +28,7 @@ mkDerivation {
   meta = {
     homepage = "https://github.com/KDE/kmousetool";
     description = "Program that clicks the mouse for you";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = [ lib.maintainers.jayesh-bhoot ];
   };
 }
diff --git a/pkgs/applications/kde/kmplot.nix b/pkgs/applications/kde/kmplot.nix
index a6784982580f0..9f1ab4d281190 100644
--- a/pkgs/applications/kde/kmplot.nix
+++ b/pkgs/applications/kde/kmplot.nix
@@ -7,7 +7,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kmplot/";
     description = "Mathematical function plotter";
-    license = with lib.licenses; [ gpl2Plus fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = [ lib.maintainers.orivej ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix
index 23cbdf28477dc..220cd6a16d573 100644
--- a/pkgs/applications/kde/konsole.nix
+++ b/pkgs/applications/kde/konsole.nix
@@ -12,7 +12,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/konsole/";
     description = "KDE terminal emulator";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = with lib.maintainers; [ ttuegel turion ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kontact.nix b/pkgs/applications/kde/kontact.nix
index dbdc5ba474b1c..b8ccd9415efb7 100644
--- a/pkgs/applications/kde/kontact.nix
+++ b/pkgs/applications/kde/kontact.nix
@@ -12,7 +12,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/kontact/";
     description = "Personal information manager";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kontactinterface.nix b/pkgs/applications/kde/kontactinterface.nix
index 858addcd3ffa2..b680a088a6ea9 100644
--- a/pkgs/applications/kde/kontactinterface.nix
+++ b/pkgs/applications/kde/kontactinterface.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kontactinterface";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/korganizer.nix b/pkgs/applications/kde/korganizer.nix
index 3eafd80cacf67..36edffb4eabdb 100644
--- a/pkgs/applications/kde/korganizer.nix
+++ b/pkgs/applications/kde/korganizer.nix
@@ -15,7 +15,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/korganizer/";
     description = "Personal organizer";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/kpat.nix b/pkgs/applications/kde/kpat.nix
index 96bd6dd542ece..3d480db6bc13f 100644
--- a/pkgs/applications/kde/kpat.nix
+++ b/pkgs/applications/kde/kpat.nix
@@ -21,7 +21,7 @@ mkDerivation {
     freecell-solver
   ];
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = with lib.maintainers; [ rnhmjoj ];
   };
 }
diff --git a/pkgs/applications/kde/kpimtextedit.nix b/pkgs/applications/kde/kpimtextedit.nix
index 2948075f6963f..e42c25e7463d0 100644
--- a/pkgs/applications/kde/kpimtextedit.nix
+++ b/pkgs/applications/kde/kpimtextedit.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "kpimtextedit";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
     broken = lib.versionOlder qtbase.version "5.13.0";
   };
diff --git a/pkgs/applications/kde/kqtquickcharts.nix b/pkgs/applications/kde/kqtquickcharts.nix
index 669a38e37ca63..0560fc9da01df 100644
--- a/pkgs/applications/kde/kqtquickcharts.nix
+++ b/pkgs/applications/kde/kqtquickcharts.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kqtquickcharts";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/pkgs/applications/kde/krdc.nix b/pkgs/applications/kde/krdc.nix
index 8049c6d11b495..9d9762523d974 100644
--- a/pkgs/applications/kde/krdc.nix
+++ b/pkgs/applications/kde/krdc.nix
@@ -19,7 +19,7 @@ mkDerivation {
   meta = with lib; {
     homepage = "http://www.kde.org";
     description = "Remote desktop client";
-    license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
+    license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ];
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
     broken = lib.versionOlder qtbase.version "5.14";
diff --git a/pkgs/applications/kde/krfb.nix b/pkgs/applications/kde/krfb.nix
index 807b3508b95ab..8262febad7afb 100644
--- a/pkgs/applications/kde/krfb.nix
+++ b/pkgs/applications/kde/krfb.nix
@@ -11,7 +11,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/krfb/";
     description = "Desktop sharing (VNC)";
-    license = with lib.licenses; [ gpl2 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus fdl12Plus ];
     maintainers = with lib.maintainers; [ jerith666 ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/ksmtp/default.nix b/pkgs/applications/kde/ksmtp/default.nix
index 3bf80f4abf528..1e5a43f352132 100644
--- a/pkgs/applications/kde/ksmtp/default.nix
+++ b/pkgs/applications/kde/ksmtp/default.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "ksmtp";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/ktnef.nix b/pkgs/applications/kde/ktnef.nix
index 4a29acd1e7cfa..fec85644aa715 100644
--- a/pkgs/applications/kde/ktnef.nix
+++ b/pkgs/applications/kde/ktnef.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "ktnef";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/libgravatar.nix b/pkgs/applications/kde/libgravatar.nix
index 51e3391b8e772..2055d7bd36b39 100644
--- a/pkgs/applications/kde/libgravatar.nix
+++ b/pkgs/applications/kde/libgravatar.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "libgravatar";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/libkdepim.nix b/pkgs/applications/kde/libkdepim.nix
index cc0c15a9e060f..5fafd2e1effc2 100644
--- a/pkgs/applications/kde/libkdepim.nix
+++ b/pkgs/applications/kde/libkdepim.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "libkdepim";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/libkgapi.nix b/pkgs/applications/kde/libkgapi.nix
index 979ca7e2f458d..de0be7ea49ad1 100644
--- a/pkgs/applications/kde/libkgapi.nix
+++ b/pkgs/applications/kde/libkgapi.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "libkgapi";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
     broken = lib.versionOlder qtbase.version "5.14.0";
   };
diff --git a/pkgs/applications/kde/libkleo.nix b/pkgs/applications/kde/libkleo.nix
index dd17345c5f17a..0cd858ea6e0a0 100644
--- a/pkgs/applications/kde/libkleo.nix
+++ b/pkgs/applications/kde/libkleo.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "libkleo";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/libksieve.nix b/pkgs/applications/kde/libksieve.nix
index 209647a4791fa..adc232f091d68 100644
--- a/pkgs/applications/kde/libksieve.nix
+++ b/pkgs/applications/kde/libksieve.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "libksieve";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   outputs = [ "out" "dev" ];
diff --git a/pkgs/applications/kde/mailcommon.nix b/pkgs/applications/kde/mailcommon.nix
index c3a8659a735b2..af29ff41681e2 100644
--- a/pkgs/applications/kde/mailcommon.nix
+++ b/pkgs/applications/kde/mailcommon.nix
@@ -9,7 +9,7 @@
 mkDerivation {
   pname = "mailcommon";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/mailimporter.nix b/pkgs/applications/kde/mailimporter.nix
index b1e0461a9593a..745316fbaf9ae 100644
--- a/pkgs/applications/kde/mailimporter.nix
+++ b/pkgs/applications/kde/mailimporter.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "mailimporter";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/mbox-importer.nix b/pkgs/applications/kde/mbox-importer.nix
index eadb27f05bc99..d51b7e99ce60b 100644
--- a/pkgs/applications/kde/mbox-importer.nix
+++ b/pkgs/applications/kde/mbox-importer.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "mbox-importer";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/messagelib.nix b/pkgs/applications/kde/messagelib.nix
index 6709a1f072a58..d52989d3ffc0a 100644
--- a/pkgs/applications/kde/messagelib.nix
+++ b/pkgs/applications/kde/messagelib.nix
@@ -11,7 +11,7 @@
 mkDerivation {
   pname = "messagelib";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix
index 51994c2868dd1..f2f5630422247 100644
--- a/pkgs/applications/kde/okular.nix
+++ b/pkgs/applications/kde/okular.nix
@@ -30,7 +30,7 @@ mkDerivation {
   meta = with lib; {
     homepage = "http://www.kde.org";
     description = "KDE document viewer";
-    license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
+    license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ];
     maintainers = with maintainers; [ ttuegel turion ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/applications/kde/pim-data-exporter.nix b/pkgs/applications/kde/pim-data-exporter.nix
index f13e1f667957c..c1a2270641bda 100644
--- a/pkgs/applications/kde/pim-data-exporter.nix
+++ b/pkgs/applications/kde/pim-data-exporter.nix
@@ -12,7 +12,7 @@ mkDerivation {
   meta = {
     homepage = "https://apps.kde.org/pimdataexporter/";
     description = "Saves and restores all data from PIM apps";
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/pim-sieve-editor.nix b/pkgs/applications/kde/pim-sieve-editor.nix
index 9998418ff8a3b..613a159a79290 100644
--- a/pkgs/applications/kde/pim-sieve-editor.nix
+++ b/pkgs/applications/kde/pim-sieve-editor.nix
@@ -8,7 +8,7 @@
 mkDerivation {
   pname = "pim-sieve-editor";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/pimcommon.nix b/pkgs/applications/kde/pimcommon.nix
index 40153af70e830..896c202529a67 100644
--- a/pkgs/applications/kde/pimcommon.nix
+++ b/pkgs/applications/kde/pimcommon.nix
@@ -10,7 +10,7 @@
 mkDerivation {
   pname = "pimcommon";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = kdepimTeam;
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/kde/rocs.nix b/pkgs/applications/kde/rocs.nix
index 45362d556a72a..bb5cd80bca23a 100644
--- a/pkgs/applications/kde/rocs.nix
+++ b/pkgs/applications/kde/rocs.nix
@@ -11,7 +11,7 @@ mkDerivation {
   meta = with lib; {
     homepage = "https://edu.kde.org/rocs/";
     description = "A graph theory IDE.";
-    license = with licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     platforms = lib.platforms.linux;
     maintainers = with maintainers; [ knairda ];
   };
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 289aaaafd656b..b8cbb6138b515 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -4,1867 +4,1867 @@
 
 {
   akonadi = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-22.08.2.tar.xz";
-      sha256 = "0mylc9dim1a9n58hg5k1yhd4q59ragb52nwm6l8a2h5i0r80hci6";
-      name = "akonadi-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-22.08.3.tar.xz";
+      sha256 = "0x4r620ivnhbsd6j3l3a2yb2mncv0a23sxhb2pfc5rs0yj225fm2";
+      name = "akonadi-22.08.3.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-calendar-22.08.2.tar.xz";
-      sha256 = "0v4nf42l25n8l6qa77iwfbbnbz0mvbn1wvqrbh9nkzjdp7528ig4";
-      name = "akonadi-calendar-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-calendar-22.08.3.tar.xz";
+      sha256 = "1y4552c1s7scy080vhr470a2qi8277a8qn2m6fscw7fibf8bzgrg";
+      name = "akonadi-calendar-22.08.3.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-calendar-tools-22.08.2.tar.xz";
-      sha256 = "0k1aflpmcg698fsk8vps9pwdv2qwm9glymw5gv0720arr0pil11h";
-      name = "akonadi-calendar-tools-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-calendar-tools-22.08.3.tar.xz";
+      sha256 = "1r9hdw18bp2sllx9a65chpi2bfrai82ls6az70j00lq7v2hwb5vr";
+      name = "akonadi-calendar-tools-22.08.3.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-contacts-22.08.2.tar.xz";
-      sha256 = "1spxm6kfsdyyax4brnnd9qqmlh1sqk7qgsdrw9yv9xfg2iipppri";
-      name = "akonadi-contacts-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-contacts-22.08.3.tar.xz";
+      sha256 = "1bzmyh1wr8dy2jyza33syfg5m6f74by8b54rsx9mkgxp64ysa6qw";
+      name = "akonadi-contacts-22.08.3.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-import-wizard-22.08.2.tar.xz";
-      sha256 = "1v3ny0g8cn9i4v49cca1c1bbd8acjy6wsbb0ys75asw527cnwigl";
-      name = "akonadi-import-wizard-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-import-wizard-22.08.3.tar.xz";
+      sha256 = "1995s8qra9b8pc9c1pzlkwassfdqphgakwgn2qd22m53kgzkj6lv";
+      name = "akonadi-import-wizard-22.08.3.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-mime-22.08.2.tar.xz";
-      sha256 = "0n187rzy4085xxppnm1z00ac0qybvh7j0i2642vfv1y6994gxgrz";
-      name = "akonadi-mime-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-mime-22.08.3.tar.xz";
+      sha256 = "0w6yici0kswd07068khk6yrxg3z3801dib80h56ifgb3jpbcfs44";
+      name = "akonadi-mime-22.08.3.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-notes-22.08.2.tar.xz";
-      sha256 = "1qp1p1553pz1yvbk61r4aw1rcwv06x7fsjc8pgxry97bnhmynxh3";
-      name = "akonadi-notes-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-notes-22.08.3.tar.xz";
+      sha256 = "1h8dpfcym532w29b0v3krvnvr6my75i9y35p3as8l0ndz1rbscw5";
+      name = "akonadi-notes-22.08.3.tar.xz";
     };
   };
   akonadi-search = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadi-search-22.08.2.tar.xz";
-      sha256 = "1zsipvf1mvyvr3khny2ymrywhzpbqzy4dp9n11wl7y944w6960i2";
-      name = "akonadi-search-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadi-search-22.08.3.tar.xz";
+      sha256 = "03xsaznqp3k7qffsb1njnc0g9izfqh5xdm2z5dwng61pb1gw1q3j";
+      name = "akonadi-search-22.08.3.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akonadiconsole-22.08.2.tar.xz";
-      sha256 = "0gpf3j2dy71cyzq9zvw0574ycqvfdq6kamx8wzgmsx36qvqbdv3f";
-      name = "akonadiconsole-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akonadiconsole-22.08.3.tar.xz";
+      sha256 = "152hd6z7ank63pqlpxw92ad12l9k5spxhk8f7cjrb2gs290vbhbb";
+      name = "akonadiconsole-22.08.3.tar.xz";
     };
   };
   akregator = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/akregator-22.08.2.tar.xz";
-      sha256 = "1knz3b3ivrw290dvbdn5in181gk7rsd1d2dr8khr7pd30xs731zb";
-      name = "akregator-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/akregator-22.08.3.tar.xz";
+      sha256 = "05q3igigqj2vyd2ykkj44plndkr6mi36ff3bfavl47dih29yva3y";
+      name = "akregator-22.08.3.tar.xz";
     };
   };
   analitza = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/analitza-22.08.2.tar.xz";
-      sha256 = "1icvcrbp0a0azgiqdxd8zxp8v3kj6jwrpf0dkaw2prrq6hz04374";
-      name = "analitza-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/analitza-22.08.3.tar.xz";
+      sha256 = "1sjf7zycaq0448r29x6qbkfb2ws4rvn0gjr0ag6xg8b4qvf6bamy";
+      name = "analitza-22.08.3.tar.xz";
     };
   };
   ark = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ark-22.08.2.tar.xz";
-      sha256 = "0vv2d14j5zhjar7fv4m6yasfvfvs27zrckxc7xsb5y6iba9gqikr";
-      name = "ark-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ark-22.08.3.tar.xz";
+      sha256 = "0rc0lwics1rqzrk5yjmc76vki6xbpfpg1xlg394ixdjyv48riiww";
+      name = "ark-22.08.3.tar.xz";
     };
   };
   artikulate = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/artikulate-22.08.2.tar.xz";
-      sha256 = "15yr9g5dirby5yl3gdlzj6qi1b8l3k71m1b83qlxwafdwl944a04";
-      name = "artikulate-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/artikulate-22.08.3.tar.xz";
+      sha256 = "0k6ygq89qcgf38wkrdqk8mznsbrpwf7abw3p0a0ng5w66yxwn1yj";
+      name = "artikulate-22.08.3.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/audiocd-kio-22.08.2.tar.xz";
-      sha256 = "1b8nq18vm4ysn4qlhcbkcwybc7hficph19ik1mpx2wm26560py3n";
-      name = "audiocd-kio-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/audiocd-kio-22.08.3.tar.xz";
+      sha256 = "0jwzx7g0g8mg4r6h5q54j72p6cbrfr3dx1hv9r45g02hzvd2i2an";
+      name = "audiocd-kio-22.08.3.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/baloo-widgets-22.08.2.tar.xz";
-      sha256 = "09ls4zw1z1cb5m67fwfc0kpi143bfxj7qpi04i0sfw40icr0yrid";
-      name = "baloo-widgets-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/baloo-widgets-22.08.3.tar.xz";
+      sha256 = "0nnv54lnvln02yvxdaxvc497vxyx5gzpm3zvn7bz8mks4yzvrahb";
+      name = "baloo-widgets-22.08.3.tar.xz";
     };
   };
   blinken = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/blinken-22.08.2.tar.xz";
-      sha256 = "011qsa57dzvn08k9qd1giivz5hpzlzrp4pi080vmp2q7a943v5vl";
-      name = "blinken-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/blinken-22.08.3.tar.xz";
+      sha256 = "1avdphqp1y528lczb6bpxvdzaq9navrg4vxiqvfkvgkymhd36n2k";
+      name = "blinken-22.08.3.tar.xz";
     };
   };
   bomber = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/bomber-22.08.2.tar.xz";
-      sha256 = "1frd2vm85caarfs1747wgcpdnq7w4czfsc60li7377pbhrhi47jz";
-      name = "bomber-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/bomber-22.08.3.tar.xz";
+      sha256 = "1fm5fisxa5q2shc3154g4cfg271jz97411wfjcdpgry6mx96qs7k";
+      name = "bomber-22.08.3.tar.xz";
     };
   };
   bovo = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/bovo-22.08.2.tar.xz";
-      sha256 = "08as7lsp61qhmdz8sxbkcnq3vb0rpq96yph2fx5ckbayp4g01qac";
-      name = "bovo-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/bovo-22.08.3.tar.xz";
+      sha256 = "060gc854krafa4ichknj5naic0ingiviacbz1lmdg2fp68mggd50";
+      name = "bovo-22.08.3.tar.xz";
     };
   };
   calendarsupport = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/calendarsupport-22.08.2.tar.xz";
-      sha256 = "1bk8r4a5ilphfbgxb2345nnbhfkadam4s9ms39vin8za05sljhzh";
-      name = "calendarsupport-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/calendarsupport-22.08.3.tar.xz";
+      sha256 = "1lmysb5g0xsaj5n75ays9hmjgcg71apg7fw3fg93rdh9hzn9in0x";
+      name = "calendarsupport-22.08.3.tar.xz";
     };
   };
   cantor = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/cantor-22.08.2.tar.xz";
-      sha256 = "11gmiybsyalzijvfxrhkr4z2vnbbr4rgq27f5pnpnqmnif803p2k";
-      name = "cantor-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/cantor-22.08.3.tar.xz";
+      sha256 = "017zzxl60ycjc24i9zv7mjkxpdx4fa8kznxmfdhc601sdh1n0pja";
+      name = "cantor-22.08.3.tar.xz";
     };
   };
   cervisia = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/cervisia-22.08.2.tar.xz";
-      sha256 = "1cspi6l5a9mailmrfgndrb29p2kw3wsc8rgd42vh45a6g6kzk2zm";
-      name = "cervisia-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/cervisia-22.08.3.tar.xz";
+      sha256 = "1q668vd237wf7nd5sjygnkbygbj6qwbc9j0l3pgpbd51r220jh04";
+      name = "cervisia-22.08.3.tar.xz";
     };
   };
   dolphin = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/dolphin-22.08.2.tar.xz";
-      sha256 = "0mivahq6wv15ir407jkg4x07s6p02a2qsyg30npjprp5gqiyxwir";
-      name = "dolphin-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/dolphin-22.08.3.tar.xz";
+      sha256 = "18qmrwcx3qg5kxhf211m9syazpbshhak7ss245z2jsyxkjjqj54p";
+      name = "dolphin-22.08.3.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/dolphin-plugins-22.08.2.tar.xz";
-      sha256 = "099r44scvanxigx060s94r3ffxqrl33wmhvkxay2sd20jb6jlvq3";
-      name = "dolphin-plugins-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/dolphin-plugins-22.08.3.tar.xz";
+      sha256 = "05qmhl9lacs0gx45c5icm2iwpjxaqidwllhvl364i6pvsmk4cg3h";
+      name = "dolphin-plugins-22.08.3.tar.xz";
     };
   };
   dragon = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/dragon-22.08.2.tar.xz";
-      sha256 = "14sa4d3gzplq19biqcby7dz3qd6141j7riazr5lpv2v102h5qnfc";
-      name = "dragon-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/dragon-22.08.3.tar.xz";
+      sha256 = "1bg6m47x4n8yaib8z0f3hvg97kpkg07hb8lq0nm6603qgi69ssga";
+      name = "dragon-22.08.3.tar.xz";
     };
   };
   elisa = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/elisa-22.08.2.tar.xz";
-      sha256 = "1zwcl87xfwl6q0kg2skbszzs642fbygsbmdzpr2pwdjpq51kjill";
-      name = "elisa-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/elisa-22.08.3.tar.xz";
+      sha256 = "07db9rkqiwq08arji6hf8aghc08k558nyddy38kpdl5gsk1xvkl2";
+      name = "elisa-22.08.3.tar.xz";
     };
   };
   eventviews = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/eventviews-22.08.2.tar.xz";
-      sha256 = "1hj77aghar1p1vyphyg70il9p2g145xklls89hp3ygpnnmsflz3w";
-      name = "eventviews-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/eventviews-22.08.3.tar.xz";
+      sha256 = "14k9gg4abadajwkmz5lm1lsvhfvnck15dvggq910gwwa3ayah6c7";
+      name = "eventviews-22.08.3.tar.xz";
     };
   };
   falkon = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/falkon-22.08.2.tar.xz";
-      sha256 = "034skfhn9rmqnx0bz6avq17i0bmh3b0138y58irzfi1ps19fjasd";
-      name = "falkon-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/falkon-22.08.3.tar.xz";
+      sha256 = "02gz6d82l8zly8k5kk41352jcyz3lqxrx7xz0pqbyhlxrpagwgp5";
+      name = "falkon-22.08.3.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ffmpegthumbs-22.08.2.tar.xz";
-      sha256 = "1v1gkjiqnk03fm1a5zcmfxrcvzbpjddffqiz74h5f94cf4yw88y8";
-      name = "ffmpegthumbs-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ffmpegthumbs-22.08.3.tar.xz";
+      sha256 = "04q1cd0biwqbx8ipbmy2mxf8l9yk4z3297yvkig99fg0sxbayvm6";
+      name = "ffmpegthumbs-22.08.3.tar.xz";
     };
   };
   filelight = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/filelight-22.08.2.tar.xz";
-      sha256 = "0n23vj6qkdxag0zm3wm7jl4lddiq9l366zgcbvq1w41yacx8wwdk";
-      name = "filelight-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/filelight-22.08.3.tar.xz";
+      sha256 = "0vjglyrhvr8ihf7xd9arf8d6rd6rawpqf14f76blzg18csg9p2yj";
+      name = "filelight-22.08.3.tar.xz";
     };
   };
   granatier = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/granatier-22.08.2.tar.xz";
-      sha256 = "1xlxgr437ca7ij18chn5qxl78di0z3aib051x8jzbihdanc0nsh4";
-      name = "granatier-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/granatier-22.08.3.tar.xz";
+      sha256 = "0n6lavlbmc13xy55fpf86jls8qx4y4mnfrszkfhmbrbdb45pqlhn";
+      name = "granatier-22.08.3.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/grantlee-editor-22.08.2.tar.xz";
-      sha256 = "0gh5ds9kq3lg66afy1gghmclgcvqgwzfj00ricaz4a7v5x1wnmhy";
-      name = "grantlee-editor-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/grantlee-editor-22.08.3.tar.xz";
+      sha256 = "03vkz698wkhfj0l8qhniw85q0pjlpmz6p957k6h3xlqc792rk3mh";
+      name = "grantlee-editor-22.08.3.tar.xz";
     };
   };
   grantleetheme = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/grantleetheme-22.08.2.tar.xz";
-      sha256 = "1wi0r9knlp4c8jgzw33wry98qjzv1wxxq3bidav1y2cf89g6fvv5";
-      name = "grantleetheme-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/grantleetheme-22.08.3.tar.xz";
+      sha256 = "093dmd81rmc0bq95xpwsfpwadmi2ikg1a5d6mmzr55s68rmxyxvk";
+      name = "grantleetheme-22.08.3.tar.xz";
     };
   };
   gwenview = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/gwenview-22.08.2.tar.xz";
-      sha256 = "1csf9xi551p8b0v8wgs93dm83xdlr71sibr6w544ski0givj82f1";
-      name = "gwenview-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/gwenview-22.08.3.tar.xz";
+      sha256 = "0vma08maf79k46rq59y991ryi9z69yjvr6qw8xjs47nqkmrfn9gi";
+      name = "gwenview-22.08.3.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/incidenceeditor-22.08.2.tar.xz";
-      sha256 = "16di5ib9acnxajf5253wr2rrld8b9yr59hzddbxlapcwh1h41lbb";
-      name = "incidenceeditor-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/incidenceeditor-22.08.3.tar.xz";
+      sha256 = "1r7dp574sqsbyzdm3avznbx99a5hvbw2gkx4ml8binx0q3gn5vn3";
+      name = "incidenceeditor-22.08.3.tar.xz";
     };
   };
   itinerary = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/itinerary-22.08.2.tar.xz";
-      sha256 = "0hwrrc85qyfpannnna83qgi56lblp7a5ccxq964mxdgfq2gyvpwb";
-      name = "itinerary-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/itinerary-22.08.3.tar.xz";
+      sha256 = "1czqlgn2vxyl9jnmzw571kj11ppf9siqiwwg5c06b3s6nyc0aw2q";
+      name = "itinerary-22.08.3.tar.xz";
     };
   };
   juk = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/juk-22.08.2.tar.xz";
-      sha256 = "1sppq7sw28vy32v1w1is81jaka686zav43pv552h75bl51bi415g";
-      name = "juk-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/juk-22.08.3.tar.xz";
+      sha256 = "04r6s3z620lsqm5x0lmwkxdqim4nczcwb3la9zfzznkyll1jh0fw";
+      name = "juk-22.08.3.tar.xz";
     };
   };
   k3b = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/k3b-22.08.2.tar.xz";
-      sha256 = "1lcr5x8hnbxfybk93k8j107fp96varawnxzap8qvvxzm2rdij2xl";
-      name = "k3b-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/k3b-22.08.3.tar.xz";
+      sha256 = "1673711wim4yy3zx0fjhkyfn7n0qiilvhs211gcqqvip0mgc2gl9";
+      name = "k3b-22.08.3.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kaccounts-integration-22.08.2.tar.xz";
-      sha256 = "163a19725a4jp6dd1djlx45hmxshd9pfhy4bpkx8z10izpqkag2q";
-      name = "kaccounts-integration-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kaccounts-integration-22.08.3.tar.xz";
+      sha256 = "04ha4bbawycgabz7gs2b2zs1nw0329034p1xk3x8rwkpi1sbwhhv";
+      name = "kaccounts-integration-22.08.3.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kaccounts-providers-22.08.2.tar.xz";
-      sha256 = "1sz0ywmsysimphh1s4fz75bj5cdn430qh4hsl6dcqxa67b9v2n79";
-      name = "kaccounts-providers-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kaccounts-providers-22.08.3.tar.xz";
+      sha256 = "0frd6h62glcszs5irxgn2zmssm70r4sddwcjky2xn131cia5zacs";
+      name = "kaccounts-providers-22.08.3.tar.xz";
     };
   };
   kaddressbook = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kaddressbook-22.08.2.tar.xz";
-      sha256 = "0acmxn672xr9ynahd4hf9ckfhj7dmw3yfgc7mf5q2i2sk6fdimka";
-      name = "kaddressbook-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kaddressbook-22.08.3.tar.xz";
+      sha256 = "11qdb2jpiy6l1mjd7ibd3djfddd6dlinz494nn9c6p0jz46w4ww3";
+      name = "kaddressbook-22.08.3.tar.xz";
     };
   };
   kajongg = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kajongg-22.08.2.tar.xz";
-      sha256 = "14ymz219bcc5cmvj5mas43p16h5vbn1y8n6g5jyfwq1fq49h4hbw";
-      name = "kajongg-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kajongg-22.08.3.tar.xz";
+      sha256 = "1n0z0dbgpkkxq3zl3vgx5ass6zvvqiqyr95c5kfnz1kvxfsffq71";
+      name = "kajongg-22.08.3.tar.xz";
     };
   };
   kalarm = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kalarm-22.08.2.tar.xz";
-      sha256 = "0dq01lyj0bnkx3lnshy5jjpp1lnw25i6y0b6xa2m4xgs0hmkr60p";
-      name = "kalarm-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kalarm-22.08.3.tar.xz";
+      sha256 = "03h08hvb2hz028h189hcpdvm5b4ki1wvjsxvqwwd5gggikki3p67";
+      name = "kalarm-22.08.3.tar.xz";
     };
   };
   kalendar = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kalendar-22.08.2.tar.xz";
-      sha256 = "01h133ajhkixjrx3x1zj5mgn8mxixcsh2phbf2rygrmsa76cp9mw";
-      name = "kalendar-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kalendar-22.08.3.tar.xz";
+      sha256 = "1857y4g34ff2lik5kz6kph9vp9cnjvyqlmyxhxmmhfij4aj0fz4c";
+      name = "kalendar-22.08.3.tar.xz";
     };
   };
   kalgebra = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kalgebra-22.08.2.tar.xz";
-      sha256 = "1mcjd442vlzpavl6f0ffnn8pq5fk8p1hq89wk3msplxm9v5lgmdq";
-      name = "kalgebra-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kalgebra-22.08.3.tar.xz";
+      sha256 = "0xzr29ajcw026dxr2gjqm4zv2bbw9az4j1214hb7g8bik9x01q42";
+      name = "kalgebra-22.08.3.tar.xz";
     };
   };
   kalzium = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kalzium-22.08.2.tar.xz";
-      sha256 = "1xj2knzc2nhnvrz6nk4qxa97z76fvrglz3rw4n6lx2v9xriyihrm";
-      name = "kalzium-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kalzium-22.08.3.tar.xz";
+      sha256 = "0l2wx9vvgwxmsq5ai1ghs0kgv9yk1rsclqspc1lcmzv8xxy3yx0c";
+      name = "kalzium-22.08.3.tar.xz";
     };
   };
   kamera = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kamera-22.08.2.tar.xz";
-      sha256 = "1wb05kr18r6hvasjrpzgs7nbnkjsx65pvph64v70038c08jrq4vi";
-      name = "kamera-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kamera-22.08.3.tar.xz";
+      sha256 = "1qzl0cvd0i3arvdx64z821xkc57j6fhqfaw2f9xxhajb16dmj19j";
+      name = "kamera-22.08.3.tar.xz";
     };
   };
   kamoso = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kamoso-22.08.2.tar.xz";
-      sha256 = "1ph4998vrvz5i4ndgx54ipys58ncb8fkrs9jz12imzpp6h01iq8g";
-      name = "kamoso-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kamoso-22.08.3.tar.xz";
+      sha256 = "1l101rdm163lvx9cq2jyc91svvpjk8p5pvif74y9rsxb396a35cj";
+      name = "kamoso-22.08.3.tar.xz";
     };
   };
   kanagram = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kanagram-22.08.2.tar.xz";
-      sha256 = "1jnsvvl076aj7qgczv8bwm59218av364jv9gkqhwcf44g1d13z1v";
-      name = "kanagram-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kanagram-22.08.3.tar.xz";
+      sha256 = "1h8l3bzpg0m50mcirvj0a5d4z0im8ng4f5fp1zx6vj20xbd0scq9";
+      name = "kanagram-22.08.3.tar.xz";
     };
   };
   kapman = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kapman-22.08.2.tar.xz";
-      sha256 = "0lq84rg3v3qzihwz5alj1gbwrnk6cb1n5x7ip0d5p7fbwmlni58v";
-      name = "kapman-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kapman-22.08.3.tar.xz";
+      sha256 = "1f414cdixmbhqmp5hxiip7cv4r7lggiwl29rlwp1sbcyil80r79p";
+      name = "kapman-22.08.3.tar.xz";
     };
   };
   kapptemplate = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kapptemplate-22.08.2.tar.xz";
-      sha256 = "0kvsg0xwaqm4yy4l1dgbdnnnql7199f6zj08mj67w44zllihrdfi";
-      name = "kapptemplate-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kapptemplate-22.08.3.tar.xz";
+      sha256 = "1dsh5ajp1614kmlvfmxy8irl1zqc24shrigwj7jjdbwb8a0qrxxk";
+      name = "kapptemplate-22.08.3.tar.xz";
     };
   };
   kate = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kate-22.08.2.tar.xz";
-      sha256 = "03vmzq1xysr1nw337dvx17b23qnnqhvs81mzhjpkvq53z3kg299p";
-      name = "kate-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kate-22.08.3.tar.xz";
+      sha256 = "19jzjk3zsbdhrjgw7rrhrbc77rn46z58cmi24fhndvafrw7br5fi";
+      name = "kate-22.08.3.tar.xz";
     };
   };
   katomic = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/katomic-22.08.2.tar.xz";
-      sha256 = "1r0hgyknq3990bq39fg4b9wb76c9rd98hv4w6hna8ca8vk47fz8b";
-      name = "katomic-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/katomic-22.08.3.tar.xz";
+      sha256 = "1msly7134krz6ml06k1gmx3lq50c3valz67x2m3dlyfxn7v8dzlr";
+      name = "katomic-22.08.3.tar.xz";
     };
   };
   kbackup = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kbackup-22.08.2.tar.xz";
-      sha256 = "168jb24n256qsn6pn3h6rz0kzfp79abrli4jlkkz7srwk9brnf7g";
-      name = "kbackup-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kbackup-22.08.3.tar.xz";
+      sha256 = "16ybl4npq024xsncvb8m8cnnp7bdxkjj2fxw3nh3z0bvr5k5rqxw";
+      name = "kbackup-22.08.3.tar.xz";
     };
   };
   kblackbox = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kblackbox-22.08.2.tar.xz";
-      sha256 = "0l2f1nl5as4pz9z4qb081y2zmqwq6j9v2ypq11bv4bmvz8mj2jln";
-      name = "kblackbox-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kblackbox-22.08.3.tar.xz";
+      sha256 = "1nr2xsam2fy1bxg5x8p98vgm6rgmsbkmai9vzp4jzizzi9apjxwc";
+      name = "kblackbox-22.08.3.tar.xz";
     };
   };
   kblocks = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kblocks-22.08.2.tar.xz";
-      sha256 = "0g6hfn10axxpbnnnsw5hp3df2h905i5rk07gl0nm1jmy09xrc22l";
-      name = "kblocks-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kblocks-22.08.3.tar.xz";
+      sha256 = "0clm7myn4ra4ji2jgpjm0y03ys7pikxf4092jvpzhz9735g071w4";
+      name = "kblocks-22.08.3.tar.xz";
     };
   };
   kbounce = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kbounce-22.08.2.tar.xz";
-      sha256 = "0d7rdfy2cp0zsknwvhhdfjcny5c3r0jy9nfj8zdw3ph7pd9c1rpc";
-      name = "kbounce-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kbounce-22.08.3.tar.xz";
+      sha256 = "0n5bfw3vjqfgh4h1j78pniqkk9l0b74c94avibmi0d9avdr2hwbv";
+      name = "kbounce-22.08.3.tar.xz";
     };
   };
   kbreakout = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kbreakout-22.08.2.tar.xz";
-      sha256 = "0d2acfx477dh81pz2csj41qswlm17bndzldr54xhvjnq6yn83ij0";
-      name = "kbreakout-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kbreakout-22.08.3.tar.xz";
+      sha256 = "0f7yvps9xnr6k3wbcbapcmi8g287ib2nk27n24dzamksc07k1hrl";
+      name = "kbreakout-22.08.3.tar.xz";
     };
   };
   kbruch = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kbruch-22.08.2.tar.xz";
-      sha256 = "0g2f2xkmh8081kyh2x48z7hz21il49g66a7k33f5fpdny8hqg2lw";
-      name = "kbruch-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kbruch-22.08.3.tar.xz";
+      sha256 = "0nzq8ah7gwjaqnalvnb928argvrjjv79nsdhd0rbhndj0r5bpklh";
+      name = "kbruch-22.08.3.tar.xz";
     };
   };
   kcachegrind = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcachegrind-22.08.2.tar.xz";
-      sha256 = "0582wk6878vya359kbnpf70r21vi9q051zgmsjgzzvkfkm30d6jc";
-      name = "kcachegrind-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcachegrind-22.08.3.tar.xz";
+      sha256 = "1iwa4630gri609570m9kivc5cvgj9p1kvz604rh9irp150prn2qn";
+      name = "kcachegrind-22.08.3.tar.xz";
     };
   };
   kcalc = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcalc-22.08.2.tar.xz";
-      sha256 = "09y4a9h7v4g64mg3vbivmp6pfj3hylmk7kd62xp8h8kbk1abq9c9";
-      name = "kcalc-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcalc-22.08.3.tar.xz";
+      sha256 = "0jzxc6rl2ydk53j92l5kxzbk926fg5f7zc4m92am96f8xv67cgml";
+      name = "kcalc-22.08.3.tar.xz";
     };
   };
   kcalutils = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcalutils-22.08.2.tar.xz";
-      sha256 = "16vnihxqpaf9dgx74y7q0vjmgvjcg90h9dqam8kmidbqr3556x9c";
-      name = "kcalutils-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcalutils-22.08.3.tar.xz";
+      sha256 = "0mmxgcvn3dr9afdawlv503pj8q1732jqiixmx70nsagd7mbw65cm";
+      name = "kcalutils-22.08.3.tar.xz";
     };
   };
   kcharselect = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcharselect-22.08.2.tar.xz";
-      sha256 = "1i0l43nz586d6ivb4hvd112ahr12wrq4nlihw87pnccfgb2pprhr";
-      name = "kcharselect-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcharselect-22.08.3.tar.xz";
+      sha256 = "147lsnxbjj55y427mpx4xx4v760aw6q1xcrkcqqqi2ds7sgajfq6";
+      name = "kcharselect-22.08.3.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcolorchooser-22.08.2.tar.xz";
-      sha256 = "0vi0sipyhwmzpwqpm1h9qf9sb17xx4nqlnl2lcr2qv6yljnipwwb";
-      name = "kcolorchooser-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcolorchooser-22.08.3.tar.xz";
+      sha256 = "1z84c5nwp4hgnbhmfa1816ksalfvq27l3pp97fdz3sppd623570x";
+      name = "kcolorchooser-22.08.3.tar.xz";
     };
   };
   kcron = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kcron-22.08.2.tar.xz";
-      sha256 = "079rfsfsrsydvkzzism74b0mjqw6bx8br5m7q3gzi40l3m6vi0g7";
-      name = "kcron-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kcron-22.08.3.tar.xz";
+      sha256 = "1s84kf6vzibv66wwajf4mh66hl5pz46pazgfkz7nlzixyz8qbrp1";
+      name = "kcron-22.08.3.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kde-dev-scripts-22.08.2.tar.xz";
-      sha256 = "012ml2z6y3frsxws26kd2ssf8rgn4c2av2m5125kpn5yzy3is53l";
-      name = "kde-dev-scripts-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kde-dev-scripts-22.08.3.tar.xz";
+      sha256 = "08vdygc9bn9b8p033azgwgdx1k09fnyqyxrv0kk6hp051c7h94s4";
+      name = "kde-dev-scripts-22.08.3.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kde-dev-utils-22.08.2.tar.xz";
-      sha256 = "17m4xc6332h2jhhcmxd51pqnq8rqylarc0762gswy8bj7ywmhd5h";
-      name = "kde-dev-utils-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kde-dev-utils-22.08.3.tar.xz";
+      sha256 = "09p6v211s1smnnz2hr0nf4lk0rq6ql5bf1qvbdbrlgyx27j97ybw";
+      name = "kde-dev-utils-22.08.3.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdebugsettings-22.08.2.tar.xz";
-      sha256 = "0bgyhhyvrbfl1raj05gkq5a3hhb781508c7ml9rgw7gy9yyqw0ax";
-      name = "kdebugsettings-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdebugsettings-22.08.3.tar.xz";
+      sha256 = "0hri8bkvpyzr4201sz55ayh4ci3ihkfgd1lay1h5ylfg3gf19fjv";
+      name = "kdebugsettings-22.08.3.tar.xz";
     };
   };
   kdeconnect-kde = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdeconnect-kde-22.08.2.tar.xz";
-      sha256 = "1489ik3bpk45w0aml07s83r9j9qlf6qpzsdpd28v6ih8vm1pkvc0";
-      name = "kdeconnect-kde-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdeconnect-kde-22.08.3.tar.xz";
+      sha256 = "0ypbw7vbl9ibi2z1z0wwry3z5i7v980xadcargkkgwfjjf5a4aa4";
+      name = "kdeconnect-kde-22.08.3.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdeedu-data-22.08.2.tar.xz";
-      sha256 = "07jwrw8r8mgj6m10gqx4hd4xl1nnh5lnwmcdfpfhkwd40j1zlwha";
-      name = "kdeedu-data-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdeedu-data-22.08.3.tar.xz";
+      sha256 = "1969hy2r8xxzin60gikvr47gmi34h9plzd1v9z3w7xi8wblhy34x";
+      name = "kdeedu-data-22.08.3.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdegraphics-mobipocket-22.08.2.tar.xz";
-      sha256 = "03yjbb8rfszbhmwf5fyfwinrda610b7ghlj5l5v8yp7blba0i6ry";
-      name = "kdegraphics-mobipocket-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdegraphics-mobipocket-22.08.3.tar.xz";
+      sha256 = "1jjqxhf4bpjvdh0q6pnsqslza1h6wla4g3yq3p3chkapgdylcw4w";
+      name = "kdegraphics-mobipocket-22.08.3.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdegraphics-thumbnailers-22.08.2.tar.xz";
-      sha256 = "1ppgc5yh23fgfkwzjirrkv5w7y23xlpf3ijgaw8wgm7kbm61i5y0";
-      name = "kdegraphics-thumbnailers-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdegraphics-thumbnailers-22.08.3.tar.xz";
+      sha256 = "0wxdvs42vmhrr3jqggxxrxdjyjxqwm5r7vyawb3b94njbni9c11x";
+      name = "kdegraphics-thumbnailers-22.08.3.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdenetwork-filesharing-22.08.2.tar.xz";
-      sha256 = "0m9v60j9lyan0d0mv9gvl5n4hbm1169rddl4h15k5b23a09ky6b4";
-      name = "kdenetwork-filesharing-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdenetwork-filesharing-22.08.3.tar.xz";
+      sha256 = "03d8qkdsfihvj1s7cqbjppgb2z7w5qs8ax38x934z71gg7nj22a1";
+      name = "kdenetwork-filesharing-22.08.3.tar.xz";
     };
   };
   kdenlive = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdenlive-22.08.2.tar.xz";
-      sha256 = "1n2fsr9xqm027ydpjc5bmc7v22vqp16kgf3a0yh8l3i1xg539ya9";
-      name = "kdenlive-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdenlive-22.08.3.tar.xz";
+      sha256 = "0a8f1nj7mhzpvcmb1m5x18y8v0nzsh7rdvq8wyj1v7fr4iyw6p4w";
+      name = "kdenlive-22.08.3.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdepim-addons-22.08.2.tar.xz";
-      sha256 = "0p72h6ma7gm3cq4l9jnxfbmgvvplva24wn12fv2rc7p664hp6sj9";
-      name = "kdepim-addons-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdepim-addons-22.08.3.tar.xz";
+      sha256 = "0wlf9ykgnh4g4vyi0ny3m3agg3nxjjqar5afz02j2pqw3aqjq0af";
+      name = "kdepim-addons-22.08.3.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdepim-runtime-22.08.2.tar.xz";
-      sha256 = "1dsdjnkfgmi7kih5adaqpd2m8ar9w2b3dpz0xviyyyyw5114810p";
-      name = "kdepim-runtime-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdepim-runtime-22.08.3.tar.xz";
+      sha256 = "09dgyjqf69i5h7xnqbfgni3pxn9ya6x9qrrvqldzamn74qq004r3";
+      name = "kdepim-runtime-22.08.3.tar.xz";
     };
   };
   kdesdk-kio = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdesdk-kio-22.08.2.tar.xz";
-      sha256 = "0m5nd1v7mzwnx91541rkb409wmqlw6m4536j1smxw4i8mb71l6y6";
-      name = "kdesdk-kio-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdesdk-kio-22.08.3.tar.xz";
+      sha256 = "0yfif2shkn2z4by4hxns0q2avldkb39629zxl4m7b7r82rswpi70";
+      name = "kdesdk-kio-22.08.3.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdesdk-thumbnailers-22.08.2.tar.xz";
-      sha256 = "1qfgrmp3pfjgniawlnqqwnnfyix479706z947rdb4hxrm3bnrr8s";
-      name = "kdesdk-thumbnailers-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdesdk-thumbnailers-22.08.3.tar.xz";
+      sha256 = "1a50z8bsdr61gwawm6b7mj23jlj8arf56q0yq18x6300fq2sj0fz";
+      name = "kdesdk-thumbnailers-22.08.3.tar.xz";
     };
   };
   kdev-php = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdev-php-22.08.2.tar.xz";
-      sha256 = "1mwr7q0qc94i1vi7sjc8injda6sq3lpb71398s1j7py82644024q";
-      name = "kdev-php-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdev-php-22.08.3.tar.xz";
+      sha256 = "1h9ri1znd9cwd4rdxags5mx6cq6kfa0hq68p0081shlwgndyh9xp";
+      name = "kdev-php-22.08.3.tar.xz";
     };
   };
   kdev-python = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdev-python-22.08.2.tar.xz";
-      sha256 = "02nvzjjwz6c1kq9c1sh6m6nwpkw7p0xbgnvipsbsy0bxclmz8xdp";
-      name = "kdev-python-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdev-python-22.08.3.tar.xz";
+      sha256 = "0w40c15cj6a0jclkp8kl876sy8icx6law2p8rw5bwvbmfdm2z596";
+      name = "kdev-python-22.08.3.tar.xz";
     };
   };
   kdevelop = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdevelop-22.08.2.tar.xz";
-      sha256 = "17vk5azn58a503p99q7clnxb3nb7b6s2ycpxk5xlpmwa0cvwm9az";
-      name = "kdevelop-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdevelop-22.08.3.tar.xz";
+      sha256 = "1mpr444ghi0caz0pjn974mf26lp28cmnqydhnp6dgzyn5whsyfrw";
+      name = "kdevelop-22.08.3.tar.xz";
     };
   };
   kdf = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdf-22.08.2.tar.xz";
-      sha256 = "1hmzv9ji50mz94qbidqvjkdxmnpwx6mpbw101ki3zpbxh0146w0c";
-      name = "kdf-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdf-22.08.3.tar.xz";
+      sha256 = "1ax8r59mnd24avkdf5gxp2krddk74bsvyq39c9wn5a1r6kaxhanv";
+      name = "kdf-22.08.3.tar.xz";
     };
   };
   kdialog = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdialog-22.08.2.tar.xz";
-      sha256 = "0czin6r2anwqgx7rj3nbj4jskqck0mn47706w84k5fyxjp36y2ha";
-      name = "kdialog-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdialog-22.08.3.tar.xz";
+      sha256 = "12va066njhz1wfhmrx8qy7s4x317k06gf65jl6nn99a6wvk2c4lx";
+      name = "kdialog-22.08.3.tar.xz";
     };
   };
   kdiamond = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kdiamond-22.08.2.tar.xz";
-      sha256 = "09a6nrrnfvj6468igv1igiyaqyzfqhh115nnlmqympihzqlz2k11";
-      name = "kdiamond-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kdiamond-22.08.3.tar.xz";
+      sha256 = "12s4kvfj5xmcbdmmvhlzsw668q7i67i84bmid9klrv6bjsssq327";
+      name = "kdiamond-22.08.3.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/keditbookmarks-22.08.2.tar.xz";
-      sha256 = "0j98gl02lp5z8jjlqcbzxz37nrzmjrrvp8ngfir5l37myg39r7cx";
-      name = "keditbookmarks-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/keditbookmarks-22.08.3.tar.xz";
+      sha256 = "1csvk5hhxxqwd6z2x1dss8brdylm38m16fh82ik7mxlvcgsynpmk";
+      name = "keditbookmarks-22.08.3.tar.xz";
     };
   };
   kfind = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kfind-22.08.2.tar.xz";
-      sha256 = "14ldcq62yw6i4sz9sj5vfklyi4ff6kdza6kvkvsxrqdj8sp0blmv";
-      name = "kfind-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kfind-22.08.3.tar.xz";
+      sha256 = "1mssrlsz7ll7d97pw43xg17851405hpxpwamrnp7xmh5dy3pik1z";
+      name = "kfind-22.08.3.tar.xz";
     };
   };
   kfloppy = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kfloppy-22.08.2.tar.xz";
-      sha256 = "0yzflvbin1lrrw3jkbdr3zia56rzf8zrxagasqg1rmqiz3r2r7i5";
-      name = "kfloppy-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kfloppy-22.08.3.tar.xz";
+      sha256 = "01dmda10kbvh1i1xvaca7qmiy298l495r6zh0l7nif5sf84w0nl7";
+      name = "kfloppy-22.08.3.tar.xz";
     };
   };
   kfourinline = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kfourinline-22.08.2.tar.xz";
-      sha256 = "0ncyr8vhc4ibi2v9577x97skb437v95lyqp3q44fnw0g921rzlv6";
-      name = "kfourinline-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kfourinline-22.08.3.tar.xz";
+      sha256 = "1dnvq7mdm7g6w0j1kk55p0x3ncyjkm2h1lkyrfq5vba1154z8njr";
+      name = "kfourinline-22.08.3.tar.xz";
     };
   };
   kgeography = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kgeography-22.08.2.tar.xz";
-      sha256 = "1g3jzgadhjk567zr53ha8wi7kzmy3c689k3cp2hqsk1jvc6zfdz8";
-      name = "kgeography-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kgeography-22.08.3.tar.xz";
+      sha256 = "01wgxz54h4hxh63l8r9wvflcmnym175l2b5z5xfzh3pjf8w34rmc";
+      name = "kgeography-22.08.3.tar.xz";
     };
   };
   kget = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kget-22.08.2.tar.xz";
-      sha256 = "0zglqawsqsmign2gxa0aa2pv2yxl2xbsma7ap8xnars55mzghq2j";
-      name = "kget-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kget-22.08.3.tar.xz";
+      sha256 = "1b21xvxap2br55nh0jnj0s44qalh2ac0l27lsg5awsan14hhklnp";
+      name = "kget-22.08.3.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kgoldrunner-22.08.2.tar.xz";
-      sha256 = "05pj8y5zgm0dpbcqd7hiinrgpbkplvw0bw340h7pbk7z8j1vl0y9";
-      name = "kgoldrunner-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kgoldrunner-22.08.3.tar.xz";
+      sha256 = "1xsl31sb6g0j4zbb9jg1az80z1wm435gphwjn1bvli3x1rmr214m";
+      name = "kgoldrunner-22.08.3.tar.xz";
     };
   };
   kgpg = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kgpg-22.08.2.tar.xz";
-      sha256 = "140a3jjkwb6m7mwhikac0b7jwn2yg225l7qs52f1ivq5wy9i24h4";
-      name = "kgpg-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kgpg-22.08.3.tar.xz";
+      sha256 = "0x10h02ivxkkvk5d59154mx8cs1vcm98mki4xkhxvg77nsi6zfib";
+      name = "kgpg-22.08.3.tar.xz";
     };
   };
   khangman = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/khangman-22.08.2.tar.xz";
-      sha256 = "15fza1hdm66p8h735n8fkabmfjda3rgazd70xwl79ckwwiyg7dcd";
-      name = "khangman-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/khangman-22.08.3.tar.xz";
+      sha256 = "15wi925nxa59wi7w4kq0acvm1x424xc9cf9rx2dpljg698n7ymag";
+      name = "khangman-22.08.3.tar.xz";
     };
   };
   khelpcenter = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/khelpcenter-22.08.2.tar.xz";
-      sha256 = "1b3qcvbrdkrvcpfjgvp8qv744q1pvbhb77qvald6lpv79b14ba30";
-      name = "khelpcenter-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/khelpcenter-22.08.3.tar.xz";
+      sha256 = "004rlvgq46jalg6czxmqlqwp4kg9li8n7xrhjgqcpip8c2dr8q0r";
+      name = "khelpcenter-22.08.3.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kidentitymanagement-22.08.2.tar.xz";
-      sha256 = "06a0jghxxq17cvnfxbivpws1s1r9xanj321six3sfyr8z0iypkd1";
-      name = "kidentitymanagement-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kidentitymanagement-22.08.3.tar.xz";
+      sha256 = "1n8bzm0v9viplg7fj1b5i0rl75amxf2vpv9s0q17gjjjv1xrqgsy";
+      name = "kidentitymanagement-22.08.3.tar.xz";
     };
   };
   kig = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kig-22.08.2.tar.xz";
-      sha256 = "030sz2d9s7zawzhmilzvvqsczxhmi4zzsl91k28l4cii8qgv23bi";
-      name = "kig-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kig-22.08.3.tar.xz";
+      sha256 = "13mgc40qfmrp98jv39nnkxvw7g72bim42yafsymlhfk0nv9irkc0";
+      name = "kig-22.08.3.tar.xz";
     };
   };
   kigo = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kigo-22.08.2.tar.xz";
-      sha256 = "1f2761p8ikqvaz4fjw5884i8k3cz4bv9pn7a41zad5qylfckrr4b";
-      name = "kigo-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kigo-22.08.3.tar.xz";
+      sha256 = "0c1zql659qhb0qy9vk973gc96dv4b83sqlli222ccw9i2faqahwc";
+      name = "kigo-22.08.3.tar.xz";
     };
   };
   killbots = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/killbots-22.08.2.tar.xz";
-      sha256 = "01c0whsw9yk6v0qa1mp947z8rbw52y9hlm8jan9qwkgbx8sjy3dl";
-      name = "killbots-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/killbots-22.08.3.tar.xz";
+      sha256 = "007ajm08afvm7lbhd8014lcq4p3xsl85l7ymv31m9p27kqn1ini5";
+      name = "killbots-22.08.3.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kimagemapeditor-22.08.2.tar.xz";
-      sha256 = "1rvjqg9nhxwzs33g3kd5yxhf67zlkgl1pwbldw7gxyg1ah0znfzq";
-      name = "kimagemapeditor-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kimagemapeditor-22.08.3.tar.xz";
+      sha256 = "056bndyiw059r2vc9895wz06cvivq1bnlwkzaadvfr7rbf0n421f";
+      name = "kimagemapeditor-22.08.3.tar.xz";
     };
   };
   kimap = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kimap-22.08.2.tar.xz";
-      sha256 = "1sxrpjjckpl26harhwvcgmxlf6q5cc6v0xydf0ryrkmh24d7cpda";
-      name = "kimap-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kimap-22.08.3.tar.xz";
+      sha256 = "1blmsi7z6vw5raclrh355kyj6fmdmr9xgv89r41xpwq5z20dkvaz";
+      name = "kimap-22.08.3.tar.xz";
     };
   };
   kio-extras = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kio-extras-22.08.2.tar.xz";
-      sha256 = "0rm4syzvxbj1z06896dm2sz9zg5rgc834i78vqfl1c9li09nbmjx";
-      name = "kio-extras-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kio-extras-22.08.3.tar.xz";
+      sha256 = "1svk7a21iwg4y5xxxks0bin6iajmvxg3aysbb6lapi24f10wjdi8";
+      name = "kio-extras-22.08.3.tar.xz";
     };
   };
   kio-gdrive = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kio-gdrive-22.08.2.tar.xz";
-      sha256 = "12dajggmiz7kkrc4z59cnai25d62by098bdz9r71xg3lvsx96hhv";
-      name = "kio-gdrive-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kio-gdrive-22.08.3.tar.xz";
+      sha256 = "17dn1ps7q7n6cqv7ma9jxv9xz590jhydxmgy307hyd1sb8n8cbrf";
+      name = "kio-gdrive-22.08.3.tar.xz";
     };
   };
   kio-zeroconf = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kio-zeroconf-22.08.2.tar.xz";
-      sha256 = "0zwjdqkiimqhjrd1pi4cjw148gah3l813276lb7jq3avhrncll25";
-      name = "kio-zeroconf-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kio-zeroconf-22.08.3.tar.xz";
+      sha256 = "14rl6ifqy48g6pbax9lvx2zamc6qivy0rv26s0q0dc6w5j7y5msp";
+      name = "kio-zeroconf-22.08.3.tar.xz";
     };
   };
   kipi-plugins = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kipi-plugins-22.08.2.tar.xz";
-      sha256 = "0xk6sya14kv78qhk4fz1ng7fzghmw9cv0ybf5y2q5nvwdmv71c2p";
-      name = "kipi-plugins-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kipi-plugins-22.08.3.tar.xz";
+      sha256 = "1y4jbjpmg0bskqj66y3g46hkgc4vnqg0hd5fkzrr8qqbnzi5vnsn";
+      name = "kipi-plugins-22.08.3.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kirigami-gallery-22.08.2.tar.xz";
-      sha256 = "07fvk0xmajxyx15rrbdp7zwyagxq6dqzls3x770rfx8la42v91fp";
-      name = "kirigami-gallery-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kirigami-gallery-22.08.3.tar.xz";
+      sha256 = "0sj5d2hc1ks4999a5l9lxxwx7wridw7pr40pr3r0x5wnav3y8vdx";
+      name = "kirigami-gallery-22.08.3.tar.xz";
     };
   };
   kiriki = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kiriki-22.08.2.tar.xz";
-      sha256 = "14akhdsr2m42d7my0vc1lzk656a1hphgnr1qr5vi4h8wz5aaamx7";
-      name = "kiriki-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kiriki-22.08.3.tar.xz";
+      sha256 = "11hf2455mjw0ix8paxk0w8zf9glcmksz7yi4z3c5krzb9954w8zx";
+      name = "kiriki-22.08.3.tar.xz";
     };
   };
   kiten = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kiten-22.08.2.tar.xz";
-      sha256 = "1w8k6hj3m5445qdng69z1wylp2jibxw37pjnhqkm5c7bcbhv3wms";
-      name = "kiten-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kiten-22.08.3.tar.xz";
+      sha256 = "1lpd31idh1sikmzcnjqk8z22ivw4rb2670blxf1v7gll83ncif2l";
+      name = "kiten-22.08.3.tar.xz";
     };
   };
   kitinerary = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kitinerary-22.08.2.tar.xz";
-      sha256 = "0b0l0d0apyqjvw503q2kzxyk4dd5qcxkrfgzlg83hvkazy27gd90";
-      name = "kitinerary-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kitinerary-22.08.3.tar.xz";
+      sha256 = "0m31x86jw4fdxh9wrlrpqy14w6mfr03c6ksf0kfpysf5iy6gb79b";
+      name = "kitinerary-22.08.3.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kjumpingcube-22.08.2.tar.xz";
-      sha256 = "1hmn792wb3w3fb4dsiv6pwx8azxcg92y36zn29jivbm7g2p14852";
-      name = "kjumpingcube-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kjumpingcube-22.08.3.tar.xz";
+      sha256 = "1q145xcwy845zgrzsnrp2iq1vg5d78n1ygjkkcx79zisg7jl2nxl";
+      name = "kjumpingcube-22.08.3.tar.xz";
     };
   };
   kldap = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kldap-22.08.2.tar.xz";
-      sha256 = "0jnybrfbgbvmz6am8mg3bq1j80yayfzmjqyr6qr5lwzw21prbzmd";
-      name = "kldap-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kldap-22.08.3.tar.xz";
+      sha256 = "16jdp9mxjbsxhjwbvwi9p9l28cm59v2l54hlgj6ap4qx9i7v5l3l";
+      name = "kldap-22.08.3.tar.xz";
     };
   };
   kleopatra = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kleopatra-22.08.2.tar.xz";
-      sha256 = "0dxwaav96ghs8wns61xijwvj7d4g94kf290iv3x1dcdys19fqmw2";
-      name = "kleopatra-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kleopatra-22.08.3.tar.xz";
+      sha256 = "0xgqyxzjpp466pbjawfgqvpyx4hq1h2n84n7794c475zcw5gapp1";
+      name = "kleopatra-22.08.3.tar.xz";
     };
   };
   klettres = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/klettres-22.08.2.tar.xz";
-      sha256 = "1xl131llc3fdn9pqc9b7d4im7qfwr5aj4ifvvyyf96yqinzp0zj7";
-      name = "klettres-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/klettres-22.08.3.tar.xz";
+      sha256 = "0k2k93ah435jw708l0d80bmh3lizzr10mzbp4yxmfpjx0wlzyhys";
+      name = "klettres-22.08.3.tar.xz";
     };
   };
   klickety = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/klickety-22.08.2.tar.xz";
-      sha256 = "11bnzjr644kmnc2y2r6zjkia5xc7b4bylrxp42wlbgkzrs231xbv";
-      name = "klickety-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/klickety-22.08.3.tar.xz";
+      sha256 = "1qnn1h3jv31jga2s5vs8zlib4w4arngl48hadvbz5ri1vm15didh";
+      name = "klickety-22.08.3.tar.xz";
     };
   };
   klines = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/klines-22.08.2.tar.xz";
-      sha256 = "040xqlbikmw2kiv3r7ygpccfqj706073ai22drvrky7h5is4fqac";
-      name = "klines-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/klines-22.08.3.tar.xz";
+      sha256 = "03qwfzkpain3lz8jvma8iw4jy92zfs7dv4bxbng2cb58ak7ssdx5";
+      name = "klines-22.08.3.tar.xz";
     };
   };
   kmag = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmag-22.08.2.tar.xz";
-      sha256 = "0drihlib1kdlhacp3z3mbqamyzzjwc75883432sdn9p27nqv2q1d";
-      name = "kmag-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmag-22.08.3.tar.xz";
+      sha256 = "09qn77b0c0cijfcxndcb682jlxw8kdg21n74n9yyjysapxc6i48n";
+      name = "kmag-22.08.3.tar.xz";
     };
   };
   kmahjongg = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmahjongg-22.08.2.tar.xz";
-      sha256 = "1dzwbzpygz78r76r8afi9ycpy7cldl1gckl0klpzg7c6af9dzxag";
-      name = "kmahjongg-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmahjongg-22.08.3.tar.xz";
+      sha256 = "175wvjhyici0k6wcz7a4glf1jx6w8nfc13sph1vjaxqcshg0sdi4";
+      name = "kmahjongg-22.08.3.tar.xz";
     };
   };
   kmail = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmail-22.08.2.tar.xz";
-      sha256 = "0216qpq980da4wxh8sdns7vkym7mgspdn4p3rcn2wx0dsid950rn";
-      name = "kmail-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmail-22.08.3.tar.xz";
+      sha256 = "15hq1dq88crqfjlg1n87hkfddlzc4k37qq289vx83wjp9jjzpqr0";
+      name = "kmail-22.08.3.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmail-account-wizard-22.08.2.tar.xz";
-      sha256 = "1dlbf7sjdzarpdn8kpnkgy7yibr4akd5ly6g19vpn9icniy3dkbv";
-      name = "kmail-account-wizard-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmail-account-wizard-22.08.3.tar.xz";
+      sha256 = "08y0c4rqk8giryawglk6x5lk8sn6vj280r9wrpji0x3sg8mdkr97";
+      name = "kmail-account-wizard-22.08.3.tar.xz";
     };
   };
   kmailtransport = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmailtransport-22.08.2.tar.xz";
-      sha256 = "03vbplx7ih2kd3fq59qcph4avpz5k75d4v7bjixn6krz44l4mjn0";
-      name = "kmailtransport-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmailtransport-22.08.3.tar.xz";
+      sha256 = "11z9l1d25hg5fr74jwqrdj2m8a7kcyig6006yxcpzpvg7xzf489p";
+      name = "kmailtransport-22.08.3.tar.xz";
     };
   };
   kmbox = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmbox-22.08.2.tar.xz";
-      sha256 = "0rwk1fsd16cjmsz9b6md6d2yw8h6bpx0g49f4lyp0acpl84nvik1";
-      name = "kmbox-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmbox-22.08.3.tar.xz";
+      sha256 = "03nrc6zcp2mmzj1mxjskcmz73gm2s9b8w822rg2yrfrwbr64g6wi";
+      name = "kmbox-22.08.3.tar.xz";
     };
   };
   kmime = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmime-22.08.2.tar.xz";
-      sha256 = "16mmkqmwni9bvf4409fdmnsvgizzbw1mq26vvbnn56yxjvqv9p3q";
-      name = "kmime-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmime-22.08.3.tar.xz";
+      sha256 = "0lhk4h3824xncfhqpz7vmbasibhpkmxcimb9f5lvdq17fnfsy8ab";
+      name = "kmime-22.08.3.tar.xz";
     };
   };
   kmines = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmines-22.08.2.tar.xz";
-      sha256 = "0pvdlnwn7f8yla0pjbkjvdljqlc7vz61qpvrb0ika0c6mz2gn1hf";
-      name = "kmines-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmines-22.08.3.tar.xz";
+      sha256 = "1dmid2m6w8d68zkc0r2j4v1a3qnlrn2pf4a6zz6k5xyylna1219c";
+      name = "kmines-22.08.3.tar.xz";
     };
   };
   kmix = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmix-22.08.2.tar.xz";
-      sha256 = "17cvcfm0n8qhzxfacvfb9m0ifi1n8qp04nv3r7x9ncr7bzr0xcsi";
-      name = "kmix-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmix-22.08.3.tar.xz";
+      sha256 = "0sr0pzx5vzkdhi1ncrggsinad0b5yd1zck1nadmkmp8brffkgbra";
+      name = "kmix-22.08.3.tar.xz";
     };
   };
   kmousetool = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmousetool-22.08.2.tar.xz";
-      sha256 = "0m2nli3fn8ql104zsqvkjldpynjw3jcp23prfg75jdvdbywhcy2d";
-      name = "kmousetool-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmousetool-22.08.3.tar.xz";
+      sha256 = "0jcv784cb07k8jsjdcx9a7zirjpkv6gdkfh40ra2hdmh9wp3l5bd";
+      name = "kmousetool-22.08.3.tar.xz";
     };
   };
   kmouth = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmouth-22.08.2.tar.xz";
-      sha256 = "1njqk67gpwml88hmc00y18v96ybpk1wpj0ii77fi8gparn6jr8sj";
-      name = "kmouth-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmouth-22.08.3.tar.xz";
+      sha256 = "0irbx6k8d1brv8nsi3mwiwhivj4265lsbyhc4xwpqvpdb0xwws7c";
+      name = "kmouth-22.08.3.tar.xz";
     };
   };
   kmplot = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kmplot-22.08.2.tar.xz";
-      sha256 = "0zc3r5663k9hknjfhpg2afs1xwfpryi2y1fk6vpa5y3b4v2mmrm3";
-      name = "kmplot-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kmplot-22.08.3.tar.xz";
+      sha256 = "0s1b3iwqkid545axv18y6v3pkp5zvh9hihr5cxiygclsfbcn5vka";
+      name = "kmplot-22.08.3.tar.xz";
     };
   };
   knavalbattle = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/knavalbattle-22.08.2.tar.xz";
-      sha256 = "0cq1wx71ff99bdi1swjgfzfgcf2pfq2smqnli2kb2swj9hxcmags";
-      name = "knavalbattle-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/knavalbattle-22.08.3.tar.xz";
+      sha256 = "1m6vb6y8fy8inv09b28p728308ljfp79r6m3bdp8q7swghcq0252";
+      name = "knavalbattle-22.08.3.tar.xz";
     };
   };
   knetwalk = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/knetwalk-22.08.2.tar.xz";
-      sha256 = "00a82ac2ky5mrkzqxvafawic9w3dqf6ljlknjsw191bvc36niaiw";
-      name = "knetwalk-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/knetwalk-22.08.3.tar.xz";
+      sha256 = "09r0mbd9ab04j3ylm59y7x6qn7ana1kjnrb3494cch8qdg6w0yvd";
+      name = "knetwalk-22.08.3.tar.xz";
     };
   };
   knights = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/knights-22.08.2.tar.xz";
-      sha256 = "17cwh08cl2zngipmryfrzk212q7drj4v7sb9g92xqgld6a6hhvcv";
-      name = "knights-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/knights-22.08.3.tar.xz";
+      sha256 = "19k0gppis93f0skg4nkmn46zvipw5mplgbdivka45ica6cqxfk3k";
+      name = "knights-22.08.3.tar.xz";
     };
   };
   knotes = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/knotes-22.08.2.tar.xz";
-      sha256 = "12davidg9s4a3j006wi1hvh4d93jgdfdb7z4bqili30sq6hzfc56";
-      name = "knotes-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/knotes-22.08.3.tar.xz";
+      sha256 = "0kvcmm13ib47nq6qm4n2sgzqhrcajy0ihpf7ca5ivcbg094id1zm";
+      name = "knotes-22.08.3.tar.xz";
     };
   };
   kolf = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kolf-22.08.2.tar.xz";
-      sha256 = "0r0sbbk3f9bwk7pnmxgdrpy6ya8rj3yiynw37j5s6cljzbd2bmkp";
-      name = "kolf-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kolf-22.08.3.tar.xz";
+      sha256 = "0bmnbvk2jzwwqirvlpkx21alcffly8h31s890my2jnb54cvh082d";
+      name = "kolf-22.08.3.tar.xz";
     };
   };
   kollision = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kollision-22.08.2.tar.xz";
-      sha256 = "0mcilhynxrlka9lfg01f3awcl5563q8mqfrxfsplxxxsnhkrnd46";
-      name = "kollision-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kollision-22.08.3.tar.xz";
+      sha256 = "14sk27lpma80mqg3c9l4gbqqwv2cwkqnmzlqgz8f14i4ykjkzvm0";
+      name = "kollision-22.08.3.tar.xz";
     };
   };
   kolourpaint = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kolourpaint-22.08.2.tar.xz";
-      sha256 = "12xgr6zg1sjcqmg8jn7fryimf8qd0nc1lpjzhd1i8gimm4dv0xkb";
-      name = "kolourpaint-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kolourpaint-22.08.3.tar.xz";
+      sha256 = "03y6x90g81vykdq7jf4n59624ddxjs762x3jinb6kqabgfp8qzil";
+      name = "kolourpaint-22.08.3.tar.xz";
     };
   };
   kompare = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kompare-22.08.2.tar.xz";
-      sha256 = "1fqsgynnqm0gmzcn4hb72ag6rragp7h7ln3n0ca55m7nh9pwqhy5";
-      name = "kompare-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kompare-22.08.3.tar.xz";
+      sha256 = "0y49812irc1jqvx2ahp6frmjsvp2kzlfbfiirdhkskfrsciq61fv";
+      name = "kompare-22.08.3.tar.xz";
     };
   };
   konqueror = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/konqueror-22.08.2.tar.xz";
-      sha256 = "128db1pcq608m336swhdzrlbwy316yxh1hccy7lm74p67yy3n4pv";
-      name = "konqueror-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/konqueror-22.08.3.tar.xz";
+      sha256 = "06gbjax34la6pdq07ryl6kl5his0zd1cx11dvmd4lqi9xy1rlaxj";
+      name = "konqueror-22.08.3.tar.xz";
     };
   };
   konquest = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/konquest-22.08.2.tar.xz";
-      sha256 = "1gc6hj0i89xkcx351aznixpy6579z1mq3a7z6zfinwy4m8h6r1nv";
-      name = "konquest-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/konquest-22.08.3.tar.xz";
+      sha256 = "1fwjj5xknqv09y4yif2ixzjs2dm79ib7fs3imgkgwzzi3zgcn1jn";
+      name = "konquest-22.08.3.tar.xz";
     };
   };
   konsole = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/konsole-22.08.2.tar.xz";
-      sha256 = "0v79pnm0r15pn5p0q6hifp9b9w14qsikn10x8hwam9ij6bi78dcy";
-      name = "konsole-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/konsole-22.08.3.tar.xz";
+      sha256 = "16n0z8h2fcx6r60ls5k39jskq7xjw5ppn4vi822cfljvq16prw56";
+      name = "konsole-22.08.3.tar.xz";
     };
   };
   kontact = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kontact-22.08.2.tar.xz";
-      sha256 = "18y4dqswrykj27p5k9kav2ayd7aqakdcc4d557lf76x0n2w11ldj";
-      name = "kontact-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kontact-22.08.3.tar.xz";
+      sha256 = "1fsay42vwqv7lzn68scd97nix0bk804k6afnrrq5fzfn6j15kq08";
+      name = "kontact-22.08.3.tar.xz";
     };
   };
   kontactinterface = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kontactinterface-22.08.2.tar.xz";
-      sha256 = "1pkf8yhxdfbzk04vjj8xjpsrjyg58by97yxyb5a40avgq2s136n7";
-      name = "kontactinterface-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kontactinterface-22.08.3.tar.xz";
+      sha256 = "04flmnkfplykisl1523yc3b80z0sf5x1q7p3is42mkczqxagyi5x";
+      name = "kontactinterface-22.08.3.tar.xz";
     };
   };
   kontrast = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kontrast-22.08.2.tar.xz";
-      sha256 = "1xkx810kzm7bs6c2b7kh08v5dkq3rx3hdi7pad06jqv75l5k0dbn";
-      name = "kontrast-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kontrast-22.08.3.tar.xz";
+      sha256 = "05f9lndlg16xcqi6k3c04y87d25nvpgksjk25vvfzsm9jz62dxhv";
+      name = "kontrast-22.08.3.tar.xz";
     };
   };
   konversation = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/konversation-22.08.2.tar.xz";
-      sha256 = "0b0asdm3ykjbjm2g4wmzxz6p6f2wh43rd3lmd3c7g5hsjvlf6nq4";
-      name = "konversation-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/konversation-22.08.3.tar.xz";
+      sha256 = "1wa6dgm5pyvng2b0y5h701x6nhss1amrj6hgsvb7h31cqcj1kmxi";
+      name = "konversation-22.08.3.tar.xz";
     };
   };
   kopeninghours = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kopeninghours-22.08.2.tar.xz";
-      sha256 = "0hfjrkwxb6p06d1a4db2qcn24lxw7jw1xi1ba0hhwxg4c2xwrlfw";
-      name = "kopeninghours-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kopeninghours-22.08.3.tar.xz";
+      sha256 = "02gdzypcyk9rbrj9h3pwgaq6x8qmgyacchlq1w2lxxf33qlx9nr8";
+      name = "kopeninghours-22.08.3.tar.xz";
     };
   };
   kopete = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kopete-22.08.2.tar.xz";
-      sha256 = "1k59v6zbc9drdy5kwrx099frpm1rlb0g62j3s2cyp2893h2q9qjf";
-      name = "kopete-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kopete-22.08.3.tar.xz";
+      sha256 = "0037zps0zppvnwxsk21x2p3iqvs5b037r5bs77nip8qridykf8as";
+      name = "kopete-22.08.3.tar.xz";
     };
   };
   korganizer = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/korganizer-22.08.2.tar.xz";
-      sha256 = "1622fq9qi75r2csnb3r2gs5ncd5qbg0bs55i7ab6dypm8q2rsnaf";
-      name = "korganizer-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/korganizer-22.08.3.tar.xz";
+      sha256 = "0aiwj988i139mv0dk0ygfa7pai7xfxipq8r9wy5g6wgnxq7rn1cl";
+      name = "korganizer-22.08.3.tar.xz";
     };
   };
   kosmindoormap = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kosmindoormap-22.08.2.tar.xz";
-      sha256 = "11mhn00zlj60zi9hms33i2r8w66wnw883g6sb9l0fxm5q7ijbqvr";
-      name = "kosmindoormap-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kosmindoormap-22.08.3.tar.xz";
+      sha256 = "1m863pg6visgyib01wcf0b40dpdv1f0vi1gb5x5cgcvyk0ihllcv";
+      name = "kosmindoormap-22.08.3.tar.xz";
     };
   };
   kpat = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kpat-22.08.2.tar.xz";
-      sha256 = "1kw26nbnk6s95jkfbxxhnibsiwif877ggbs0arwmqssfqv9lj046";
-      name = "kpat-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kpat-22.08.3.tar.xz";
+      sha256 = "05jzhfv9qhfml390cg9pscvrrkfdbd72p3k1bdl3r9gf99nzxxxw";
+      name = "kpat-22.08.3.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kpimtextedit-22.08.2.tar.xz";
-      sha256 = "1ayax6yfq1xim8yyfi3kdy0hj4jhj764s3ywjyjzwxk9k8k8bvkb";
-      name = "kpimtextedit-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kpimtextedit-22.08.3.tar.xz";
+      sha256 = "0f31j38y8d389yyj2yj7gkbr7wm1zbvdcf72a0ipdb7pjrzhs7lg";
+      name = "kpimtextedit-22.08.3.tar.xz";
     };
   };
   kpkpass = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kpkpass-22.08.2.tar.xz";
-      sha256 = "0s5jl9h2wsjs935zh2g84l8fdk22z2926xp361461v55ma287z1w";
-      name = "kpkpass-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kpkpass-22.08.3.tar.xz";
+      sha256 = "1rprcf74d6sc561v2v6gvrb2k2z0jidjg9i7g3hdv8x1cby7gav4";
+      name = "kpkpass-22.08.3.tar.xz";
     };
   };
   kpmcore = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kpmcore-22.08.2.tar.xz";
-      sha256 = "1vnay6gbnmmyi4a4j8gxynmawjnly7mxlmk3xmfx96a20d4jsy7x";
-      name = "kpmcore-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kpmcore-22.08.3.tar.xz";
+      sha256 = "0ygwjiqpzcp7y1x46isbhh6nfcn6acml791cxiwq280ynzklkmil";
+      name = "kpmcore-22.08.3.tar.xz";
     };
   };
   kpublictransport = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kpublictransport-22.08.2.tar.xz";
-      sha256 = "0w38b9ji9jhn2lphcsbfayipcxj56ls9dvbb73saddbrh8vazyyp";
-      name = "kpublictransport-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kpublictransport-22.08.3.tar.xz";
+      sha256 = "1zjdgs06dk44lvilikhpmk741cc3p6bkwxm7fkpqd4pc8jv3yvbz";
+      name = "kpublictransport-22.08.3.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kqtquickcharts-22.08.2.tar.xz";
-      sha256 = "0frsjwcbr8080yhpx55fri0km30bx5ylyvsj71il05bdjsbcrd43";
-      name = "kqtquickcharts-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kqtquickcharts-22.08.3.tar.xz";
+      sha256 = "1vcgpl50a9rp6sgm0sq77pn1w9gqzmvsabfbdd85v7z5h5bm9ifr";
+      name = "kqtquickcharts-22.08.3.tar.xz";
     };
   };
   krdc = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/krdc-22.08.2.tar.xz";
-      sha256 = "012g6dk80i8y5aicygh420346yh9jrrr3dm7czp7wgdnw837sf60";
-      name = "krdc-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/krdc-22.08.3.tar.xz";
+      sha256 = "0h70wgbrn1p64fknw4hx219r9bjcj05bsxc6brsk97vab6mkz7rp";
+      name = "krdc-22.08.3.tar.xz";
     };
   };
   kreversi = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kreversi-22.08.2.tar.xz";
-      sha256 = "04d0nzgcha67kysz4c4kn95qiwb2qvr0b0rnazjr8fzmn8il120s";
-      name = "kreversi-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kreversi-22.08.3.tar.xz";
+      sha256 = "0glfz7r4bapcr6p3i1rwrv49kljzdrpwr146nvcd8v8a0qc0aw86";
+      name = "kreversi-22.08.3.tar.xz";
     };
   };
   krfb = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/krfb-22.08.2.tar.xz";
-      sha256 = "0qkryb7n0k5dm22lqygk3nlkydvblvms80039v4im4ffjvbz9dna";
-      name = "krfb-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/krfb-22.08.3.tar.xz";
+      sha256 = "1ccpp39x75ggz2hz1fzah9pzmg2bqp2z0gkvk5s3d08952b3lnls";
+      name = "krfb-22.08.3.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kross-interpreters-22.08.2.tar.xz";
-      sha256 = "0jdyvf4yfdkws9gpdgdfd87ghblq872jxqiqf5w2i778sxjxjiv6";
-      name = "kross-interpreters-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kross-interpreters-22.08.3.tar.xz";
+      sha256 = "0xhly152145x7zhbvnngr753bj5ncwkj2467mpcx3xxddsnkgll9";
+      name = "kross-interpreters-22.08.3.tar.xz";
     };
   };
   kruler = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kruler-22.08.2.tar.xz";
-      sha256 = "05fxzya2dk2y8mxydw8xnabify8mvq6q7vpbb998fpwssiis9b1q";
-      name = "kruler-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kruler-22.08.3.tar.xz";
+      sha256 = "1s28hcacmsiab1g5zw33ncs2kn9kjsf3qjj2866azhjks1wpjzkz";
+      name = "kruler-22.08.3.tar.xz";
     };
   };
   ksanecore = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksanecore-22.08.2.tar.xz";
-      sha256 = "1vcywz0sz4znagxp3wcz98b5sqdmbk6fyy3bq7z3vz8yvbgy8cbv";
-      name = "ksanecore-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksanecore-22.08.3.tar.xz";
+      sha256 = "1mq35m78dqxbswavhpn91nxbqjihxfvgnv6mc23sjvxmyy6khnqq";
+      name = "ksanecore-22.08.3.tar.xz";
     };
   };
   kshisen = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kshisen-22.08.2.tar.xz";
-      sha256 = "16520gdkv65gbnnrdylbkr3ypvjirag29lhbkqks4laacvgfd4b8";
-      name = "kshisen-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kshisen-22.08.3.tar.xz";
+      sha256 = "17adlx753qiglbvcsg5ik4ap24mvrm0mypkp8a3yq6h580n8lv57";
+      name = "kshisen-22.08.3.tar.xz";
     };
   };
   ksirk = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksirk-22.08.2.tar.xz";
-      sha256 = "120r1c9kwhm9d5isc0kv8bwgi3gxiqcxs9psk8szk8wb0yycip61";
-      name = "ksirk-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksirk-22.08.3.tar.xz";
+      sha256 = "0aj2m3icy8sba9cbzl31pxhbhwvkcyd4kczkvxc4q1q70sd5da2s";
+      name = "ksirk-22.08.3.tar.xz";
     };
   };
   ksmtp = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksmtp-22.08.2.tar.xz";
-      sha256 = "15alzc5z054jcw2pkraj2vd29b2p0wwp4a90wr1fbvm1a10bp454";
-      name = "ksmtp-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksmtp-22.08.3.tar.xz";
+      sha256 = "0knw35ai0qi252qpx92zq15ihgb2n5kq6dg6k17wnrzp03nnbslv";
+      name = "ksmtp-22.08.3.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksnakeduel-22.08.2.tar.xz";
-      sha256 = "0s7qg05wr4zyyy8m76hmfc9q5kvk02c20ga890mq418qkxrhqycf";
-      name = "ksnakeduel-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksnakeduel-22.08.3.tar.xz";
+      sha256 = "04j31cmb8g1q090dz84bhfqc789srqad902fz5f9zp2gl2rbvnrz";
+      name = "ksnakeduel-22.08.3.tar.xz";
     };
   };
   kspaceduel = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kspaceduel-22.08.2.tar.xz";
-      sha256 = "0p02j6hi5gvb36gxwvd8g7m8ajmmigwgfpx85jad01jnzrr8raci";
-      name = "kspaceduel-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kspaceduel-22.08.3.tar.xz";
+      sha256 = "10zrrblp9xzb7ldpknv3zsz7fr9qjv8317wxw6aihb2m3gb6c0hk";
+      name = "kspaceduel-22.08.3.tar.xz";
     };
   };
   ksquares = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksquares-22.08.2.tar.xz";
-      sha256 = "1v7lfg3if1ksi6zjx9rkn8mbc9nnq1025s9zsc6x847lmnzc214v";
-      name = "ksquares-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksquares-22.08.3.tar.xz";
+      sha256 = "0whwdkil3vqzrni0pqnh7x5dsqsd3i22m3xcv1adw1j3r5r8z05h";
+      name = "ksquares-22.08.3.tar.xz";
     };
   };
   ksudoku = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksudoku-22.08.2.tar.xz";
-      sha256 = "1qi75fbqqj3r8rchzpaf2sjxlib8gj44q8bbdqd4ba3p0y7qap77";
-      name = "ksudoku-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksudoku-22.08.3.tar.xz";
+      sha256 = "0z8f0hyr60sps2zkbgsfqwyj8ksf7q5zvacjzbdpysg09h9fqyf7";
+      name = "ksudoku-22.08.3.tar.xz";
     };
   };
   ksystemlog = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ksystemlog-22.08.2.tar.xz";
-      sha256 = "0iil7mxn9g1v6p2vdriy7zfkml3znjaps27jzvpdwfna9wclbc2r";
-      name = "ksystemlog-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ksystemlog-22.08.3.tar.xz";
+      sha256 = "0klsnnc7aljbx5drwv2nf3sd6w32k1dzlmnmpyi62cckvdcq0y3z";
+      name = "ksystemlog-22.08.3.tar.xz";
     };
   };
   kteatime = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kteatime-22.08.2.tar.xz";
-      sha256 = "0zlj14glzbx3k4vrjjgk5xp7yzvvpsjafkm5h1470bvbrp8c6ird";
-      name = "kteatime-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kteatime-22.08.3.tar.xz";
+      sha256 = "1magsihwm6mnrpwks29kg2s057fcakj22j5xj1d02dh49ch46rx7";
+      name = "kteatime-22.08.3.tar.xz";
     };
   };
   ktimer = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktimer-22.08.2.tar.xz";
-      sha256 = "0nigdd98xdcyxjqbxbc37bqwkvv7qms3h6z03s9nv1h6cw45nsps";
-      name = "ktimer-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktimer-22.08.3.tar.xz";
+      sha256 = "0lyblql9dzmcm5bhj3y7bir4hrcr3289brxzj2ii7dqm3x0fxyq0";
+      name = "ktimer-22.08.3.tar.xz";
     };
   };
   ktnef = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktnef-22.08.2.tar.xz";
-      sha256 = "1k7vhmb3205ab626bjc0dm97c2cwcbfjzp2rc2dz4sgx0c090r6g";
-      name = "ktnef-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktnef-22.08.3.tar.xz";
+      sha256 = "1zqk83pzb6ix10xi453ccbx0y2cvyhwqyz1jbzrcyasl3y6s4ldw";
+      name = "ktnef-22.08.3.tar.xz";
     };
   };
   ktorrent = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktorrent-22.08.2.tar.xz";
-      sha256 = "107x5y45x16z952kwgf3w0g6sv350snxbj46g4yziwsbhixmfzaw";
-      name = "ktorrent-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktorrent-22.08.3.tar.xz";
+      sha256 = "1ddmx4v1fayb7vp3ic7wab4jj18jw5lq4gm4rbr3wmicsl6k0cjr";
+      name = "ktorrent-22.08.3.tar.xz";
     };
   };
   ktouch = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktouch-22.08.2.tar.xz";
-      sha256 = "1p5jzp2y8l70q7gjrq7fj2c0y3hydaan82c8v7h4nwgkji5p452c";
-      name = "ktouch-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktouch-22.08.3.tar.xz";
+      sha256 = "1f1c66gxjv3g3vj6ld6c8qmdnbf3mdxdd5s2dqyjc9yq6ql5g6qd";
+      name = "ktouch-22.08.3.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-accounts-kcm-22.08.2.tar.xz";
-      sha256 = "0dbv0qvj9lqqxm3app4856wvshrxdh42n6md83w4356fqgf4ihbf";
-      name = "ktp-accounts-kcm-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-accounts-kcm-22.08.3.tar.xz";
+      sha256 = "17prcf1irr8x62pcbzzfq8hl3l3k93wnaiva67wzr9mlh9b1a0cj";
+      name = "ktp-accounts-kcm-22.08.3.tar.xz";
     };
   };
   ktp-approver = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-approver-22.08.2.tar.xz";
-      sha256 = "0mnnpwx3khapz38agj1gw3fvpi8n3h3xdhx07i9kl2r0wpxhnrpi";
-      name = "ktp-approver-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-approver-22.08.3.tar.xz";
+      sha256 = "1b2aqwmdbmsygg4qxdfwxfb94n09hlfpisck31wj5l67vy8hr3lg";
+      name = "ktp-approver-22.08.3.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-auth-handler-22.08.2.tar.xz";
-      sha256 = "000rviz3mmdrmzy0nsjg4zbc1d1razkxw61rcnhg34xq2zjvp520";
-      name = "ktp-auth-handler-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-auth-handler-22.08.3.tar.xz";
+      sha256 = "080anm0v8f1y1zyf6h7ym59g2vdlgvh8bq1l4riid1rg434hqhw3";
+      name = "ktp-auth-handler-22.08.3.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-call-ui-22.08.2.tar.xz";
-      sha256 = "0kadrba3kcj8vyskqd68msfg1l2s5v7bdkqdka4dmb5clhsycv19";
-      name = "ktp-call-ui-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-call-ui-22.08.3.tar.xz";
+      sha256 = "1rmn7hz6b9wh5v2zfnkbjmg3klaldy6fc9m0pigd1g3cqlij5lmv";
+      name = "ktp-call-ui-22.08.3.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-common-internals-22.08.2.tar.xz";
-      sha256 = "00xc8yjxc9bd5hmiwpphqz9bb1m77daqqp4hy6srpmnsmd5nvwa7";
-      name = "ktp-common-internals-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-common-internals-22.08.3.tar.xz";
+      sha256 = "1g2xyvdlcfba8pj575x1g3pjkz025lb8pqc418k5knw25mq0nyff";
+      name = "ktp-common-internals-22.08.3.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-contact-list-22.08.2.tar.xz";
-      sha256 = "0lx5cmsqk7xgffv1rfvqdbb02rhygc4grprg689g50c2b129rhcc";
-      name = "ktp-contact-list-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-contact-list-22.08.3.tar.xz";
+      sha256 = "04d36hg052kiw5v58654bdhrpms1vrljq8wp05ii0ncl1ld9z24v";
+      name = "ktp-contact-list-22.08.3.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-contact-runner-22.08.2.tar.xz";
-      sha256 = "1p9m36lpz4y7lsz5iidhsqi27nq9q8ldjasxb15m1b09rr8z95jp";
-      name = "ktp-contact-runner-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-contact-runner-22.08.3.tar.xz";
+      sha256 = "03xi68f1kx8x7l7fi1h9437v7zxbzb4yvmfypq1zdzp0jxwm62fs";
+      name = "ktp-contact-runner-22.08.3.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-desktop-applets-22.08.2.tar.xz";
-      sha256 = "18ylsdkbvz6wfbnq5gjnzq3lpdx0v7hc531fs1p2p4p3ka0xfci5";
-      name = "ktp-desktop-applets-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-desktop-applets-22.08.3.tar.xz";
+      sha256 = "0ji932mgszm7d5wq4r9mig62v1i7swf85yah31zck8mhnmb9867g";
+      name = "ktp-desktop-applets-22.08.3.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-filetransfer-handler-22.08.2.tar.xz";
-      sha256 = "0rxymb0jkdwmzq5l4q81bgajficaxm80wli8lld7kdwkh65mzjb8";
-      name = "ktp-filetransfer-handler-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-filetransfer-handler-22.08.3.tar.xz";
+      sha256 = "0kyqszi3n72p2iczfp0g1arf99cp1i6pf943gm7vzj7g012jql00";
+      name = "ktp-filetransfer-handler-22.08.3.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-kded-module-22.08.2.tar.xz";
-      sha256 = "10lq78rfrjr46v7fl55vki9hq6xsfsd48nbkp1ncxcdccd8a6j5g";
-      name = "ktp-kded-module-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-kded-module-22.08.3.tar.xz";
+      sha256 = "0y4l7qdy571dlk8lvp4c0ar74p8f8msvaxwvz9p60rvxkq8j4z1n";
+      name = "ktp-kded-module-22.08.3.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-send-file-22.08.2.tar.xz";
-      sha256 = "11pk0r82d0myskxdn90xq1fraiyyl1xzyrxx50j9imw1q6w8qv7f";
-      name = "ktp-send-file-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-send-file-22.08.3.tar.xz";
+      sha256 = "11dsifls2n20gadhqb611lb5r4zc40qj4q753kafv7zxsb7ia3xw";
+      name = "ktp-send-file-22.08.3.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktp-text-ui-22.08.2.tar.xz";
-      sha256 = "1jk3f8x18c8zgax5v3jgn8vn091dg9xppi7h4851f1vm348ppfqx";
-      name = "ktp-text-ui-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktp-text-ui-22.08.3.tar.xz";
+      sha256 = "0y816fgx5g2d1wgm1sm1qix3a7pcqsqwf6a9plpcgdpkb6ddvgl7";
+      name = "ktp-text-ui-22.08.3.tar.xz";
     };
   };
   ktuberling = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/ktuberling-22.08.2.tar.xz";
-      sha256 = "06p8vakblj0la06ywi89zss9mcjpb018jhj3a105jj53gl1z8c73";
-      name = "ktuberling-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/ktuberling-22.08.3.tar.xz";
+      sha256 = "04vp3y0jm45m4kdi0mvkg8g653wbjg4csfr31cd5khkaj72rnl1s";
+      name = "ktuberling-22.08.3.tar.xz";
     };
   };
   kturtle = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kturtle-22.08.2.tar.xz";
-      sha256 = "17zg39377lwbnpf438b3jfj1ihrr9zlk4ibmgls7d4x8dqphg9hy";
-      name = "kturtle-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kturtle-22.08.3.tar.xz";
+      sha256 = "0xl4gg4n1qz3v7yfkd754n7sbjkwx6s28iba6k0cqvfcnfinlg42";
+      name = "kturtle-22.08.3.tar.xz";
     };
   };
   kubrick = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kubrick-22.08.2.tar.xz";
-      sha256 = "1ld07pcpzj68p6pd4n7p9b1y8nflydraabqszc7sj88hkf601694";
-      name = "kubrick-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kubrick-22.08.3.tar.xz";
+      sha256 = "07vj9sb49kf8sggi07rh83svvwfvmnac5pb5dwhrmfcjbvlfks27";
+      name = "kubrick-22.08.3.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kwalletmanager-22.08.2.tar.xz";
-      sha256 = "03a9brsck24z6ln6v86wbpj9flg7rpshjfsyr89xbkw6v61hjgaj";
-      name = "kwalletmanager-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kwalletmanager-22.08.3.tar.xz";
+      sha256 = "008avscsl60qwk5l669i1qk7qvvhpnagdyqa494lqikdj5dp8mpf";
+      name = "kwalletmanager-22.08.3.tar.xz";
     };
   };
   kwave = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kwave-22.08.2.tar.xz";
-      sha256 = "0rwm080p56gnichjdaa9r8ki3ycb918c002k8pm8smwbsd7vkw5c";
-      name = "kwave-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kwave-22.08.3.tar.xz";
+      sha256 = "1f2v8vrzd2nrxd3jf9sjwfj2l2m9rdx4036nhd9vpbspx1xsx9mb";
+      name = "kwave-22.08.3.tar.xz";
     };
   };
   kwordquiz = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/kwordquiz-22.08.2.tar.xz";
-      sha256 = "1qy5micdpp0fa1zp15ck44i2afalqbliqnv25yi52aafabj05ixg";
-      name = "kwordquiz-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/kwordquiz-22.08.3.tar.xz";
+      sha256 = "0zb71dywq342z1rz7hxip1f9330rx2bxwia1k5h3krw4kc546872";
+      name = "kwordquiz-22.08.3.tar.xz";
     };
   };
   libgravatar = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libgravatar-22.08.2.tar.xz";
-      sha256 = "1rr6b1prdi2r1n3plg6jwjxm1kxp1azspcbwzs8igbyglmq2h5pq";
-      name = "libgravatar-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libgravatar-22.08.3.tar.xz";
+      sha256 = "0r9dvyfmdyckpjaa9jnqrnllrkxpsq9x7w6kk2fmxdmi8mnclcfm";
+      name = "libgravatar-22.08.3.tar.xz";
     };
   };
   libkcddb = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkcddb-22.08.2.tar.xz";
-      sha256 = "1nhfv9xrc3zxf6553h9sscalyzxw5wk2r9dkbaiv7fcczka7m5mg";
-      name = "libkcddb-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkcddb-22.08.3.tar.xz";
+      sha256 = "01blqihx344cjyxzkbl3lhfhls5wvnqfq04xfyd39s58ljdd2031";
+      name = "libkcddb-22.08.3.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkcompactdisc-22.08.2.tar.xz";
-      sha256 = "17rb5szf17xs6g1bn8wwsc7qxhjc996bfs14570xhyhhwil79z3v";
-      name = "libkcompactdisc-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkcompactdisc-22.08.3.tar.xz";
+      sha256 = "0fd4v1zfzkmvimli878mrmpd4vy7rrz4b12v7gq45micrkrch4b6";
+      name = "libkcompactdisc-22.08.3.tar.xz";
     };
   };
   libkdcraw = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkdcraw-22.08.2.tar.xz";
-      sha256 = "03rzd87gz2czq81y3mjbx0bgrnbipfkx9lnqrm5nj6mcagdir8di";
-      name = "libkdcraw-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkdcraw-22.08.3.tar.xz";
+      sha256 = "1q4zv1i3bfln0ka3jw3ldahvazn5yhhbsk7ynhg3ik2bgacbk54d";
+      name = "libkdcraw-22.08.3.tar.xz";
     };
   };
   libkdegames = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkdegames-22.08.2.tar.xz";
-      sha256 = "1gbdria8yk4j4bna8cs4mmzkgyainras59wrwn36v55c2cdx2jjj";
-      name = "libkdegames-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkdegames-22.08.3.tar.xz";
+      sha256 = "15x068bqw7xaw294z0ly6k1bd7wx55aymrzc07cn9x1hamflvksc";
+      name = "libkdegames-22.08.3.tar.xz";
     };
   };
   libkdepim = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkdepim-22.08.2.tar.xz";
-      sha256 = "1vjc09l7lbhwqrggqihy05sdmffpqbipkxy6ykya7vf4dnm83ddw";
-      name = "libkdepim-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkdepim-22.08.3.tar.xz";
+      sha256 = "07lfc73v3d00k1cwrc7xfmknmk37zvjpy0bq7n93hjs46v9gibwc";
+      name = "libkdepim-22.08.3.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkeduvocdocument-22.08.2.tar.xz";
-      sha256 = "1n7km3xwgdv6mdk83nw16760nfzn7lfcs7mhfm4yay8x930mkhg8";
-      name = "libkeduvocdocument-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkeduvocdocument-22.08.3.tar.xz";
+      sha256 = "161yrwp140gzf3m1nxhz23jpvfy44p7pyvm4gjy671zi5rk65wr3";
+      name = "libkeduvocdocument-22.08.3.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkexiv2-22.08.2.tar.xz";
-      sha256 = "17v90apzvw4rc7wrgla2j0gawvpn4h8m580zwpclh0mdgq7af0js";
-      name = "libkexiv2-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkexiv2-22.08.3.tar.xz";
+      sha256 = "1ldgv28y41987w8lqrh3cvfp1iq1j45bijaf5250grjimc2dgbwd";
+      name = "libkexiv2-22.08.3.tar.xz";
     };
   };
   libkgapi = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkgapi-22.08.2.tar.xz";
-      sha256 = "082bc6x4v9zjzxip9vdlhirnpjr3l1bayshwvzfx7m1f0l4l2ci6";
-      name = "libkgapi-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkgapi-22.08.3.tar.xz";
+      sha256 = "15r1wnbr6f89q661049w9wpkyxhnahknwk3izzpf22j6z9a1a5sd";
+      name = "libkgapi-22.08.3.tar.xz";
     };
   };
   libkipi = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkipi-22.08.2.tar.xz";
-      sha256 = "0g33hhy9b9xzis3kbxd25jg6d651n2cg3icblpf2nnfn6py8vsi6";
-      name = "libkipi-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkipi-22.08.3.tar.xz";
+      sha256 = "11ivz96q9zas8xlckcxpz11ra9pwy1hscq6ggqdwwy4yhs37p0wf";
+      name = "libkipi-22.08.3.tar.xz";
     };
   };
   libkleo = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkleo-22.08.2.tar.xz";
-      sha256 = "0lwknyq1342xlgq0lvbghqma92cpcdb04x20ihg8pv42sp1lhqav";
-      name = "libkleo-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkleo-22.08.3.tar.xz";
+      sha256 = "056kgqn4r3k774h2ynkyg97byai1kvy7rgz1mp415c2di7qjwhl3";
+      name = "libkleo-22.08.3.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkmahjongg-22.08.2.tar.xz";
-      sha256 = "0vl70bdgcwi7dvklb0sy67vjjjmp334biaczlzcq5pa7gkh3fqj5";
-      name = "libkmahjongg-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkmahjongg-22.08.3.tar.xz";
+      sha256 = "0v2bcanldr0ahv747allzjjqac7d9nc51yyj3d1rzsrdpw78zr0y";
+      name = "libkmahjongg-22.08.3.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libkomparediff2-22.08.2.tar.xz";
-      sha256 = "074dpggjcjjkhpdrxzybgnyxj0jp22g4d2p7h7shy2r4pmqdai0s";
-      name = "libkomparediff2-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libkomparediff2-22.08.3.tar.xz";
+      sha256 = "0c4zmwh9ycnh3v6qbdvn6s3m43jcc38n59dzdyh96kqq42vsnldx";
+      name = "libkomparediff2-22.08.3.tar.xz";
     };
   };
   libksane = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libksane-22.08.2.tar.xz";
-      sha256 = "1yhxca4hqdfim6f2q8yay24mdwmcn082kddyddhpgdgl59rdrws6";
-      name = "libksane-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libksane-22.08.3.tar.xz";
+      sha256 = "12rfs8m1may1896mfhb7a8jiqsjpvsi7w6chp7dc0y9d69g9bsgr";
+      name = "libksane-22.08.3.tar.xz";
     };
   };
   libksieve = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libksieve-22.08.2.tar.xz";
-      sha256 = "1k0il3gi11xvd0zab7p09199ixh5hb3xdwqpijzsiwzgl27az46c";
-      name = "libksieve-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libksieve-22.08.3.tar.xz";
+      sha256 = "10466zagivfh59n8gn7ah6kq2axkbz3864sjr9ws95ghcrh0vyz0";
+      name = "libksieve-22.08.3.tar.xz";
     };
   };
   libktorrent = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/libktorrent-22.08.2.tar.xz";
-      sha256 = "0vgq36hbypig2axb5wrn3y2mgm5r7dyrlfq1bj99dnrbrqivsrnd";
-      name = "libktorrent-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/libktorrent-22.08.3.tar.xz";
+      sha256 = "0dhsmlmz8kvsnmkmnkfhpzzd8i5gvg3glhyzmyan985a9rnzg9hz";
+      name = "libktorrent-22.08.3.tar.xz";
     };
   };
   lokalize = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/lokalize-22.08.2.tar.xz";
-      sha256 = "0x1dxwjfbjqhb7dcz6rj74s505npdj2081zyd8sf0q8zjri3cpq6";
-      name = "lokalize-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/lokalize-22.08.3.tar.xz";
+      sha256 = "1va0ic5s6f4nwylz3ll2966dmz1cxd4wq90fcqfdivj2ir162y2p";
+      name = "lokalize-22.08.3.tar.xz";
     };
   };
   lskat = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/lskat-22.08.2.tar.xz";
-      sha256 = "0bw843l3fvwb4b0xg5jx9xyb9lmyq66gzbz3ahzixnw5wbj0c888";
-      name = "lskat-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/lskat-22.08.3.tar.xz";
+      sha256 = "07374x7hqzhdx7f146nvisqz1jwk655j3di58prnwhf6scxb49yn";
+      name = "lskat-22.08.3.tar.xz";
     };
   };
   mailcommon = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/mailcommon-22.08.2.tar.xz";
-      sha256 = "1l169cxizmms721wx7lag4i5fcsbplflfxkpglzh59pjqgfqv4kz";
-      name = "mailcommon-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/mailcommon-22.08.3.tar.xz";
+      sha256 = "1zkgizr9pw1nz9m67svnp5z1rhmwajn9cag52z7f50zvm4i4xic8";
+      name = "mailcommon-22.08.3.tar.xz";
     };
   };
   mailimporter = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/mailimporter-22.08.2.tar.xz";
-      sha256 = "1kcps0q857cy8bdssl8xmfphmlxqhp5i383khcqg42avgrqv3c2h";
-      name = "mailimporter-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/mailimporter-22.08.3.tar.xz";
+      sha256 = "1564icsvqxksdlr2rxd1hyikmmqv1lci12g4n86p3x22srar99mr";
+      name = "mailimporter-22.08.3.tar.xz";
     };
   };
   marble = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/marble-22.08.2.tar.xz";
-      sha256 = "1ys05l0sk4k3bibha23y6q38a9kwhg2rvafmafzg2l37krx0rn47";
-      name = "marble-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/marble-22.08.3.tar.xz";
+      sha256 = "02znm95zxsylqqllns3idacjgzg6lys5dyqg6jv427j0m7ypfxsv";
+      name = "marble-22.08.3.tar.xz";
     };
   };
   markdownpart = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/markdownpart-22.08.2.tar.xz";
-      sha256 = "0sgdkf85gmf1sg508bamll60vg0nanxjp2yccavdrq89snjg6c71";
-      name = "markdownpart-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/markdownpart-22.08.3.tar.xz";
+      sha256 = "14hf1m3dhkhi57cfvq90fakl4y53pndy7pnxyab5xvw75n5ghvrm";
+      name = "markdownpart-22.08.3.tar.xz";
     };
   };
   mbox-importer = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/mbox-importer-22.08.2.tar.xz";
-      sha256 = "1msva2bs8558v0v1ad12fsppbkrrb9cn1kamyzq1hwzqd17dwkyg";
-      name = "mbox-importer-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/mbox-importer-22.08.3.tar.xz";
+      sha256 = "03zqr5f8x1rikpbh6f19fjjzgab7bn24virgnm00mkhf0lgxa2mh";
+      name = "mbox-importer-22.08.3.tar.xz";
     };
   };
   messagelib = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/messagelib-22.08.2.tar.xz";
-      sha256 = "0mv7fn0q10hx60108y538apa2wcxc9fr9dm40ccpafx01za6099n";
-      name = "messagelib-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/messagelib-22.08.3.tar.xz";
+      sha256 = "155l9warjalmvzc8224qv2v6whsinqjdqyyahxl0fvrkqzbwns27";
+      name = "messagelib-22.08.3.tar.xz";
     };
   };
   minuet = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/minuet-22.08.2.tar.xz";
-      sha256 = "07l79d8bn1d9jyv98hms3sgfhp0a2s386d9xj8slx8iwa9gh5bjv";
-      name = "minuet-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/minuet-22.08.3.tar.xz";
+      sha256 = "0wwdva797v2zms9l9php9vbsp5r3kmgp0kdgqpdiak4crh64mcz5";
+      name = "minuet-22.08.3.tar.xz";
     };
   };
   okular = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/okular-22.08.2.tar.xz";
-      sha256 = "1bcfdmrs7f3dxcrc73qyv8zswlf2pl4jk0qq5fmrh7dlazvsykp9";
-      name = "okular-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/okular-22.08.3.tar.xz";
+      sha256 = "17lifjvrhyyq9zfnj7fjxv7y7m1m1ci3srnbpqc4v4bf5plamfs2";
+      name = "okular-22.08.3.tar.xz";
     };
   };
   palapeli = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/palapeli-22.08.2.tar.xz";
-      sha256 = "0yjll4grrrwv538ikw1axm24bxqiik8hlny5ynm1sbrpbm3d273g";
-      name = "palapeli-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/palapeli-22.08.3.tar.xz";
+      sha256 = "064vhgx09cvxj93bpl1c7nkd6b8jn97bp0z0gnz2b7aiwp2kflrg";
+      name = "palapeli-22.08.3.tar.xz";
     };
   };
   parley = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/parley-22.08.2.tar.xz";
-      sha256 = "0w2dmdx1aanjs8fclxkssmz0kww5dbb5sbhk9a257p3ll6vwnh6l";
-      name = "parley-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/parley-22.08.3.tar.xz";
+      sha256 = "1h9xjr3bar5i4k1hxziihmpx114lr0961f0rvi3h0fq1s91nv1kv";
+      name = "parley-22.08.3.tar.xz";
     };
   };
   partitionmanager = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/partitionmanager-22.08.2.tar.xz";
-      sha256 = "05qjl82hb0n00p6gj3s6aq95nr4z40zk6znvzxjih24jycg938y4";
-      name = "partitionmanager-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/partitionmanager-22.08.3.tar.xz";
+      sha256 = "1cxba47clq6igik8gdll1w5npb0z93kr2li9fx28xvn1bwlyq97r";
+      name = "partitionmanager-22.08.3.tar.xz";
     };
   };
   picmi = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/picmi-22.08.2.tar.xz";
-      sha256 = "1jrqply8cwm92rknshvlbp4lhn5afm61l4l7adsfh1lz6p4qq7i4";
-      name = "picmi-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/picmi-22.08.3.tar.xz";
+      sha256 = "1p77axcciqgwj9yirwqzj7dlyxmxa4x033im41w6llq113vzlbvh";
+      name = "picmi-22.08.3.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/pim-data-exporter-22.08.2.tar.xz";
-      sha256 = "0rxvqpgykn22ylm467h00jf1mkd3qz5l0kc7zafqvamhafrqvqs1";
-      name = "pim-data-exporter-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/pim-data-exporter-22.08.3.tar.xz";
+      sha256 = "1qsq4ysjmyxzd518hxficksdgn55ffmmqzd2z54fmc3nmqlzdlvv";
+      name = "pim-data-exporter-22.08.3.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/pim-sieve-editor-22.08.2.tar.xz";
-      sha256 = "0r58qlqrl0nv26jng80zm3wiy712idyg610gisq5pz5g8smngifc";
-      name = "pim-sieve-editor-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/pim-sieve-editor-22.08.3.tar.xz";
+      sha256 = "10g6rxxk6ba2xdriajim0dlxl12qrk1lgca3c5247fj521xaqadh";
+      name = "pim-sieve-editor-22.08.3.tar.xz";
     };
   };
   pimcommon = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/pimcommon-22.08.2.tar.xz";
-      sha256 = "1ah5w1zppamb8wii0qdwv0fhjq175kaql2h0h8gj8vlypwwsj458";
-      name = "pimcommon-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/pimcommon-22.08.3.tar.xz";
+      sha256 = "10x6l1kcqp2m53s60hb3v1q5jirwjimgdafprac1243nnz6fw2g4";
+      name = "pimcommon-22.08.3.tar.xz";
     };
   };
   poxml = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/poxml-22.08.2.tar.xz";
-      sha256 = "0pjmy83b2gkvdiq8l0xs4g5knh8i0gm024isxdvmj5drvzkwwdaz";
-      name = "poxml-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/poxml-22.08.3.tar.xz";
+      sha256 = "08mk5ls7zar6vkmw34pr4cvni2p6vapq2xyc17y5ddv00083yzxn";
+      name = "poxml-22.08.3.tar.xz";
     };
   };
   print-manager = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/print-manager-22.08.2.tar.xz";
-      sha256 = "0f75ybcj5626kjwnd6njh2yxdsydz7ybmnia1vxiql6wn04h9ncz";
-      name = "print-manager-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/print-manager-22.08.3.tar.xz";
+      sha256 = "1yvvckqy9w9xff2zqxyi6nrx3m1w8cjkl2wh58r5nm6wx5x6xm1p";
+      name = "print-manager-22.08.3.tar.xz";
     };
   };
   rocs = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/rocs-22.08.2.tar.xz";
-      sha256 = "0p30acx21ahvnxwfqvalhbsyz5131la6dpmcwrdazcgd05w9jj8b";
-      name = "rocs-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/rocs-22.08.3.tar.xz";
+      sha256 = "1479014i0yal6j65djys7jwm9ixg0kim351yhbsci64islpbq7v6";
+      name = "rocs-22.08.3.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/signon-kwallet-extension-22.08.2.tar.xz";
-      sha256 = "1sqnnli6p9krqam71nbgkqr0nr5d8j13328g70axi276sv94zc39";
-      name = "signon-kwallet-extension-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/signon-kwallet-extension-22.08.3.tar.xz";
+      sha256 = "1c7jk0j1sqv5s4c5pka4qjskkzbapk2ry8nys5sfmv9fdlkihhsg";
+      name = "signon-kwallet-extension-22.08.3.tar.xz";
     };
   };
   skanlite = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/skanlite-22.08.2.tar.xz";
-      sha256 = "14cj1zcqglg9sybv6qz55h2y1y17bs4yc565z72gxnp1lp6g0v51";
-      name = "skanlite-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/skanlite-22.08.3.tar.xz";
+      sha256 = "0binx6ynnp78r1vilsn0pdf7icyb5xsl4wmw8lhmq7ynb1prndd0";
+      name = "skanlite-22.08.3.tar.xz";
     };
   };
   skanpage = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/skanpage-22.08.2.tar.xz";
-      sha256 = "14bswzf4zb5ghnrb9mklswfd4faxar9qpbb27iwia0z5k7wm94xz";
-      name = "skanpage-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/skanpage-22.08.3.tar.xz";
+      sha256 = "1yjsj95zvbxgj4j0d1ihlr012pd0zk8ybrbn396q33gzmz4xyh5q";
+      name = "skanpage-22.08.3.tar.xz";
     };
   };
   spectacle = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/spectacle-22.08.2.tar.xz";
-      sha256 = "1bhyrhkkf6r49b152dgkjl34nx3w0rjraq7anbsnmapv3ny2qjnf";
-      name = "spectacle-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/spectacle-22.08.3.tar.xz";
+      sha256 = "037k3lnnb9fsczdndwaqhl9np89fv4nmxvmk785g4rykcg33hzk3";
+      name = "spectacle-22.08.3.tar.xz";
     };
   };
   step = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/step-22.08.2.tar.xz";
-      sha256 = "0n8b4vnmh2x7dq93rgs1rg45hbkpmkd31rghf5q096ln04p4yas0";
-      name = "step-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/step-22.08.3.tar.xz";
+      sha256 = "0f6kjmx74minvklcxpixh9b01nbzxwfmq5b6vjg64n5z78hfzckm";
+      name = "step-22.08.3.tar.xz";
     };
   };
   svgpart = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/svgpart-22.08.2.tar.xz";
-      sha256 = "133ffawzv3r4ipgfagbc9bzjs1zfp2w4g8w8621wf0cwba6dgy0a";
-      name = "svgpart-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/svgpart-22.08.3.tar.xz";
+      sha256 = "0xjj1kyyba14dhi3bi5asibssv14l0vx4b6r9lx1jxws4w0w08fz";
+      name = "svgpart-22.08.3.tar.xz";
     };
   };
   sweeper = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/sweeper-22.08.2.tar.xz";
-      sha256 = "0bkfsl07s8lydjrvpnwqx68jig83fh4yi8vlmnsyw1qnxxi887dq";
-      name = "sweeper-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/sweeper-22.08.3.tar.xz";
+      sha256 = "0f0zz4azwn2i2haz4wqrnzfmb588qhwyma3b9vlk3g5i5c43w75x";
+      name = "sweeper-22.08.3.tar.xz";
     };
   };
   umbrello = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/umbrello-22.08.2.tar.xz";
-      sha256 = "1ckq3nf230lvfrgnfnhf5sr9wrndn7jjpf9gbkfs2nd87r0wpldk";
-      name = "umbrello-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/umbrello-22.08.3.tar.xz";
+      sha256 = "0c11avj9cjji05iigrqzkr5xd2nwkd5iqv7jffd0l42p9sy8wgiy";
+      name = "umbrello-22.08.3.tar.xz";
     };
   };
   yakuake = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/yakuake-22.08.2.tar.xz";
-      sha256 = "1yw7w0sqzwn8xqqif7zvpjaz6k3lc8wcb8k6dlcwp0awpxyb1c4p";
-      name = "yakuake-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/yakuake-22.08.3.tar.xz";
+      sha256 = "11dny7h6pbqhddspizdldq0kmpa2air0qwjzjxw17zgags0qbkxf";
+      name = "yakuake-22.08.3.tar.xz";
     };
   };
   zanshin = {
-    version = "22.08.2";
+    version = "22.08.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.08.2/src/zanshin-22.08.2.tar.xz";
-      sha256 = "0wggr056kd8xigdf0ihra050j67sp54jly2drdwzipsn9jw4pss8";
-      name = "zanshin-22.08.2.tar.xz";
+      url = "${mirror}/stable/release-service/22.08.3/src/zanshin-22.08.3.tar.xz";
+      sha256 = "1wz9b56j7rfz7bwyiy1411rnq3x1qpspaxlairyzxzywvmaqa7qh";
+      name = "zanshin-22.08.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 19561a49291bf..0b5723fdcb3fe 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -21,14 +21,14 @@
 }:
 
 mkDerivation rec {
-  version = "1.2.3";
+  version = "1.3.0";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${version}";
-    sha256 = "sha256-jMl2kXpHVXH/TfdPbq6bzdpNec6f1AUWsMNZzaAvK/I=";
+    sha256 = "sha256-uhVRO9aiYJbUmwDp1+LIYF3wNBbVduVpTtVzaS0oUMU=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/blocky/default.nix b/pkgs/applications/networking/blocky/default.nix
index 0f25fd0a8ec98..978387089781a 100644
--- a/pkgs/applications/networking/blocky/default.nix
+++ b/pkgs/applications/networking/blocky/default.nix
@@ -21,6 +21,8 @@ buildGoModule rec {
 
   vendorSha256 = "sha256-fsMBL9qyhIrV6eAsqpSaNniibMdYRVBnl2KCzStvMGQ=";
 
+  ldflags = [ "-s" "-w" "-X github.com/0xERR0R/blocky/util.Version=${version}" ];
+
   meta = with lib; {
     description = "Fast and lightweight DNS proxy as ad-blocker for local network with many features.";
     homepage = "https://0xerr0r.github.io/blocky";
diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix
index 5ef3a336e2953..b2c730a24be3d 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix
@@ -65,6 +65,9 @@ let
   # These are the providers that don't fall in line with the default model
   special-providers =
     {
+      netlify = automated-providers.netlify.overrideAttrs (_: { meta.broken = stdenv.isDarwin; });
+      pass = automated-providers.pass.overrideAttrs (_: { meta.broken = stdenv.isDarwin; });
+      tencentcloud = automated-providers.tencentcloud.overrideAttrs (_: { meta.broken = stdenv.isDarwin; });
       # mkisofs needed to create ISOs holding cloud-init data and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
       libvirt = automated-providers.libvirt.overrideAttrs (_: { propagatedBuildInputs = [ cdrtools ]; });
     };
@@ -77,6 +80,7 @@ let
     in
     lib.optionalAttrs config.allowAliases {
       b2 = removed "b2" "2022/06";
+      checkpoint = removed "checkpoint" "2022/11";
       dome9 = removed "dome9" "2022/08";
       ncloud = removed "ncloud" "2022/08";
       opc = archived "opc" "2022/05";
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index 92c4474d0bbcf..f4eced33d63b4 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -48,13 +48,13 @@
     "version": "3.0.0"
   },
   "alicloud": {
-    "hash": "sha256-IP5TCFi4NEjnBa9rKCZI6TVFAAyjfsZbmc+PgkwgvIo=",
+    "hash": "sha256-2ClWPe4sTt6rW9AamDH8td/W5/yDdD1qR4V1pzJm/0I=",
     "owner": "aliyun",
     "provider-source-address": "registry.terraform.io/aliyun/alicloud",
     "repo": "terraform-provider-alicloud",
-    "rev": "v1.190.0",
+    "rev": "v1.191.0",
     "vendorHash": null,
-    "version": "1.190.0"
+    "version": "1.191.0"
   },
   "ansible": {
     "hash": "sha256-3nha5V4rNgVzgqliebmbC5e12Lj/zlCsyyiIVFlmUrY=",
@@ -148,22 +148,22 @@
     "version": "1.0.0"
   },
   "baiducloud": {
-    "hash": "sha256-kG0tE929wtiuSIwT0r6t/odirvZpdnTgcPGFHXmLYYQ=",
+    "hash": "sha256-O2DU47kabPleWr+HodOx+Canp1bFypAZ3UMJnC2mzqQ=",
     "owner": "baidubce",
     "provider-source-address": "registry.terraform.io/baidubce/baiducloud",
     "repo": "terraform-provider-baiducloud",
-    "rev": "v1.17.1",
+    "rev": "v1.18.0",
     "vendorHash": null,
-    "version": "1.17.1"
+    "version": "1.18.0"
   },
   "bigip": {
-    "hash": "sha256-uSe+J4AlW8Dt96BVF1ZI/yrgWUbZsl64b/D+k5ysHC0=",
+    "hash": "sha256-erJeg7KF3QUi85ueOQTrab2woIC1nkMXRIj/pFm0DGY=",
     "owner": "F5Networks",
     "provider-source-address": "registry.terraform.io/F5Networks/bigip",
     "repo": "terraform-provider-bigip",
-    "rev": "v1.15.2",
+    "rev": "v1.16.0",
     "vendorHash": null,
-    "version": "1.15.2"
+    "version": "1.16.0"
   },
   "bitbucket": {
     "hash": "sha256-0Sts826Yt6xVVwGpqTC1ZAiNB2+7S6z9rPXDGPNpmOk=",
@@ -202,17 +202,6 @@
     "vendorHash": "sha256-VnYRDBneQ+bUzISJM9DJdBEBmjA1WOXPo+kaYBW4w4U=",
     "version": "1.6.2"
   },
-  "checkpoint": {
-    "deleteVendor": true,
-    "hash": "sha256-pErJcwpUGg2cGKWiagjfneUjSDtT+BxLy5JjZvwCUH0=",
-    "owner": "CheckPointSW",
-    "provider-source-address": "registry.terraform.io/CheckPointSW/checkpoint",
-    "proxyVendor": true,
-    "repo": "terraform-provider-checkpoint",
-    "rev": "v2.1.0",
-    "vendorHash": "sha256-6tH/U0qJ83w9qibuF8/TcRAsCke/VnRVRGfHaWsW9+4=",
-    "version": "2.1.0"
-  },
   "ciscoasa": {
     "hash": "sha256-xzc44FEy2MPo51Faq/VFwg411JK9e0kQucpt0vdN8yg=",
     "owner": "CiscoDevNet",
@@ -433,13 +422,13 @@
     "version": "2.2.0"
   },
   "github": {
-    "hash": "sha256-fPT7wqpwAKQKqe9fZZsdPqffIQ9N4Iz/kHpFbTkUTRQ=",
+    "hash": "sha256-cLBBz5qPRY+TpcO0yfyTXOQLQYz58hB1l6ufThbBSuM=",
     "owner": "integrations",
     "provider-source-address": "registry.terraform.io/integrations/github",
     "repo": "terraform-provider-github",
-    "rev": "v5.7.0",
+    "rev": "v5.8.0",
     "vendorHash": null,
-    "version": "5.7.0"
+    "version": "5.8.0"
   },
   "gitlab": {
     "hash": "sha256-eNd1o0UjG6A9OTRmcJfcPLLtWIJmdZ+viDnSZhyHpgY=",
@@ -580,13 +569,13 @@
     "version": "0.1.2"
   },
   "ibm": {
-    "hash": "sha256-zxPl76D5ddw+7WowQf4LY9MYTGfX3CMEBQofXKwbowQ=",
+    "hash": "sha256-VFJ86dMKOHzfq5W154+kmX9poRFjT+LlLRl3HNA52pc=",
     "owner": "IBM-Cloud",
     "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm",
     "repo": "terraform-provider-ibm",
-    "rev": "v1.47.0",
-    "vendorHash": "sha256-Ggiu+nGTABxK+HiBvY2l/l3+Gqg4GoczZJf69v3Ylfk=",
-    "version": "1.47.0"
+    "rev": "v1.47.1",
+    "vendorHash": "sha256-9UIM6T6ceF6WXIbjhSuDv1lNn9rphcZoePPk11X2Olo=",
+    "version": "1.47.1"
   },
   "icinga2": {
     "hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
@@ -634,13 +623,13 @@
     "version": "4.0.1"
   },
   "ksyun": {
-    "hash": "sha256-xmBpDYN1MRQ9cyIOqHMAD7RucRkOKmwnmzjIsjxA7VQ=",
+    "hash": "sha256-62ylxBt5F3J2n7BW8qD5ukE8OJa63E6Qyuuf8dPo9FQ=",
     "owner": "kingsoftcloud",
     "provider-source-address": "registry.terraform.io/kingsoftcloud/ksyun",
     "repo": "terraform-provider-ksyun",
-    "rev": "v1.3.56",
+    "rev": "v1.3.57",
     "vendorHash": "sha256-miHKAz+ONXtuC1DNukcyZbbaYReY69dz9Zk6cJdORdQ=",
-    "version": "1.3.56"
+    "version": "1.3.57"
   },
   "kubectl": {
     "hash": "sha256-UkUwWi7Z9cSMyZakD6JxMl+qdczAYfZQgwroCUjFIUM=",
diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix
index c4a981b688073..adaf22a8206a5 100644
--- a/pkgs/applications/networking/dnscontrol/default.nix
+++ b/pkgs/applications/networking/dnscontrol/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dnscontrol";
-  version = "3.21.0";
+  version = "3.22.0";
 
   src = fetchFromGitHub {
     owner = "StackExchange";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-S07v9SATmE7gqM7+X/eWBG5A+h8lAKJ6mPvU7ImEfN4=";
+    sha256 = "sha256-idcgBaUOOFsQmId9I8X5ixxGkfrX9NG328DliHNzk6s=";
   };
 
   vendorSha256 = "sha256-h3UOFs7pxf9gwVAcjih8Kxr0b+68W1DanYoTpmeirg8=";
diff --git a/pkgs/applications/networking/go-graft/default.nix b/pkgs/applications/networking/go-graft/default.nix
index 88e72aaeee22a..4fb3475c147cf 100644
--- a/pkgs/applications/networking/go-graft/default.nix
+++ b/pkgs/applications/networking/go-graft/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "go-graft";
-  version = "0.2.13";
+  version = "0.2.14";
 
   src = fetchFromGitHub {
     owner = "mzz2017";
     repo = "gg";
     rev = "v${version}";
-    sha256 = "sha256-+AQFvYmuyU2z0F8XHdzkimf/zHMVUiw3TN2jMXTe11s=";
+    sha256 = "sha256-XymtLguAHCtOrRADRcWsPYq9cZo+FVUPOceIj7SmH8k=";
   };
 
   CGO_ENABLED = 0;
diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index 890930ba89a22..6a705959a11e4 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, qt5, cmake
+{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, qt5, cmake
 , avahi, boost, libopus, libsndfile, protobuf, speex, libcap
 , alsa-lib, python3
 , rnnoise
@@ -108,6 +108,17 @@ let
       sha256 = "sha256-SYsGCuj3HeyAQRUecGLaRdJR9Rm7lbaM54spY/zx0jU=";
       fetchSubmodules = true;
     };
+
+    patches = [
+      # fixes 'static assertion failed: static_assert(sizeof(CCameraAngles) == 0x408, "");'
+      # when compiling pkgsi686Linux.mumble, which is a dependency of x64 mumble_overlay
+      # https://github.com/mumble-voip/mumble/pull/5850
+      # Remove with next version update
+      (fetchpatch {
+        url = "https://github.com/mumble-voip/mumble/commit/13c051b36b387356815cff5d685bc628b74ba136.patch";
+        hash = "sha256-Rq8fb6NFd4DCNWm6OOMYIP7tBllufmQcB5CSxPU4qqg=";
+      })
+    ];
   };
 in {
   mumble  = client source;
diff --git a/pkgs/applications/networking/mumble/overlay.nix b/pkgs/applications/networking/mumble/overlay.nix
index f9a716cecb552..72474d391477c 100644
--- a/pkgs/applications/networking/mumble/overlay.nix
+++ b/pkgs/applications/networking/mumble/overlay.nix
@@ -8,6 +8,7 @@ in stdenv.mkDerivation {
   version = mumble.version;
 
   inherit (mumble) src;
+  patches = mumble.patches or [];
 
   installPhase = ''
     mkdir -p $out/lib
diff --git a/pkgs/applications/networking/newsreaders/pan/default.nix b/pkgs/applications/networking/newsreaders/pan/default.nix
index b6afe0aa44e00..854f1c3484ec0 100644
--- a/pkgs/applications/networking/newsreaders/pan/default.nix
+++ b/pkgs/applications/networking/newsreaders/pan/default.nix
@@ -58,6 +58,6 @@ stdenv.mkDerivation rec {
     homepage = "http://pan.rebelbase.com/";
     maintainers = [ maintainers.eelco ];
     platforms = platforms.linux;
-    license = with licenses; [ gpl2Only fdl11 ];
+    license = with licenses; [ gpl2Only fdl11Only ];
   };
 }
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index 2f41d0ec55ff8..08f9bc0b8af2b 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, buildPackages, fetchurl, pkg-config, pcre, perl, flex, bison, gettext, libpcap, libnl, c-ares
-, gnutls, libgcrypt, libgpg-error, geoip, openssl, lua5, python3, libcap, glib
-, libssh, nghttp2, zlib, cmake, makeWrapper, wrapGAppsHook
+{ lib, stdenv, buildPackages, fetchurl, pkg-config, pcre2, perl, flex, bison
+, gettext, libpcap, libnl, c-ares, gnutls, libgcrypt, libgpg-error, geoip, openssl
+, lua5, python3, libcap, glib, libssh, nghttp2, zlib, cmake, makeWrapper, wrapGAppsHook
 , withQt ? true, qt5 ? null
 , ApplicationServices, SystemConfiguration, gmp
 , asciidoctor
@@ -11,7 +11,7 @@ assert withQt  -> qt5  != null;
 with lib;
 
 let
-  version = "3.6.5";
+  version = "4.0.1";
   variant = if withQt then "qt" else "cli";
 
 in stdenv.mkDerivation {
@@ -21,7 +21,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
-    sha256 = "sha256-otdB1g/zUWE31LnzjNwH7uVKVuw2BG9MOv7mv7T26qE=";
+    sha256 = "sha256-s7AC+Z0Tu/R/ntO+frNyywwkVL0PrqKadWgZzgGf/cI=";
   };
 
   cmakeFlags = [
@@ -44,7 +44,7 @@ in stdenv.mkDerivation {
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   buildInputs = [
-    gettext pcre libpcap lua5 libssh nghttp2 openssl libgcrypt
+    gettext pcre2 libpcap lua5 libssh nghttp2 openssl libgcrypt
     libgpg-error gnutls geoip c-ares glib zlib
   ] ++ optionals withQt  (with qt5; [ qtbase qtmultimedia qtsvg qttools ])
     ++ optionals stdenv.isLinux  [ libcap libnl ]
@@ -73,19 +73,20 @@ in stdenv.mkDerivation {
         done
     done
   '' else optionalString withQt ''
-    install -Dm644 -t $out/share/applications ../org.wireshark.Wireshark.desktop
+    pwd
+    install -Dm644 -t $out/share/applications ../resources/freedesktop/org.wireshark.Wireshark.desktop
 
-    install -Dm644 ../image/wsicon.svg $out/share/icons/wireshark.svg
-    mkdir $dev/include/{epan/{wmem,ftypes,dfilter},wsutil/wmem,wiretap} -pv
+    install -Dm644 ../resources/icons/wsicon.svg $out/share/icons/wireshark.svg
+    mkdir -pv $dev/include/{epan/{wmem,ftypes,dfilter},wsutil/wmem,wiretap}
 
     cp config.h $dev/include/wireshark/
-    cp ../ws_*.h $dev/include
     cp ../epan/*.h $dev/include/epan/
     cp ../epan/ftypes/*.h $dev/include/epan/ftypes/
     cp ../epan/dfilter/*.h $dev/include/epan/dfilter/
+    cp ../include/ws_*.h $dev/include/
+    cp ../wiretap/*.h $dev/include/wiretap/
     cp ../wsutil/*.h $dev/include/wsutil/
     cp ../wsutil/wmem/*.h $dev/include/wsutil/wmem/
-    cp ../wiretap/*.h $dev/include/wiretap
   '');
 
   dontFixCmake = true;
diff --git a/pkgs/applications/networking/sniffers/wireshark/wireshark-lookup-dumpcap-in-path.patch b/pkgs/applications/networking/sniffers/wireshark/wireshark-lookup-dumpcap-in-path.patch
index 5829457375f27..0e523db0a32ad 100644
--- a/pkgs/applications/networking/sniffers/wireshark/wireshark-lookup-dumpcap-in-path.patch
+++ b/pkgs/applications/networking/sniffers/wireshark/wireshark-lookup-dumpcap-in-path.patch
@@ -1,6 +1,6 @@
-From 5bef9deeff8a2e4401de0f45c9701cd6f98f29d8 Mon Sep 17 00:00:00 2001
+From 2f0cbc740a0fe050f4de082620296c5eea18eba3 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Thu, 26 Nov 2015 21:03:35 +0100
+Date: Thu, 27 Oct 2022 20:56:07 +0200
 Subject: [PATCH] Lookup dumpcap in PATH
 
 NixOS patch: Look for dumpcap in PATH first, because there may be a
@@ -11,22 +11,26 @@ Also change execv() to execvp() because we've set argv[0] to "dumpcap"
 and have to enable PATH lookup. Wireshark is not a setuid program, so
 looking in PATH is not a security issue.
 
+ORIGINALLY by Björn Forsman
+
 EDITED by teto for wireshark 3.6
 
+EDITED by esclear for wireshark 4.0
+
 Signed-off-by: Franz Pletz <fpletz@fnordicwalking.de>
 ---
- capchild/capture_sync.c | 17 ++++++++++++++---
+ capture/capture_sync.c | 17 ++++++++++++++---
  1 file changed, 14 insertions(+), 3 deletions(-)
 
-diff --git a/capchild/capture_sync.c b/capchild/capture_sync.c
-index f31914886a..df29b6f0ab 100644
+diff --git a/capture/capture_sync.c b/capture/capture_sync.c
+index fc5552f02c..a556f109af 100644
 --- a/capture/capture_sync.c
 +++ b/capture/capture_sync.c
-@@ -187,7 +187,18 @@ init_pipe_args(int *argc) {
+@@ -239,7 +239,18 @@ init_pipe_args(int *argc) {
  #ifdef _WIN32
-     exename = g_strdup_printf("%s\\dumpcap.exe", progfile_dir);
+     exename = ws_strdup_printf("%s\\dumpcap.exe", progfile_dir);
  #else
--    exename = g_strdup_printf("%s/dumpcap", progfile_dir);
+-    exename = ws_strdup_printf("%s/dumpcap", progfile_dir);
 +    /*
 +     * NixOS patch: Look for dumpcap in PATH first, because there may be a
 +     * dumpcap wrapper that we want to use instead of the default
@@ -34,29 +38,29 @@ index f31914886a..df29b6f0ab 100644
 +     */
 +    if (system("command -v dumpcap >/dev/null") == 0) {
 +        /* Found working dumpcap */
-+        exename = g_strdup_printf("dumpcap");
++        exename = ws_strdup_printf("dumpcap");
 +    } else {
 +        /* take Wireshark's absolute program path and replace "Wireshark" with "dumpcap" */
-+        exename = g_strdup_printf("%s/dumpcap", progfile_dir);
++        exename = ws_strdup_printf("%s/dumpcap", progfile_dir);
 +    }
  #endif
  
      /* Make that the first argument in the argument list (argv[0]). */
-@@ -572,7 +583,7 @@ sync_pipe_start(capture_options *capture_opts, capture_session *cap_session, inf
+@@ -690,7 +701,7 @@ sync_pipe_start(capture_options *capture_opts, GPtrArray *capture_comments,
           */
          dup2(sync_pipe[PIPE_WRITE], 2);
          ws_close(sync_pipe[PIPE_READ]);
 -        execv(argv[0], argv);
 +        execvp(argv[0], argv);
-         g_snprintf(errmsg, sizeof errmsg, "Couldn't run %s in child process: %s",
+         snprintf(errmsg, sizeof errmsg, "Couldn't run %s in child process: %s",
                     argv[0], g_strerror(errno));
          sync_pipe_errmsg_to_parent(2, errmsg, "");
-@@ -811,7 +822,7 @@ sync_pipe_open_command(char* const argv[], int *data_read_fd,
+@@ -946,7 +957,7 @@ sync_pipe_open_command(char* const argv[], int *data_read_fd,
          dup2(sync_pipe[PIPE_WRITE], 2);
          ws_close(sync_pipe[PIPE_READ]);
          ws_close(sync_pipe[PIPE_WRITE]);
 -        execv(argv[0], argv);
 +        execvp(argv[0], argv);
-         g_snprintf(errmsg, sizeof errmsg, "Couldn't run %s in child process: %s",
+         snprintf(errmsg, sizeof errmsg, "Couldn't run %s in child process: %s",
                     argv[0], g_strerror(errno));
          sync_pipe_errmsg_to_parent(2, errmsg, "");
diff --git a/pkgs/applications/science/biology/delly/default.nix b/pkgs/applications/science/biology/delly/default.nix
index 7922438df5285..838c4ae802a89 100644
--- a/pkgs/applications/science/biology/delly/default.nix
+++ b/pkgs/applications/science/biology/delly/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "delly";
-  version = "1.1.5";
+  version = "1.1.6";
 
   src = fetchFromGitHub {
       owner = "dellytools";
       repo = pname;
       rev = "v${version}";
-      sha256 = "sha256-K75tpbW1h84gzZ+s5jMzmFItfBi6rjkAhzks9F0gYpA=";
+      sha256 = "sha256-/I//7MhsC/CcBeIJblzbjXp/yOSBm83KWJsrYpl6UJk=";
   };
 
   buildInputs = [ zlib htslib bzip2 xz ncurses boost ];
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index 5ae80c745bdce..f60fc95e0d56b 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -1,10 +1,11 @@
 { stdenv
 , lib
-, fetchurl
+, fetchFromGitHub
 , fetchpatch
 , makeWrapper
 , cmake
 , git
+, davix
 , ftgl
 , gl2ps
 , glew
@@ -22,6 +23,7 @@
 , lz4
 , xz
 , openblas
+, openssl
 , pcre
 , nlohmann_json
 , pkg-config
@@ -44,7 +46,7 @@
 let
 
   _llvm_9 = llvm_9.overrideAttrs (prev: {
-    patches = (prev.patches or []) ++ [
+    patches = (prev.patches or [ ]) ++ [
       (fetchpatch {
         url = "https://github.com/root-project/root/commit/a9c961cf4613ff1f0ea50f188e4a4b0eb749b17d.diff";
         stripLen = 3;
@@ -57,15 +59,18 @@ in
 
 stdenv.mkDerivation rec {
   pname = "root";
-  version = "6.26.06";
+  version = "6.26.08";
 
-  src = fetchurl {
-    url = "https://root.cern.ch/download/root_v${version}.source.tar.gz";
-    hash = "sha256-sfc8l2pYClxWyMigFSWCod/FYLTdgOG3VFI3tl5sics=";
+  src = fetchFromGitHub {
+    owner = "root-project";
+    repo = "root";
+    rev = "v${builtins.replaceStrings [ "." ] [ "-" ] version}";
+    sha256 = "sha256-cNd1GvEbO/a+WdDe8EHYGmdlw3TrOT2fWaSk+s7fw7U=";
   };
 
   nativeBuildInputs = [ makeWrapper cmake pkg-config git ];
   buildInputs = [
+    davix
     ftgl
     gl2ps
     glew
@@ -80,6 +85,7 @@ stdenv.mkDerivation rec {
     xz
     gsl
     openblas
+    openssl
     xxHash
     libAfterImage
     giflib
@@ -125,6 +131,8 @@ stdenv.mkDerivation rec {
     # Eliminate impure reference to /System/Library/PrivateFrameworks
     substituteInPlace core/CMakeLists.txt \
       --replace "-F/System/Library/PrivateFrameworks" ""
+  '' + lib.optionalString (stdenv.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") ''
+    MACOSX_DEPLOYMENT_TARGET=10.16
   '';
 
   cmakeFlags = [
@@ -140,7 +148,7 @@ stdenv.mkDerivation rec {
     "-Dcastor=OFF"
     "-Dchirp=OFF"
     "-Dclad=OFF"
-    "-Ddavix=OFF"
+    "-Ddavix=ON"
     "-Ddcache=OFF"
     "-Dfail-on-missing=ON"
     "-Dfftw3=OFF"
@@ -164,7 +172,7 @@ stdenv.mkDerivation rec {
     "-Drfio=OFF"
     "-Droot7=OFF"
     "-Dsqlite=OFF"
-    "-Dssl=OFF"
+    "-Dssl=ON"
     "-Dtmva=ON"
     "-Dvdt=OFF"
     "-Dwebgui=OFF"
@@ -200,6 +208,6 @@ stdenv.mkDerivation rec {
 
     # See https://github.com/NixOS/nixpkgs/pull/192581#issuecomment-1256860426
     # for some context on issues on aarch64.
-    broken = stdenv.isAarch64;
+    broken = stdenv.isAarch64 && stdenv.isLinux;
   };
 }
diff --git a/pkgs/applications/version-management/sublime-merge/default.nix b/pkgs/applications/version-management/sublime-merge/default.nix
index 5cbb4fe1ba9f3..a018a5e56ab25 100644
--- a/pkgs/applications/version-management/sublime-merge/default.nix
+++ b/pkgs/applications/version-management/sublime-merge/default.nix
@@ -9,8 +9,8 @@ in {
   } {};
 
   sublime-merge-dev = common {
-    buildVersion = "2076";
-    x64sha256 = "k43D+TqS1DImpJKzYuf3LqmsxF3XF9Fwqn2txL13xAA=";
+    buildVersion = "2078";
+    x64sha256 = "33oJOnsOUr9W+OGMetafaGtXUa+CHxxLjmtDoZliw0k=";
     dev = true;
   } {};
 }
diff --git a/pkgs/applications/video/ffmpeg-normalize/default.nix b/pkgs/applications/video/ffmpeg-normalize/default.nix
index 61c1e025afe7d..7ca99c066ea1e 100644
--- a/pkgs/applications/video/ffmpeg-normalize/default.nix
+++ b/pkgs/applications/video/ffmpeg-normalize/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonApplication rec {
   pname = "ffmpeg-normalize";
-  version = "1.25.2";
+  version = "1.25.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-a/p4lljxf+9vpd0LlBVXY4y4rfxH5vaoIj0EKaRa2zQ=";
+    sha256 = "sha256-sEA6faoxuFA355ftI5xL3AXZD+6UYSDxRdQXA9nH5wY=";
   };
 
   propagatedBuildInputs = [ ffmpeg ffmpeg-progress-yield ];
diff --git a/pkgs/applications/video/kmplayer/default.nix b/pkgs/applications/video/kmplayer/default.nix
index 274ff7cdeab79..986faceb82d01 100644
--- a/pkgs/applications/video/kmplayer/default.nix
+++ b/pkgs/applications/video/kmplayer/default.nix
@@ -41,7 +41,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "MPlayer front-end for KDE";
-    license = with licenses; [ gpl2 lgpl2 fdl12 ];
+    license = with licenses; [ gpl2Plus lgpl2Plus fdl12Plus ];
     homepage = "https://kmplayer.kde.org/";
     maintainers = with maintainers; [ sander zraexy ];
   };
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 3ddca4d40fd37..86d047e1dfdad 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -41,13 +41,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "icewm";
-  version = "3.2.0";
+  version = "3.2.1";
 
   src = fetchFromGitHub {
     owner = "ice-wm";
     repo = "icewm";
     rev = finalAttrs.version;
-    hash = "sha256-fTaWfItY//fkvaYADeCBYg+dag59Y9Fw+Al0UgHnkXc=";
+    hash = "sha256-CLRLDJtp/rrdckzBKgof+vYFi+sqszevtCNGwokNxI0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/build-support/node/build-npm-package/default.nix b/pkgs/build-support/node/build-npm-package/default.nix
new file mode 100644
index 0000000000000..1038bb2abcb47
--- /dev/null
+++ b/pkgs/build-support/node/build-npm-package/default.nix
@@ -0,0 +1,54 @@
+{ lib, stdenv, fetchNpmDeps, npmHooks, nodejs }:
+
+{ name ? "${args.pname}-${args.version}"
+, src ? null
+, srcs ? null
+, sourceRoot ? null
+, patches ? [ ]
+, nativeBuildInputs ? [ ]
+, buildInputs ? [ ]
+  # The output hash of the dependencies for this project.
+  # Can be calculated in advance with prefetch-npm-deps.
+, npmDepsHash ? ""
+  # Whether to make the cache writable prior to installing dependencies.
+  # Don't set this unless npm tries to write to the cache directory, as it can slow down the build.
+, makeCacheWritable ? false
+  # The script to run to build the project.
+, npmBuildScript ? "build"
+  # Flags to pass to all npm commands.
+, npmFlags ? [ ]
+  # Flags to pass to `npm ci`.
+, npmInstallFlags ? [ ]
+  # Flags to pass to `npm rebuild`.
+, npmRebuildFlags ? [ ]
+  # Flags to pass to `npm run ${npmBuildScript}`.
+, npmBuildFlags ? [ ]
+  # Flags to pass to `npm pack`.
+, npmPackFlags ? [ ]
+, ...
+} @ args:
+
+let
+  npmDeps = fetchNpmDeps {
+    inherit src srcs sourceRoot patches;
+    name = "${name}-npm-deps";
+    hash = npmDepsHash;
+  };
+
+  inherit (npmHooks.override { inherit nodejs; }) npmConfigHook npmBuildHook npmInstallHook;
+in
+stdenv.mkDerivation (args // {
+  inherit npmDeps npmBuildScript;
+
+  nativeBuildInputs = nativeBuildInputs ++ [ nodejs npmConfigHook npmBuildHook npmInstallHook ];
+  buildInputs = buildInputs ++ [ nodejs ];
+
+  strictDeps = true;
+
+  # Stripping takes way too long with the amount of files required by a typical Node.js project.
+  dontStrip = args.dontStrip or true;
+
+  passthru = { inherit npmDeps; } // (args.passthru or { });
+
+  meta = (args.meta or { }) // { platforms = args.meta.platforms or nodejs.meta.platforms; };
+})
diff --git a/pkgs/build-support/node/build-npm-package/hooks/default.nix b/pkgs/build-support/node/build-npm-package/hooks/default.nix
new file mode 100644
index 0000000000000..d2293ed42f793
--- /dev/null
+++ b/pkgs/build-support/node/build-npm-package/hooks/default.nix
@@ -0,0 +1,35 @@
+{ lib, makeSetupHook, nodejs, srcOnly, diffutils, jq, makeWrapper }:
+
+{
+  npmConfigHook = makeSetupHook
+    {
+      name = "npm-config-hook";
+      substitutions = {
+        nodeSrc = srcOnly nodejs;
+
+        # Specify the stdenv's `diff` and `jq` by abspath to ensure that the user's build
+        # inputs do not cause us to find the wrong binaries.
+        # The `.nativeDrv` stanza works like nativeBuildInputs and ensures cross-compiling has the right version available.
+        diff = "${diffutils.nativeDrv or diffutils}/bin/diff";
+        jq = "${jq.nativeDrv or jq}/bin/jq";
+
+        nodeVersion = nodejs.version;
+        nodeVersionMajor = lib.versions.major nodejs.version;
+      };
+    } ./npm-config-hook.sh;
+
+  npmBuildHook = makeSetupHook
+    {
+      name = "npm-build-hook";
+    } ./npm-build-hook.sh;
+
+  npmInstallHook = makeSetupHook
+    {
+      name = "npm-install-hook";
+      deps = [ makeWrapper ];
+      substitutions = {
+        hostNode = "${nodejs}/bin/node";
+        jq = "${jq.nativeDrv or jq}/bin/jq";
+      };
+    } ./npm-install-hook.sh;
+}
diff --git a/pkgs/build-support/node/build-npm-package/hooks/npm-build-hook.sh b/pkgs/build-support/node/build-npm-package/hooks/npm-build-hook.sh
new file mode 100644
index 0000000000000..b99c9d94faffc
--- /dev/null
+++ b/pkgs/build-support/node/build-npm-package/hooks/npm-build-hook.sh
@@ -0,0 +1,37 @@
+# shellcheck shell=bash
+
+npmBuildHook() {
+    echo "Executing npmBuildHook"
+
+    runHook preBuild
+
+    if [ -z "${npmBuildScript-}" ]; then
+        echo
+        echo "ERROR: no build script was specified"
+        echo 'Hint: set `npmBuildScript`, override `buildPhase`, or set `dontNpmBuild = true`.'
+        echo
+
+        exit 1
+    fi
+
+    if ! npm run "$npmBuildScript" $npmBuildFlags "${npmBuildFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}"; then
+        echo
+        echo 'ERROR: `npm build` failed'
+        echo
+        echo "Here are a few things you can try, depending on the error:"
+        echo "1. Make sure your build script ($npmBuildScript) exists"
+        echo '2. If the error being thrown is something similar to "error:0308010C:digital envelope routines::unsupported", add `NODE_OPTIONS = "--openssl-legacy-provider"` to your derivation'
+        echo "  See https://github.com/webpack/webpack/issues/14532 for more information."
+        echo
+
+        exit 1
+    fi
+
+    runHook postBuild
+
+    echo "Finished npmBuildHook"
+}
+
+if [ -z "${dontNpmBuild-}" ] && [ -z "${buildPhase-}" ]; then
+    buildPhase=npmBuildHook
+fi
diff --git a/pkgs/build-support/node/build-npm-package/hooks/npm-config-hook.sh b/pkgs/build-support/node/build-npm-package/hooks/npm-config-hook.sh
new file mode 100644
index 0000000000000..723d8c1a4643f
--- /dev/null
+++ b/pkgs/build-support/node/build-npm-package/hooks/npm-config-hook.sh
@@ -0,0 +1,102 @@
+# shellcheck shell=bash
+
+npmConfigHook() {
+    echo "Executing npmConfigHook"
+
+    echo "Configuring npm"
+
+    export HOME=$TMPDIR
+    export npm_config_nodedir="@nodeSrc@"
+
+    local -r cacheLockfile="$npmDeps/package-lock.json"
+    local -r srcLockfile="$PWD/package-lock.json"
+
+    echo "Validating consistency between $srcLockfile and $cacheLockfile"
+
+    if ! @diff@ "$srcLockfile" "$cacheLockfile"; then
+      # If the diff failed, first double-check that the file exists, so we can
+      # give a friendlier error msg.
+      if ! [ -e "$srcLockfile" ]; then
+        echo
+        echo "ERROR: Missing package-lock.json from src. Expected to find it at: $srcLockfile"
+        echo "Hint: You can use the patches attribute to add a package-lock.json manually to the build."
+        echo
+
+        exit 1
+      fi
+
+      if ! [ -e "$cacheLockfile" ]; then
+        echo
+        echo "ERROR: Missing lockfile from cache. Expected to find it at: $cacheLockfile"
+        echo
+
+        exit 1
+      fi
+
+      echo
+      echo "ERROR: npmDepsHash is out of date"
+      echo
+      echo "The package-lock.json in src is not the same as the in $npmDeps."
+      echo
+      echo "To fix the issue:"
+      echo '1. Use `lib.fakeHash` as the npmDepsHash value'
+      echo "2. Build the derivation and wait for it to fail with a hash mismatch"
+      echo "3. Copy the 'got: sha256-' value back into the npmDepsHash field"
+      echo
+
+      exit 1
+    fi
+
+    local cachePath
+
+    if [ -z "${makeCacheWritable-}" ]; then
+        cachePath=$npmDeps
+    else
+        echo "Making cache writable"
+        cp -r "$npmDeps" "$TMPDIR/cache"
+        chmod -R 700 "$TMPDIR/cache"
+        cachePath=$TMPDIR/cache
+    fi
+
+    npm config set cache "$cachePath"
+    npm config set offline true
+    npm config set progress false
+
+    echo "Installing dependencies"
+
+    if ! npm ci --ignore-scripts $npmInstallFlags "${npmInstallFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}"; then
+        echo
+        echo "ERROR: npm failed to install dependencies"
+        echo
+        echo "Here are a few things you can try, depending on the error:"
+        echo '1. Set `makeCacheWritable = true`'
+        echo "  Note that this won't help if npm is complaining about not being able to write to the logs directory -- look above that for the actual error."
+        echo '2. Set `npmInstallFlags = [ "--legacy-peer-deps" ]`'
+        echo
+
+        exit 1
+    fi
+
+    patchShebangs node_modules
+
+    local -r lockfileVersion="$(@jq@ .lockfileVersion package-lock.json)"
+
+    if (( lockfileVersion < 2 )); then
+      # This is required because npm consults a hidden lockfile in node_modules to figure out
+      # what to create bin links for. When using an old lockfile offline, this hidden lockfile
+      # contains insufficent data, making npm silently fail to create links. The hidden lockfile
+      # is bypassed when any file in node_modules is newer than it. Thus, we create a file when
+      # using an old lockfile, so bin links work as expected without having to downgrade Node or npm.
+      touch node_modules/.meow
+    fi
+
+    npm rebuild "${npmRebuildFlags[@]}" "${npmFlags[@]}"
+
+    if (( lockfileVersion < 2 )); then
+      rm node_modules/.meow
+    fi
+
+    echo "Finished npmConfigHook"
+}
+
+postPatchHooks+=(npmConfigHook)
diff --git a/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh b/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh
new file mode 100644
index 0000000000000..4a222de26bbf0
--- /dev/null
+++ b/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh
@@ -0,0 +1,43 @@
+# shellcheck shell=bash
+
+npmInstallHook() {
+    echo "Executing npmInstallHook"
+
+    runHook preInstall
+
+    # `npm pack` writes to cache
+    npm config delete cache
+
+    local -r packageOut="$out/lib/node_modules/$(@jq@ --raw-output '.name' package.json)"
+
+    while IFS= read -r file; do
+        local dest="$packageOut/$(dirname "$file")"
+        mkdir -p "$dest"
+        cp "$file" "$dest"
+    done < <(@jq@ --raw-output '.[0].files | map(.path) | join("\n")' <<< "$(npm pack --json --dry-run $npmPackFlags "${npmPackFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}")")
+
+    while IFS=" " read -ra bin; do
+        mkdir -p "$out/bin"
+        makeWrapper @hostNode@ "$out/bin/${bin[0]}" --add-flags "$packageOut/${bin[1]}"
+    done < <(@jq@ --raw-output '(.bin | type) as $typ | if $typ == "string" then
+        .name + " " + .bin
+        elif $typ == "object" then .bin | to_entries | map(.key + " " + .value) | join("\n")
+        else "invalid type " + $typ | halt_error end' package.json)
+
+    local -r nodeModulesPath="$packageOut/node_modules"
+
+    if [ ! -d "$nodeModulesPath" ]; then
+        npm prune --omit dev
+        find node_modules -maxdepth 1 -type d -empty -delete
+
+        cp -r node_modules "$nodeModulesPath"
+    fi
+
+    runHook postInstall
+
+    echo "Finished npmInstallHook"
+}
+
+if [ -z "${dontNpmInstall-}" ] && [ -z "${installPhase-}" ]; then
+    installPhase=npmInstallHook
+fi
diff --git a/pkgs/build-support/node/fetch-npm-deps/.gitignore b/pkgs/build-support/node/fetch-npm-deps/.gitignore
new file mode 100644
index 0000000000000..ea8c4bf7f35f6
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/pkgs/build-support/node/fetch-npm-deps/Cargo.lock b/pkgs/build-support/node/fetch-npm-deps/Cargo.lock
new file mode 100644
index 0000000000000..ba832d115e6e5
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/Cargo.lock
@@ -0,0 +1,689 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "anyhow"
+version = "1.0.65"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "98161a4e3e2184da77bb14f02184cdd111e83bbbcc9979dfee3c44b9a85f5602"
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
+name = "base64"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "block-buffer"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "bumpalo"
+version = "3.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d"
+
+[[package]]
+name = "cc"
+version = "1.0.73"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "chunked_transfer"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fff857943da45f546682664a79488be82e69e43c1a7a2307679ab9afb3a66d2e"
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc948ebb96241bb40ab73effeb80d9f93afaad49359d159a5e61be51619fe813"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "crossbeam-channel"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"
+dependencies = [
+ "cfg-if",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc"
+dependencies = [
+ "cfg-if",
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "045ebe27666471bb549370b4b0b3e51b07f56325befa4284db65fc89c02511b1"
+dependencies = [
+ "autocfg",
+ "cfg-if",
+ "crossbeam-utils",
+ "memoffset",
+ "once_cell",
+ "scopeguard",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51887d4adc7b564537b15adcfb307936f8075dfcd5f00dde9a9f1d29383682bc"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+]
+
+[[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+dependencies = [
+ "generic-array",
+ "typenum",
+]
+
+[[package]]
+name = "digest"
+version = "0.10.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adfbc57365a37acbd2ebf2b64d7e69bb766e2fea813521ed536f5d0520dcf86c"
+dependencies = [
+ "block-buffer",
+ "crypto-common",
+]
+
+[[package]]
+name = "either"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
+
+[[package]]
+name = "fastrand"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
+dependencies = [
+ "instant",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "form_urlencoded"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
+dependencies = [
+ "percent-encoding",
+]
+
+[[package]]
+name = "generic-array"
+version = "0.14.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+dependencies = [
+ "typenum",
+ "version_check",
+]
+
+[[package]]
+name = "hermit-abi"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "idna"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
+dependencies = [
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
+[[package]]
+name = "instant"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754"
+
+[[package]]
+name = "js-sys"
+version = "0.3.59"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "258451ab10b34f8af53416d1fdab72c22e805f0c92a1136d59470ec0b11138b2"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.132"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5"
+
+[[package]]
+name = "log"
+version = "0.4.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "memoffset"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "miniz_oxide"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f5c75688da582b8ffc1f1799e9db273f32133c49e048f614d22ec3256773ccc"
+dependencies = [
+ "adler",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
+dependencies = [
+ "hermit-abi",
+ "libc",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "074864da206b4973b84eb91683020dbefd6a8c3f0f38e054d93954e891935e4e"
+
+[[package]]
+name = "percent-encoding"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
+
+[[package]]
+name = "prefetch-npm-deps"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "base64",
+ "digest",
+ "rayon",
+ "serde",
+ "serde_json",
+ "sha1",
+ "sha2",
+ "tempfile",
+ "ureq",
+ "url",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rayon"
+version = "1.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d"
+dependencies = [
+ "autocfg",
+ "crossbeam-deque",
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f"
+dependencies = [
+ "crossbeam-channel",
+ "crossbeam-deque",
+ "crossbeam-utils",
+ "num_cpus",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "remove_dir_all"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "ring"
+version = "0.16.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
+dependencies = [
+ "cc",
+ "libc",
+ "once_cell",
+ "spin",
+ "untrusted",
+ "web-sys",
+ "winapi",
+]
+
+[[package]]
+name = "rustls"
+version = "0.20.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5aab8ee6c7097ed6057f43c187a62418d0c05a4bd5f18b3571db50ee0f9ce033"
+dependencies = [
+ "log",
+ "ring",
+ "sct",
+ "webpki",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09"
+
+[[package]]
+name = "scopeguard"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+
+[[package]]
+name = "sct"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "serde"
+version = "1.0.145"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.145"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.85"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "sha1"
+version = "0.10.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "sha2"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "spin"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
+
+[[package]]
+name = "syn"
+version = "1.0.99"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "tempfile"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
+dependencies = [
+ "cfg-if",
+ "fastrand",
+ "libc",
+ "redox_syscall",
+ "remove_dir_all",
+ "winapi",
+]
+
+[[package]]
+name = "tinyvec"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+
+[[package]]
+name = "typenum"
+version = "1.15.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
+
+[[package]]
+name = "unicode-bidi"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
+
+[[package]]
+name = "unicode-normalization"
+version = "0.1.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "854cbdc4f7bc6ae19c820d44abdc3277ac3e1b2b93db20a636825d9322fb60e6"
+dependencies = [
+ "tinyvec",
+]
+
+[[package]]
+name = "untrusted"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
+
+[[package]]
+name = "ureq"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b97acb4c28a254fd7a4aeec976c46a7fa404eac4d7c134b30c75144846d7cb8f"
+dependencies = [
+ "base64",
+ "chunked_transfer",
+ "flate2",
+ "log",
+ "once_cell",
+ "rustls",
+ "url",
+ "webpki",
+ "webpki-roots",
+]
+
+[[package]]
+name = "url"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
+dependencies = [
+ "form_urlencoded",
+ "idna",
+ "percent-encoding",
+ "serde",
+]
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "wasm-bindgen"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc7652e3f6c4706c8d9cd54832c4a4ccb9b5336e2c3bd154d5cccfbf1c1f5f7d"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "662cd44805586bd52971b9586b1df85cdbbd9112e4ef4d8f41559c334dc6ac3f"
+dependencies = [
+ "bumpalo",
+ "log",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b260f13d3012071dfb1512849c033b1925038373aea48ced3012c09df952c602"
+dependencies = [
+ "quote",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5be8e654bdd9b79216c2929ab90721aa82faf65c48cdf08bdc4e7f51357b80da"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6598dd0bd3c7d51095ff6531a5b23e02acdc81804e30d8f07afb77b7215a140a"
+
+[[package]]
+name = "web-sys"
+version = "0.3.59"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed055ab27f941423197eb86b2035720b1a3ce40504df082cac2ecc6ed73335a1"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "webpki"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "webpki-roots"
+version = "0.22.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1c760f0d366a6c24a02ed7816e23e691f5d92291f94d15e836006fd11b04daf"
+dependencies = [
+ "webpki",
+]
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/pkgs/build-support/node/fetch-npm-deps/Cargo.toml b/pkgs/build-support/node/fetch-npm-deps/Cargo.toml
new file mode 100644
index 0000000000000..bebdaad29525e
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/Cargo.toml
@@ -0,0 +1,19 @@
+[package]
+name = "prefetch-npm-deps"
+version = "0.1.0"
+edition = "2021"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+anyhow = "1.0.65"
+base64 = "0.13.0"
+digest = "0.10.5"
+rayon = "1.5.3"
+serde = { version = "1.0.145", features = ["derive"] }
+serde_json = "1.0.85"
+sha1 = "0.10.5"
+sha2 = "0.10.6"
+tempfile = "3.3.0"
+ureq = { version = "2.5.0" }
+url = { version = "2.3.1", features = ["serde"] }
diff --git a/pkgs/build-support/node/fetch-npm-deps/default.nix b/pkgs/build-support/node/fetch-npm-deps/default.nix
new file mode 100644
index 0000000000000..d6ee0124d2851
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/default.nix
@@ -0,0 +1,137 @@
+{ lib, stdenvNoCC, rustPlatform, Security, testers, fetchurl, prefetch-npm-deps, fetchNpmDeps }:
+
+{
+  prefetch-npm-deps = rustPlatform.buildRustPackage {
+    pname = "prefetch-npm-deps";
+    version = (lib.importTOML ./Cargo.toml).package.version;
+
+    src = lib.cleanSourceWith {
+      src = ./.;
+      filter = name: type:
+        let
+          name' = builtins.baseNameOf name;
+        in
+        name' != "default.nix" && name' != "target";
+    };
+
+    cargoLock.lockFile = ./Cargo.lock;
+
+    buildInputs = lib.optional stdenvNoCC.isDarwin Security;
+
+    passthru.tests =
+      let
+        makeTestSrc = { name, src }: stdenvNoCC.mkDerivation {
+          name = "${name}-src";
+
+          inherit src;
+
+          buildCommand = ''
+            mkdir -p $out
+            cp $src $out/package-lock.json
+          '';
+        };
+
+        makeTest = { name, src, hash }: testers.invalidateFetcherByDrvHash fetchNpmDeps {
+          inherit name hash;
+
+          src = makeTestSrc { inherit name src; };
+        };
+      in
+      {
+        lockfileV1 = makeTest {
+          name = "lockfile-v1";
+
+          src = fetchurl {
+            url = "https://raw.githubusercontent.com/jellyfin/jellyfin-web/v10.8.4/package-lock.json";
+            hash = "sha256-uQmc+S+V1co1Rfc4d82PpeXjmd1UqdsG492ADQFcZGA=";
+          };
+
+          hash = "sha256-fk7L9vn8EHJsGJNMAjYZg9h0PT6dAwiahdiEeXVrMB8=";
+        };
+
+        lockfileV2 = makeTest {
+          name = "lockfile-v2";
+
+          src = fetchurl {
+            url = "https://raw.githubusercontent.com/jesec/flood/v4.7.0/package-lock.json";
+            hash = "sha256-qS29tq5QPnGxV+PU40VgMAtdwVLtLyyhG2z9GMeYtC4=";
+          };
+
+          hash = "sha256-s8SpZY/1tKZVd3vt7sA9vsqHvEaNORQBMrSyhWpj048=";
+        };
+
+        hashPrecedence = makeTest {
+          name = "hash-precedence";
+
+          src = fetchurl {
+            url = "https://raw.githubusercontent.com/matrix-org/matrix-appservice-irc/0.34.0/package-lock.json";
+            hash = "sha256-1+0AQw9EmbHiMPA/H8OP8XenhrkhLRYBRhmd1cNPFjk=";
+          };
+
+          hash = "sha256-KRxwrEij3bpZ5hbQhX67KYpnY2cRS7u2EVZIWO1FBPM=";
+        };
+
+        hostedGitDeps = makeTest {
+          name = "hosted-git-deps";
+
+          src = fetchurl {
+            url = "https://cyberchaos.dev/yuka/trainsearch/-/raw/e3cba6427e8ecfd843d0f697251ddaf5e53c2327/package-lock.json";
+            hash = "sha256-X9mCwPqV5yP0S2GonNvpYnLSLJMd/SUIked+hMRxDpA=";
+          };
+
+          hash = "sha256-oIM05TGHstX1D4k2K4TJ+SHB7H/tNKzxzssqf0GJwvY=";
+        };
+      };
+
+    meta = with lib; {
+      description = "Prefetch dependencies from npm (for use with `fetchNpmDeps`)";
+      maintainers = with maintainers; [ winter ];
+      license = licenses.mit;
+    };
+  };
+
+  fetchNpmDeps =
+    { name ? "npm-deps"
+    , hash ? ""
+    , ...
+    } @ args:
+    let
+      hash_ =
+        if hash != "" then {
+          outputHash = hash;
+        } else {
+          outputHash = "";
+          outputHashAlgo = "sha256";
+        };
+    in
+    stdenvNoCC.mkDerivation (args // {
+      inherit name;
+
+      nativeBuildInputs = [ prefetch-npm-deps ];
+
+      buildPhase = ''
+        runHook preBuild
+
+        if [[ ! -f package-lock.json ]]; then
+          echo
+          echo "ERROR: The package-lock.json file does not exist!"
+          echo
+          echo "package-lock.json is required to make sure that npmDepsHash doesn't change"
+          echo "when packages are updated on npm."
+          echo
+          echo "Hint: You can use the patches attribute to add a package-lock.json manually to the build."
+          echo
+
+          exit 1
+        fi
+
+        prefetch-npm-deps package-lock.json $out
+
+        runHook postBuild
+      '';
+
+      dontInstall = true;
+
+      outputHashMode = "recursive";
+    } // hash_);
+}
diff --git a/pkgs/build-support/node/fetch-npm-deps/src/cacache.rs b/pkgs/build-support/node/fetch-npm-deps/src/cacache.rs
new file mode 100644
index 0000000000000..865a320954b58
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/src/cacache.rs
@@ -0,0 +1,116 @@
+use digest::{Digest, Update};
+use serde::Serialize;
+use sha1::Sha1;
+use sha2::{Sha256, Sha512};
+use std::{
+    fs::{self, File},
+    io::Write,
+    path::PathBuf,
+};
+use url::Url;
+
+#[derive(Serialize)]
+struct Key {
+    key: String,
+    integrity: String,
+    time: u8,
+    size: usize,
+    metadata: Metadata,
+}
+
+#[derive(Serialize)]
+struct Metadata {
+    url: Url,
+    options: Options,
+}
+
+#[derive(Serialize)]
+struct Options {
+    compress: bool,
+}
+
+pub struct Cache(PathBuf);
+
+fn push_hash_segments(path: &mut PathBuf, hash: &str) {
+    path.push(&hash[0..2]);
+    path.push(&hash[2..4]);
+    path.push(&hash[4..]);
+}
+
+impl Cache {
+    pub fn new(path: PathBuf) -> Cache {
+        Cache(path)
+    }
+
+    pub fn put(
+        &self,
+        key: String,
+        url: Url,
+        data: &[u8],
+        integrity: Option<String>,
+    ) -> anyhow::Result<()> {
+        let (algo, hash, integrity) = if let Some(integrity) = integrity {
+            let (algo, hash) = integrity.split_once('-').unwrap();
+
+            (algo.to_string(), base64::decode(hash)?, integrity)
+        } else {
+            let hash = Sha512::new().chain(data).finalize();
+
+            (
+                String::from("sha512"),
+                hash.to_vec(),
+                format!("sha512-{}", base64::encode(hash)),
+            )
+        };
+
+        let content_path = {
+            let mut p = self.0.join("content-v2");
+
+            p.push(algo);
+
+            push_hash_segments(
+                &mut p,
+                &hash
+                    .into_iter()
+                    .map(|x| format!("{:02x}", x))
+                    .collect::<String>(),
+            );
+
+            p
+        };
+
+        fs::create_dir_all(content_path.parent().unwrap())?;
+
+        fs::write(content_path, data)?;
+
+        let index_path = {
+            let mut p = self.0.join("index-v5");
+
+            push_hash_segments(
+                &mut p,
+                &format!("{:x}", Sha256::new().chain(&key).finalize()),
+            );
+
+            p
+        };
+
+        fs::create_dir_all(index_path.parent().unwrap())?;
+
+        let data = serde_json::to_string(&Key {
+            key,
+            integrity,
+            time: 0,
+            size: data.len(),
+            metadata: Metadata {
+                url,
+                options: Options { compress: true },
+            },
+        })?;
+
+        let mut file = File::options().append(true).create(true).open(index_path)?;
+
+        write!(file, "\n{:x}\t{data}", Sha1::new().chain(&data).finalize())?;
+
+        Ok(())
+    }
+}
diff --git a/pkgs/build-support/node/fetch-npm-deps/src/main.rs b/pkgs/build-support/node/fetch-npm-deps/src/main.rs
new file mode 100644
index 0000000000000..097148fef82a0
--- /dev/null
+++ b/pkgs/build-support/node/fetch-npm-deps/src/main.rs
@@ -0,0 +1,334 @@
+#![warn(clippy::pedantic)]
+
+use crate::cacache::Cache;
+use anyhow::anyhow;
+use rayon::prelude::*;
+use serde::Deserialize;
+use std::{
+    collections::HashMap,
+    env, fs,
+    path::Path,
+    process::{self, Command},
+};
+use tempfile::tempdir;
+use url::Url;
+
+mod cacache;
+
+#[derive(Deserialize)]
+struct PackageLock {
+    #[serde(rename = "lockfileVersion")]
+    version: u8,
+    dependencies: Option<HashMap<String, OldPackage>>,
+    packages: Option<HashMap<String, Package>>,
+}
+
+#[derive(Deserialize)]
+struct OldPackage {
+    version: String,
+    resolved: Option<String>,
+    integrity: Option<String>,
+    dependencies: Option<HashMap<String, OldPackage>>,
+}
+
+#[derive(Deserialize)]
+struct Package {
+    resolved: Option<Url>,
+    integrity: Option<String>,
+}
+
+fn to_new_packages(
+    old_packages: HashMap<String, OldPackage>,
+) -> anyhow::Result<HashMap<String, Package>> {
+    let mut new = HashMap::new();
+
+    for (name, package) in old_packages {
+        new.insert(
+            format!("{name}-{}", package.version),
+            Package {
+                resolved: if let Ok(url) = Url::parse(&package.version) {
+                    Some(url)
+                } else {
+                    package.resolved.as_deref().map(Url::parse).transpose()?
+                },
+                integrity: package.integrity,
+            },
+        );
+
+        if let Some(dependencies) = package.dependencies {
+            new.extend(to_new_packages(dependencies)?);
+        }
+    }
+
+    Ok(new)
+}
+
+#[allow(clippy::case_sensitive_file_extension_comparisons)]
+fn get_hosted_git_url(url: &Url) -> Option<Url> {
+    if ["git", "http", "git+ssh", "git+https", "ssh", "https"].contains(&url.scheme()) {
+        let mut s = url.path_segments()?;
+
+        match url.host_str()? {
+            "github.com" => {
+                let user = s.next()?;
+                let mut project = s.next()?;
+                let typ = s.next();
+                let mut commit = s.next();
+
+                if typ.is_none() {
+                    commit = url.fragment();
+                } else if typ.is_some() && typ != Some("tree") {
+                    return None;
+                }
+
+                if project.ends_with(".git") {
+                    project = project.strip_suffix(".git")?;
+                }
+
+                let commit = commit.unwrap();
+
+                Some(
+                    Url::parse(&format!(
+                        "https://codeload.github.com/{user}/{project}/tar.gz/{commit}"
+                    ))
+                    .ok()?,
+                )
+            }
+            "bitbucket.org" => {
+                let user = s.next()?;
+                let mut project = s.next()?;
+                let aux = s.next();
+
+                if aux == Some("get") {
+                    return None;
+                }
+
+                if project.ends_with(".git") {
+                    project = project.strip_suffix(".git")?;
+                }
+
+                let commit = url.fragment()?;
+
+                Some(
+                    Url::parse(&format!(
+                        "https://bitbucket.org/{user}/{project}/get/{commit}.tar.gz"
+                    ))
+                    .ok()?,
+                )
+            }
+            "gitlab.com" => {
+                let path = &url.path()[1..];
+
+                if path.contains("/~/") || path.contains("/archive.tar.gz") {
+                    return None;
+                }
+
+                let user = s.next()?;
+                let mut project = s.next()?;
+
+                if project.ends_with(".git") {
+                    project = project.strip_suffix(".git")?;
+                }
+
+                let commit = url.fragment()?;
+
+                Some(
+                    Url::parse(&format!(
+                    "https://gitlab.com/{user}/{project}/repository/archive.tar.gz?ref={commit}"
+                ))
+                    .ok()?,
+                )
+            }
+            "git.sr.ht" => {
+                let user = s.next()?;
+                let mut project = s.next()?;
+                let aux = s.next();
+
+                if aux == Some("archive") {
+                    return None;
+                }
+
+                if project.ends_with(".git") {
+                    project = project.strip_suffix(".git")?;
+                }
+
+                let commit = url.fragment()?;
+
+                Some(
+                    Url::parse(&format!(
+                        "https://git.sr.ht/{user}/{project}/archive/{commit}.tar.gz"
+                    ))
+                    .ok()?,
+                )
+            }
+            _ => None,
+        }
+    } else {
+        None
+    }
+}
+
+fn get_ideal_hash(integrity: &str) -> anyhow::Result<&str> {
+    let split: Vec<_> = integrity.split_ascii_whitespace().collect();
+
+    if split.len() == 1 {
+        Ok(split[0])
+    } else {
+        for hash in ["sha512-", "sha1-"] {
+            if let Some(h) = split.iter().find(|s| s.starts_with(hash)) {
+                return Ok(h);
+            }
+        }
+
+        Err(anyhow!("not sure which hash to select out of {split:?}"))
+    }
+}
+
+fn main() -> anyhow::Result<()> {
+    let args = env::args().collect::<Vec<_>>();
+
+    if args.len() < 2 {
+        println!("usage: {} <path/to/package-lock.json>", args[0]);
+        println!();
+        println!("Prefetches npm dependencies for usage by fetchNpmDeps.");
+
+        process::exit(1);
+    }
+
+    let lock_content = fs::read_to_string(&args[1])?;
+    let lock: PackageLock = serde_json::from_str(&lock_content)?;
+
+    let out_tempdir;
+
+    let (out, print_hash) = if let Some(path) = args.get(2) {
+        (Path::new(path), false)
+    } else {
+        out_tempdir = tempdir()?;
+
+        (out_tempdir.path(), true)
+    };
+
+    let agent = ureq::agent();
+
+    eprintln!("lockfile version: {}", lock.version);
+
+    let packages = match lock.version {
+        1 => lock.dependencies.map(to_new_packages).transpose()?,
+        2 | 3 => lock.packages,
+        _ => panic!(
+            "We don't support lockfile version {}, please file an issue.",
+            lock.version
+        ),
+    };
+
+    if packages.is_none() {
+        return Ok(());
+    }
+
+    let cache = Cache::new(out.join("_cacache"));
+
+    packages
+        .unwrap()
+        .into_par_iter()
+        .try_for_each(|(dep, package)| {
+            if dep.is_empty() || package.resolved.is_none() {
+                return Ok::<_, anyhow::Error>(());
+            }
+
+            eprintln!("{dep}");
+
+            let mut resolved = package.resolved.unwrap();
+
+            if let Some(hosted_git_url) = get_hosted_git_url(&resolved) {
+                resolved = hosted_git_url;
+            }
+
+            let mut data = Vec::new();
+
+            agent
+                .get(resolved.as_str())
+                .call()?
+                .into_reader()
+                .read_to_end(&mut data)?;
+
+            cache
+                .put(
+                    format!("make-fetch-happen:request-cache:{resolved}"),
+                    resolved,
+                    &data,
+                    package
+                        .integrity
+                        .map(|i| Ok::<String, anyhow::Error>(get_ideal_hash(&i)?.to_string()))
+                        .transpose()?,
+                )
+                .map_err(|e| anyhow!("couldn't insert cache entry for {dep}: {e:?}"))?;
+
+            Ok(())
+        })?;
+
+    fs::write(out.join("package-lock.json"), lock_content)?;
+
+    if print_hash {
+        Command::new("nix")
+            .args(["--experimental-features", "nix-command", "hash", "path"])
+            .arg(out.as_os_str())
+            .status()?;
+    }
+
+    Ok(())
+}
+
+#[cfg(test)]
+mod tests {
+    use super::{get_hosted_git_url, get_ideal_hash};
+    use url::Url;
+
+    #[test]
+    fn hosted_git_urls() {
+        for (input, expected) in [
+            (
+                "git+ssh://git@github.com/castlabs/electron-releases.git#fc5f78d046e8d7cdeb66345a2633c383ab41f525",
+                Some("https://codeload.github.com/castlabs/electron-releases/tar.gz/fc5f78d046e8d7cdeb66345a2633c383ab41f525"),
+            ),
+            (
+                "https://user@github.com/foo/bar#fix/bug",
+                Some("https://codeload.github.com/foo/bar/tar.gz/fix/bug")
+            ),
+            (
+                "https://github.com/eligrey/classList.js/archive/1.2.20180112.tar.gz",
+                None
+            ),
+            (
+                "git+ssh://bitbucket.org/foo/bar#branch",
+                Some("https://bitbucket.org/foo/bar/get/branch.tar.gz")
+            ),
+            (
+                "ssh://git@gitlab.com/foo/bar.git#fix/bug",
+                Some("https://gitlab.com/foo/bar/repository/archive.tar.gz?ref=fix/bug")
+            ),
+            (
+                "git+ssh://git.sr.ht/~foo/bar#branch",
+                Some("https://git.sr.ht/~foo/bar/archive/branch.tar.gz")
+            ),
+        ] {
+            assert_eq!(
+                get_hosted_git_url(&Url::parse(input).unwrap()),
+                expected.map(|u| Url::parse(u).unwrap())
+            );
+        }
+    }
+
+    #[test]
+    fn ideal_hashes() {
+        for (input, expected) in [
+            ("sha512-foo sha1-bar", Some("sha512-foo")),
+            ("sha1-bar md5-foo", Some("sha1-bar")),
+            ("sha1-bar", Some("sha1-bar")),
+            ("sha512-foo", Some("sha512-foo")),
+            ("foo-bar sha1-bar", Some("sha1-bar")),
+            ("foo-bar baz-foo", None),
+        ] {
+            assert_eq!(get_ideal_hash(input).ok(), expected);
+        }
+    }
+}
diff --git a/pkgs/build-support/rust/lib/default.nix b/pkgs/build-support/rust/lib/default.nix
index 5eac208cc31ca..77397f9b7220c 100644
--- a/pkgs/build-support/rust/lib/default.nix
+++ b/pkgs/build-support/rust/lib/default.nix
@@ -15,6 +15,21 @@ rec {
     else if platform.isDarwin then "macos"
     else platform.parsed.kernel.name;
 
+  # https://doc.rust-lang.org/reference/conditional-compilation.html#target_family
+  toTargetFamily = platform:
+    if platform ? rustc.platform.target-family
+    then
+      (
+        # Since https://github.com/rust-lang/rust/pull/84072
+        # `target-family` is a list instead of single value.
+        let
+          f = platform.rustc.platform.target-family;
+        in
+        if builtins.isList f then f else [ f ]
+      )
+    else lib.optional platform.isUnix "unix"
+      ++ lib.optional platform.isWindows "windows";
+
   # Returns the name of the rust target, even if it is custom. Adjustments are
   # because rust has slightly different naming conventions than we do.
   toRustTarget = platform: let
diff --git a/pkgs/data/documentation/std-man-pages/default.nix b/pkgs/data/documentation/std-man-pages/default.nix
index c9ce9c2bf7646..1fd83700f85a0 100644
--- a/pkgs/data/documentation/std-man-pages/default.nix
+++ b/pkgs/data/documentation/std-man-pages/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "GCC C++ STD manual pages";
     homepage = "https://gcc.gnu.org/";
-    license = with licenses; [ fdl12Plus ];
+    license = with licenses; [ fdl13Plus ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/data/fonts/victor-mono/default.nix b/pkgs/data/fonts/victor-mono/default.nix
index e351cea9fdb41..f34baa8a83144 100644
--- a/pkgs/data/fonts/victor-mono/default.nix
+++ b/pkgs/data/fonts/victor-mono/default.nix
@@ -22,7 +22,7 @@ fetchzip {
     mv $out/OTF $out/share/fonts/opentype
     mv $out/TTF $out/share/fonts/truetype
 
-    rm -r $out/{EOT,WOFF,WOFF2}
+    rm -r $out/{EOT,WOFF,WOFF2,LICENSE.txt}
   '';
 
   sha256 = "sha256-1si0d2lpuXaDcSc3giVMMMbZc/eKbHKU3wmwfYHZ8o0=";
diff --git a/pkgs/data/icons/qogir-icon-theme/default.nix b/pkgs/data/icons/qogir-icon-theme/default.nix
index 69a4ea664ea50..3e065a74dfeff 100644
--- a/pkgs/data/icons/qogir-icon-theme/default.nix
+++ b/pkgs/data/icons/qogir-icon-theme/default.nix
@@ -18,13 +18,13 @@ lib.checkListOfEnum "${pname}: theme variants" [ "default" "manjaro" "ubuntu" "a
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-10-08";
+  version = "2022-11-05";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "sha256-BZhZyPnmiS5mxJp4/QnE7bTynB/cZ0QsUKFMhyd/Ox4=";
+    sha256 = "sha256-KQ3NmxNtJTURjH15hyZzngJ6aVTwlze28xQbRTlQmPE=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
diff --git a/pkgs/data/themes/marwaita/default.nix b/pkgs/data/themes/marwaita/default.nix
index 93119396af65b..189ef5277eb29 100644
--- a/pkgs/data/themes/marwaita/default.nix
+++ b/pkgs/data/themes/marwaita/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "marwaita";
-  version = "14.0";
+  version = "15.0";
 
   src = fetchFromGitHub {
     owner = "darkomarko42";
     repo = pname;
     rev = version;
-    sha256 = "sha256-G8oarWGx4DQ8ftmaWYpzV94cabDXbiJcVVgs70AG0Gs=";
+    sha256 = "sha256-GjBIAir4xTWnc1VXe5CF+FPcZJTSyJpi8MqlJUpkyy4=";
   };
 
   buildInputs = [
diff --git a/pkgs/data/themes/qogir/default.nix b/pkgs/data/themes/qogir/default.nix
index e52fcce406443..0685c55a5486e 100644
--- a/pkgs/data/themes/qogir/default.nix
+++ b/pkgs/data/themes/qogir/default.nix
@@ -24,13 +24,13 @@ lib.checkListOfEnum "${pname}: tweaks" [ "image" "square" "round" ] tweaks
 
 stdenv.mkDerivation rec {
   inherit pname;
-  version = "2022-10-16";
+  version = "2022-11-09";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "S9pLwkgWdnk1AezHE2D4vpV+JSmRW3vr6G5qYoup1ko=";
+    sha256 = "VmMlebERe6LDyfD/lo8o4TvNrJ37m2OHC25JkUc6sig=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
index 2f75893b0b5ee..b7f8a0ac83aea 100644
--- a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extensions";
-  version = "43.0";
+  version = "43.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "5Hw51CeCpyRJu/fes28D/ZbLWSkZRikTkSEuL9mNX5M=";
+    sha256 = "rd4EvZRqExE1V+TDTIkLvpB3UFpqPwdV8XvqHG5KLRc=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix
index 050a88dd0b3e1..b71b9c02d909b 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -68,13 +68,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gnome-shell";
-  version = "43.0";
+  version = "43.1";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "9u7JdwP588xv5ua0H23IIbGOyE34NRxN+XsXroJ0G0E=";
+    sha256 = "3wREdl3vG9Cv7pYX0rWRm8ebTbhufnV6wOH3N0jsG9w=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix
index 4c2aded0492a8..e5bb71d394ee6 100644
--- a/pkgs/desktops/gnome/core/mutter/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/default.nix
@@ -49,13 +49,13 @@
 
 let self = stdenv.mkDerivation rec {
   pname = "mutter";
-  version = "43.0";
+  version = "43.1";
 
   outputs = [ "out" "dev" "man" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "jZulKO2Z72eZZC4Uez/p8ry+ypvs7ShFwcrbMxzT5SU=";
+    sha256 = "8vCLJSeDlIpezILwDp6TWmHrv4VkhEvdkniKtEqngmQ=";
   };
 
   patches = [
@@ -65,15 +65,6 @@ let self = stdenv.mkDerivation rec {
       url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/285a5a4d54ca83b136b787ce5ebf1d774f9499d5.patch";
       sha256 = "/npUE3idMSTVlFptsDpZmGWjZ/d2gqruVlJKq4eF4xU=";
     })
-
-    # color-device: Don't create profiles from obvious garbage data
-    # https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2627
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2627.patch";
-      sha256 = "SafC29+gjcj6JswHY6yuwcOS16LPYvFwYW1TEpNNSHc=";
-    })
-
-
   ];
 
   mesonFlags = [
diff --git a/pkgs/desktops/gnome/extensions/system-monitor/default.nix b/pkgs/desktops/gnome/extensions/system-monitor/default.nix
index 216a1d4c77de4..62d0967303777 100644
--- a/pkgs/desktops/gnome/extensions/system-monitor/default.nix
+++ b/pkgs/desktops/gnome/extensions/system-monitor/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, substituteAll, fetchFromGitHub, glib, glib-networking, libgtop, gnome }:
+{ lib, stdenv, substituteAll, fetchFromGitHub, fetchpatch, glib, glib-networking, libgtop, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-system-monitor";
-  version = "unstable-2022-02-04";
+  version = "unstable-2022-04-25";
 
   src = fetchFromGitHub {
     owner = "paradoxxxzero";
     repo = "gnome-shell-system-monitor-applet";
-    rev = "2c6eb0a447bfc9f1a07c61956c92a55c874baf16";
-    hash = "sha256-JuRRlvqlqneqUdgezKGl2yg7wFYGCCo51q9CBwrxTBY=";
+    rev = "b359d888fd3fcccf1252f5f1dc390299e701493e";
+    hash = "sha256-FHErXetGN4n0TbrLQ5cN7V2IgO96ekHxiHLd0diRFAY=";
   };
 
   nativeBuildInputs = [
@@ -17,6 +17,15 @@ stdenv.mkDerivation rec {
   ];
 
   patches = [
+    # GNOME 43 compatibility
+    (fetchpatch {
+      url = "https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet/pull/754/commits/3b3a617f78c5e9bbce0aa2864b3989335edb37b7.patch";
+      hash = "sha256-BAD0ExQYmTg6i02Gg7jcF0vf1zp232vXRjGCn+rBYXE=";
+    })
+    (fetchpatch {
+      url = "https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet/pull/754/commits/0815ed9da5056542730838fbf6c600506cf7a76f.patch";
+      hash = "sha256-pavjlPV9BxXoqb0YrlP2bXT7tkNQaBkTy1pMrI9MLnk=";
+    })
     (substituteAll {
       src = ./paths_and_nonexisting_dirs.patch;
       clutter_path = gnome.mutter.libdir; # only needed for GNOME < 40.
diff --git a/pkgs/desktops/mate/mate-user-guide/default.nix b/pkgs/desktops/mate/mate-user-guide/default.nix
index d5fcd44887ac9..ab81748118068 100644
--- a/pkgs/desktops/mate/mate-user-guide/default.nix
+++ b/pkgs/desktops/mate/mate-user-guide/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "MATE User Guide";
     homepage = "https://mate-desktop.org";
-    license = with licenses; [ gpl2Plus fdl12 ];
+    license = with licenses; [ gpl2Plus fdl11Plus ];
     platforms = platforms.unix;
     maintainers = teams.mate.members;
   };
diff --git a/pkgs/desktops/plasma-5/default.nix b/pkgs/desktops/plasma-5/default.nix
index bb3119ed6d458..6396b7c6c51e0 100644
--- a/pkgs/desktops/plasma-5/default.nix
+++ b/pkgs/desktops/plasma-5/default.nix
@@ -43,7 +43,7 @@ let
     mit
     gpl2Plus
     gpl3Plus
-    fdl12
+    fdl12Plus
   ];
 
   srcs = import ./srcs.nix {
diff --git a/pkgs/desktops/plasma-5/fetch.sh b/pkgs/desktops/plasma-5/fetch.sh
index 2536cf52d71cb..eb91ba4838fbe 100644
--- a/pkgs/desktops/plasma-5/fetch.sh
+++ b/pkgs/desktops/plasma-5/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/plasma/5.26.2/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.26.3/ -A '*.tar.xz' )
diff --git a/pkgs/desktops/plasma-5/srcs.nix b/pkgs/desktops/plasma-5/srcs.nix
index 68598128986f6..0d5a6010e6fe6 100644
--- a/pkgs/desktops/plasma-5/srcs.nix
+++ b/pkgs/desktops/plasma-5/srcs.nix
@@ -4,467 +4,467 @@
 
 {
   aura-browser = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/aura-browser-5.26.2.tar.xz";
-      sha256 = "04kxvw89hq39b3smjhbvlxd4mzlh8y18vw7132m8ign9jkfzrvzx";
-      name = "aura-browser-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/aura-browser-5.26.3.tar.xz";
+      sha256 = "0103avsjplj6zmjql4gcgh2lrmmx87k3dx0wl371vqdf1prgbv2z";
+      name = "aura-browser-5.26.3.tar.xz";
     };
   };
   bluedevil = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/bluedevil-5.26.2.tar.xz";
-      sha256 = "1q6szqs0asdl4s7q24pkm49nhf0dvpa0sfnhpfczk7bkyf83i64r";
-      name = "bluedevil-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/bluedevil-5.26.3.tar.xz";
+      sha256 = "1f2dh7d0ds5n8vcnrkx919yvf5g3yrl6zg2rfaiac9vff04afcpj";
+      name = "bluedevil-5.26.3.tar.xz";
     };
   };
   breeze = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/breeze-5.26.2.tar.xz";
-      sha256 = "1rbdb3sqb3im2kbyjmjplv9dn7i060f1a4nzpa2zg4pym647pljx";
-      name = "breeze-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/breeze-5.26.3.tar.xz";
+      sha256 = "0wn5m8avs1ncvx70lrh5gafnq7sdfd18rvih95cpdbqqs4y222a5";
+      name = "breeze-5.26.3.tar.xz";
     };
   };
   breeze-grub = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/breeze-grub-5.26.2.tar.xz";
-      sha256 = "0dzk17kn85bbzld0pyjpxcrmyhdfnnccaa05zhq5dnwfa8zfkjk7";
-      name = "breeze-grub-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/breeze-grub-5.26.3.tar.xz";
+      sha256 = "0qnxcwina2m4imgm02yq2yn2ax2rwncp511gihx49h97cy9yx7i5";
+      name = "breeze-grub-5.26.3.tar.xz";
     };
   };
   breeze-gtk = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/breeze-gtk-5.26.2.tar.xz";
-      sha256 = "1a50jm321jrn2ydsb23b21pzzfwdp5wr0apl7qsqylrc619nfn21";
-      name = "breeze-gtk-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/breeze-gtk-5.26.3.tar.xz";
+      sha256 = "0qrz7kkkv00rmaja6a1dmrldy6nfshdsx56k3vji00fwpi03nfja";
+      name = "breeze-gtk-5.26.3.tar.xz";
     };
   };
   breeze-plymouth = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/breeze-plymouth-5.26.2.tar.xz";
-      sha256 = "0xdxv81zav72dpy0hkbf4jvsgk53ack3y21qpxjjr1xxmh592mmi";
-      name = "breeze-plymouth-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/breeze-plymouth-5.26.3.tar.xz";
+      sha256 = "0n6skqay6c84411n2hi9sibyhiiqisl2kmd5lwbv748h4x311yz8";
+      name = "breeze-plymouth-5.26.3.tar.xz";
     };
   };
   discover = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/discover-5.26.2.tar.xz";
-      sha256 = "0znmyfdifx6k2d0d798bb6fx446qjjsng2m8q938xrnw0bapd48x";
-      name = "discover-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/discover-5.26.3.tar.xz";
+      sha256 = "1p9l6q68kyzm40hg6nhp2jsqx6mjscixj1fkmibphj3ps10xsgqf";
+      name = "discover-5.26.3.tar.xz";
     };
   };
   drkonqi = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/drkonqi-5.26.2.tar.xz";
-      sha256 = "07ww27qjxn4h6x58y3mz2bdfxfh11ypg0kc45zy7zbn2fn4lp80g";
-      name = "drkonqi-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/drkonqi-5.26.3.tar.xz";
+      sha256 = "0897fkxa3gd7hbvx4h5hhwnxwycgcciyp02aw5m2gmyylav97pb4";
+      name = "drkonqi-5.26.3.tar.xz";
     };
   };
   kactivitymanagerd = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kactivitymanagerd-5.26.2.tar.xz";
-      sha256 = "1fxix3mfn966ah3q838pf8yh6x3z4grk4xnw1471jr1fkxi7vhfy";
-      name = "kactivitymanagerd-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kactivitymanagerd-5.26.3.tar.xz";
+      sha256 = "1wv6b5shm8741phhhfldrwzb8pm4jskd3sq242pg8230qh054vrc";
+      name = "kactivitymanagerd-5.26.3.tar.xz";
     };
   };
   kde-cli-tools = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kde-cli-tools-5.26.2.tar.xz";
-      sha256 = "0vwcxrdhqqdmbk56d6r9y83fms3zbqcps9spqpnvxsksz51p7079";
-      name = "kde-cli-tools-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kde-cli-tools-5.26.3.tar.xz";
+      sha256 = "0h76w9nkcc4d15lh7yz260vfh3fv9apx5d7i5m75pb4z9mgcpgzv";
+      name = "kde-cli-tools-5.26.3.tar.xz";
     };
   };
   kde-gtk-config = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kde-gtk-config-5.26.2.tar.xz";
-      sha256 = "0fv2n9n4bsffzz1864cbp1nww9gijx7pi1l5rr0p27dz3mcp403q";
-      name = "kde-gtk-config-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kde-gtk-config-5.26.3.tar.xz";
+      sha256 = "1fkiqf92222vsbrq15skn6cynni312r7clbr2xrsxnygwbvsqni7";
+      name = "kde-gtk-config-5.26.3.tar.xz";
     };
   };
   kdecoration = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kdecoration-5.26.2.tar.xz";
-      sha256 = "1dcy4a2pbn9m17paxdpmmca2bbqrj6jqgjmnvmb1bp75j8lpwrl1";
-      name = "kdecoration-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kdecoration-5.26.3.tar.xz";
+      sha256 = "0ngcqfp0qy8dmd7df35xw5m2pz5azzvpsj0raby370j76s8l92wi";
+      name = "kdecoration-5.26.3.tar.xz";
     };
   };
   kdeplasma-addons = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kdeplasma-addons-5.26.2.tar.xz";
-      sha256 = "01lfr2q2qj3rnl97bg3ndd1nb442jkb9j3vwvw3kyrds40vzb5l7";
-      name = "kdeplasma-addons-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kdeplasma-addons-5.26.3.tar.xz";
+      sha256 = "13j79097j2x8cmssqikiwlxkkajaj8nnw4md6vl4f51qnrz7h7f4";
+      name = "kdeplasma-addons-5.26.3.tar.xz";
     };
   };
   kgamma5 = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kgamma5-5.26.2.tar.xz";
-      sha256 = "1akvdans47h7a2knfpvzqb5a6nyyr3fakf93afijnwj0ijdmp74c";
-      name = "kgamma5-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kgamma5-5.26.3.tar.xz";
+      sha256 = "0pjyqrily8in109ys2bawm3cr0vn4ig788h100l3953wg15alv47";
+      name = "kgamma5-5.26.3.tar.xz";
     };
   };
   khotkeys = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/khotkeys-5.26.2.tar.xz";
-      sha256 = "0c2nnkd3c2mbkpl9dj1hq3rf6qkb4jdcv27vwsrx843aavgdhlpz";
-      name = "khotkeys-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/khotkeys-5.26.3.tar.xz";
+      sha256 = "0pwmf35qfz2vrvc5gwwibxjwwpc5lvlihba77cj6lfw1hn9h203m";
+      name = "khotkeys-5.26.3.tar.xz";
     };
   };
   kinfocenter = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kinfocenter-5.26.2.tar.xz";
-      sha256 = "0axhrq5db92na5pg9v4rx0hqas4b2915lk4vlzg3mlwfvwldy0d2";
-      name = "kinfocenter-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kinfocenter-5.26.3.tar.xz";
+      sha256 = "0fmc34n9yvkrfhgp0akjd9y7mkhjl8jfl485kfij5rrc14zyln65";
+      name = "kinfocenter-5.26.3.tar.xz";
     };
   };
   kmenuedit = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kmenuedit-5.26.2.tar.xz";
-      sha256 = "1blk6j0464wrzq59cdr32b1li920r5lqbpihicxmq4d19s5pj6rz";
-      name = "kmenuedit-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kmenuedit-5.26.3.tar.xz";
+      sha256 = "0bapsrfi9fhj8gw8qbs3f538l1kpawv3k2avkk87zy9cvi9kh1vw";
+      name = "kmenuedit-5.26.3.tar.xz";
     };
   };
   kpipewire = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kpipewire-5.26.2.tar.xz";
-      sha256 = "10qh38j3krgs16qidyzg65hmxlmmajfkx0csccs7hfazmh6mihny";
-      name = "kpipewire-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kpipewire-5.26.3.tar.xz";
+      sha256 = "193wrnz4v8zqi95laa9jpbnd2kmf1y40a57yyhfjhawfijinba5l";
+      name = "kpipewire-5.26.3.tar.xz";
     };
   };
   kscreen = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kscreen-5.26.2.tar.xz";
-      sha256 = "047f5w9z1ka7ckr2q3ssii7bs9i81iyvmx45qi54jz3issbgdr3g";
-      name = "kscreen-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kscreen-5.26.3.tar.xz";
+      sha256 = "05dcff125vklawf3b8hirbp7fwhjqnpqrlkkaqsxf7w99p3s6bss";
+      name = "kscreen-5.26.3.tar.xz";
     };
   };
   kscreenlocker = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kscreenlocker-5.26.2.tar.xz";
-      sha256 = "12bw3sqxmc3f909w81mkxm7sfx6pi27998rdk39abrav17r5khyi";
-      name = "kscreenlocker-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kscreenlocker-5.26.3.tar.xz";
+      sha256 = "0sa56dyxa7mg76z41dn5w7z1snsyqwyxh0nq32izi9bm20zd2f6f";
+      name = "kscreenlocker-5.26.3.tar.xz";
     };
   };
   ksshaskpass = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/ksshaskpass-5.26.2.tar.xz";
-      sha256 = "11gh9m7pqnm0clrv3gvnrcgp7ivmjzmm696wnh0xq9g3zxi1wz85";
-      name = "ksshaskpass-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/ksshaskpass-5.26.3.tar.xz";
+      sha256 = "05kwcwny6lx459p149nwgv09hzjb6w24jafqzxa6rk1k1fb0x5wi";
+      name = "ksshaskpass-5.26.3.tar.xz";
     };
   };
   ksystemstats = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/ksystemstats-5.26.2.tar.xz";
-      sha256 = "0xak1wrb2mc59r7cv4dpkafa6pllra4q4ajwpdzmmdmf32rbwabi";
-      name = "ksystemstats-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/ksystemstats-5.26.3.tar.xz";
+      sha256 = "0il22sx3clkksri9z0k41ssqhb07qvfipnymckja90m70npqb2a2";
+      name = "ksystemstats-5.26.3.tar.xz";
     };
   };
   kwallet-pam = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kwallet-pam-5.26.2.tar.xz";
-      sha256 = "1js6ay4zq0vfm3d6cw6zd7avyf1ii4k9ib1g2r6pxm84rl2b3x28";
-      name = "kwallet-pam-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kwallet-pam-5.26.3.tar.xz";
+      sha256 = "03haxcdsjwydb1l27lzizk8bqqhyf313044p4f94ii8gdgg1w8l5";
+      name = "kwallet-pam-5.26.3.tar.xz";
     };
   };
   kwayland-integration = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kwayland-integration-5.26.2.tar.xz";
-      sha256 = "1nfmpfbkd3zxlz60n63zgmir83qqx5alrk53293vq4w7hin2hilf";
-      name = "kwayland-integration-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kwayland-integration-5.26.3.tar.xz";
+      sha256 = "0hy6xv1009vcmypqaga8mzfsh4nybsrvm107g261hww43qyx2wg5";
+      name = "kwayland-integration-5.26.3.tar.xz";
     };
   };
   kwin = {
-    version = "5.26.2.1";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kwin-5.26.2.1.tar.xz";
-      sha256 = "0r1kby1g82spirhli88vjbb01a3xwqxgd2svhf78yp7q4q9957kw";
-      name = "kwin-5.26.2.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kwin-5.26.3.tar.xz";
+      sha256 = "050a5j0dm131a45lggiw47mllzzm4fxf2m1mv5csazzwjrbmz661";
+      name = "kwin-5.26.3.tar.xz";
     };
   };
   kwrited = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/kwrited-5.26.2.tar.xz";
-      sha256 = "14n5j04946r2fvwflyxiyari6iv144mgl3jxj8rrqxa6xs2mw090";
-      name = "kwrited-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/kwrited-5.26.3.tar.xz";
+      sha256 = "0jznp1r92z22vk5zqwjh1fk6j5jzw4vygzjjlm4yv426izkw2xdj";
+      name = "kwrited-5.26.3.tar.xz";
     };
   };
   layer-shell-qt = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/layer-shell-qt-5.26.2.tar.xz";
-      sha256 = "0ll4f0ddkh8c4bpb21hzgy15hrzzil09ls1fd3frs4y51i4f4pcz";
-      name = "layer-shell-qt-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/layer-shell-qt-5.26.3.tar.xz";
+      sha256 = "10d4vi70z27n434d71n38m1l8dgdk33155yk97d7rsaicg7s1hq2";
+      name = "layer-shell-qt-5.26.3.tar.xz";
     };
   };
   libkscreen = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/libkscreen-5.26.2.tar.xz";
-      sha256 = "198jvlmai0knxbklr85kykhzzqny8gk2vyq61p7vhkmlx2fpbfis";
-      name = "libkscreen-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/libkscreen-5.26.3.tar.xz";
+      sha256 = "1nfpa4h8yhrkfq39qzlbpfkxp1qvd5k11jv4sgdqv0fs99g8xhzf";
+      name = "libkscreen-5.26.3.tar.xz";
     };
   };
   libksysguard = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/libksysguard-5.26.2.tar.xz";
-      sha256 = "0h3b5dsycdqbxv9jl5bdwbgsx7fnp4lmv5kd968sybqmnhx5cbds";
-      name = "libksysguard-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/libksysguard-5.26.3.tar.xz";
+      sha256 = "1lbngciln6q66g2q48xcl7m1j7rb2yjrncpaidr6464a8vffwh69";
+      name = "libksysguard-5.26.3.tar.xz";
     };
   };
   milou = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/milou-5.26.2.tar.xz";
-      sha256 = "0bc1ji99qxwakpw8cpx46hpgy6m7g85dffmhssm5xn6yl94jsxy0";
-      name = "milou-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/milou-5.26.3.tar.xz";
+      sha256 = "12wjbvw72033havjq91i2prcj4yjynh6h2lc2z6ba9zsp6rsgk41";
+      name = "milou-5.26.3.tar.xz";
     };
   };
   oxygen = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/oxygen-5.26.2.tar.xz";
-      sha256 = "0slsbd9k39v01vm50k4skn7wcff753x1ilrmsw8mf1wvna018x3x";
-      name = "oxygen-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/oxygen-5.26.3.tar.xz";
+      sha256 = "1hczm502afy9ps5qq6pq0zdzvdyn2gsr17072q530fi9mzljbdch";
+      name = "oxygen-5.26.3.tar.xz";
     };
   };
   oxygen-sounds = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/oxygen-sounds-5.26.2.tar.xz";
-      sha256 = "1yg4awf53j5vx5kx3mhj9rafmkalx406xac3xq8qbxgp4pl6h58d";
-      name = "oxygen-sounds-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/oxygen-sounds-5.26.3.tar.xz";
+      sha256 = "015mn6smrc5ii5jq8yajqi0ndlaci48cy289ks8q5qspvfd99hrs";
+      name = "oxygen-sounds-5.26.3.tar.xz";
     };
   };
   plank-player = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plank-player-5.26.2.tar.xz";
-      sha256 = "1wah5m9qsv0wj2dc9c5q51fhp8a43bfnah33gh52yjhrdks235hq";
-      name = "plank-player-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plank-player-5.26.3.tar.xz";
+      sha256 = "16lmsmg6d363giyfw0vwbyznx27fy8p4cvmpgqdzq23zhc20axnm";
+      name = "plank-player-5.26.3.tar.xz";
     };
   };
   plasma-bigscreen = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-bigscreen-5.26.2.tar.xz";
-      sha256 = "1ir53s062rfdvdgdb2ir01qzhdvyq87qlhwihzz5f8zkf2w2hzhn";
-      name = "plasma-bigscreen-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-bigscreen-5.26.3.tar.xz";
+      sha256 = "13mr8xkmvq0lh6fc103nzirkgda3gpry1qwy3azvw65bxxakf7wq";
+      name = "plasma-bigscreen-5.26.3.tar.xz";
     };
   };
   plasma-browser-integration = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-browser-integration-5.26.2.tar.xz";
-      sha256 = "1llqqybz6bkqqpqpbmgmbf3diqvgf81axzhnwwxzid8m5akyjbf9";
-      name = "plasma-browser-integration-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-browser-integration-5.26.3.tar.xz";
+      sha256 = "1bwdl6dzz6cj9753cgivrz1ajxy6qn59g5la4icfp7kn945zw7zm";
+      name = "plasma-browser-integration-5.26.3.tar.xz";
     };
   };
   plasma-desktop = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-desktop-5.26.2.tar.xz";
-      sha256 = "00f26lb2ssp2smqr20900326i8sbhn3wg5m18v8bah9w3wlzwk3z";
-      name = "plasma-desktop-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-desktop-5.26.3.tar.xz";
+      sha256 = "1lsw17rkwb91v1kaqg627rg6i3a56q2izj66fcgfy9fl34sc4x31";
+      name = "plasma-desktop-5.26.3.tar.xz";
     };
   };
   plasma-disks = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-disks-5.26.2.tar.xz";
-      sha256 = "0lsa01ycywjklvp51sbrv5rc43w9c1d0mackwdnjhxpzgdwwjvjc";
-      name = "plasma-disks-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-disks-5.26.3.tar.xz";
+      sha256 = "0gjbhnf74vnd1d1zfbdha9qx0jddx8621z80czyrn0b6yz28pmgm";
+      name = "plasma-disks-5.26.3.tar.xz";
     };
   };
   plasma-firewall = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-firewall-5.26.2.tar.xz";
-      sha256 = "1mqd70m5ydb9kccgzqa85pxx7sxqwkg3y8wx8kpqly64qyn360ig";
-      name = "plasma-firewall-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-firewall-5.26.3.tar.xz";
+      sha256 = "0ra23mv2n2bsq5hsyl9biiak2s1ii3fpxhbbmyzakp3dnln0vkwx";
+      name = "plasma-firewall-5.26.3.tar.xz";
     };
   };
   plasma-integration = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-integration-5.26.2.tar.xz";
-      sha256 = "0i1vxmadwanv1q0jn0jqpcza6bghbbs6cr9hvc8m1z2rldzxbyhi";
-      name = "plasma-integration-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-integration-5.26.3.tar.xz";
+      sha256 = "1vfs6hw9pswxgjln13kj5l7hqfh3m40vqrh0yz3zzs574bfj61y7";
+      name = "plasma-integration-5.26.3.tar.xz";
     };
   };
   plasma-mobile = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-mobile-5.26.2.tar.xz";
-      sha256 = "188zkg15qhqvgpl3qa0ddpzbhhh40v8f1nqmj3s12cv1cy2a1r63";
-      name = "plasma-mobile-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-mobile-5.26.3.tar.xz";
+      sha256 = "0l4m281bsilswvzhp849x6qnpvzc632p1mlarhwh40gak9ymjx0h";
+      name = "plasma-mobile-5.26.3.tar.xz";
     };
   };
   plasma-nano = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-nano-5.26.2.tar.xz";
-      sha256 = "195mkjmdpsfpv14194cmry9cx779p89if38j91avaf21ckhbbdvy";
-      name = "plasma-nano-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-nano-5.26.3.tar.xz";
+      sha256 = "1n2nfl8s9vrsr919cpz2pji4f8fa6cmlp5qybib490mnwlw6vy7k";
+      name = "plasma-nano-5.26.3.tar.xz";
     };
   };
   plasma-nm = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-nm-5.26.2.tar.xz";
-      sha256 = "0qgb65bmiw6arhgdswk6ljawb5g4j7j5rr10ph5bahhgy3gggfpx";
-      name = "plasma-nm-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-nm-5.26.3.tar.xz";
+      sha256 = "1q21lnl5y3dm73pl7586bg7whc9fk540ajm3hy0x4p10q28y7yyc";
+      name = "plasma-nm-5.26.3.tar.xz";
     };
   };
   plasma-pa = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-pa-5.26.2.tar.xz";
-      sha256 = "02qjpwyjsz22j57p3mcf8dnc1akcrb8na5zrk8a7w6bmpjk1qx3f";
-      name = "plasma-pa-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-pa-5.26.3.tar.xz";
+      sha256 = "01q8jbbdi1hqa6wx8bhas7qzqg3v5mkqrj3lmaq56qvp9rjyg8ik";
+      name = "plasma-pa-5.26.3.tar.xz";
     };
   };
   plasma-remotecontrollers = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-remotecontrollers-5.26.2.tar.xz";
-      sha256 = "147i8wn8wpjw1gialmxpq2gd2vgdrk6dxd5s2xa447ix2ni7spvs";
-      name = "plasma-remotecontrollers-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-remotecontrollers-5.26.3.tar.xz";
+      sha256 = "0hmacs0927pqhxmv89p96g5c71ic2wsn7byvbnp9w9gp4wbgkwc2";
+      name = "plasma-remotecontrollers-5.26.3.tar.xz";
     };
   };
   plasma-sdk = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-sdk-5.26.2.tar.xz";
-      sha256 = "037i9zmi4db65sfj0jlsbjd1rskbv8vmnzpkh9x9lhizr59smawq";
-      name = "plasma-sdk-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-sdk-5.26.3.tar.xz";
+      sha256 = "0s71clqpc9ncqcz6pjkv4r0zk4v2bl72i1s6mxr7z9qxmhhmi41f";
+      name = "plasma-sdk-5.26.3.tar.xz";
     };
   };
   plasma-systemmonitor = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-systemmonitor-5.26.2.tar.xz";
-      sha256 = "08kbix3cvgvjww7rn3pch9v23brmhk3dmibw9s1cylh5wkfpdqfy";
-      name = "plasma-systemmonitor-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-systemmonitor-5.26.3.tar.xz";
+      sha256 = "11dvzjr083c3ds4cq2ws7d3365c3hdqdpw0r9sca94grs64jigwz";
+      name = "plasma-systemmonitor-5.26.3.tar.xz";
     };
   };
   plasma-tests = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-tests-5.26.2.tar.xz";
-      sha256 = "0fpn71gws68qffgj052wcmslg4kg4a8pkasi8i51dmjflggvdcpp";
-      name = "plasma-tests-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-tests-5.26.3.tar.xz";
+      sha256 = "1m71rhvfl1yls8vlyxpfs7z3aavf42a0lyg94rmb7awzp4qkf7zv";
+      name = "plasma-tests-5.26.3.tar.xz";
     };
   };
   plasma-thunderbolt = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-thunderbolt-5.26.2.tar.xz";
-      sha256 = "00nxizzwscihfzqwf7yha93zal27i4bgq7kk9jsriipmwws81v47";
-      name = "plasma-thunderbolt-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-thunderbolt-5.26.3.tar.xz";
+      sha256 = "1w0b124xkh8g9kivlxwasb4iqpp5spm40y5hdz08r8faw065fn6g";
+      name = "plasma-thunderbolt-5.26.3.tar.xz";
     };
   };
   plasma-vault = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-vault-5.26.2.tar.xz";
-      sha256 = "0v0cjdm79za4zk8yrs2yqzjn19n7cxfj14vr4lg2dj79dawjb0a9";
-      name = "plasma-vault-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-vault-5.26.3.tar.xz";
+      sha256 = "09mljjn7z8vbwzfhdxbjnkr8r4anplbb3di2vvfwcgn0yn2m4hmf";
+      name = "plasma-vault-5.26.3.tar.xz";
     };
   };
   plasma-workspace = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-workspace-5.26.2.tar.xz";
-      sha256 = "0jzq5j8w94yd5nqvv66vcx6dhbh77qna2sijmv2xr6nlcvhdzs9j";
-      name = "plasma-workspace-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-workspace-5.26.3.tar.xz";
+      sha256 = "0ly96nxdiw5sndb1ga2ngqr4s5sslg8gi9ikp0nq4h75wfc1wb0a";
+      name = "plasma-workspace-5.26.3.tar.xz";
     };
   };
   plasma-workspace-wallpapers = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plasma-workspace-wallpapers-5.26.2.tar.xz";
-      sha256 = "1kjy4i7i7lyj9i5cpd28fp5p8gs7sfnvxnlw7wbg3w11hn3bq3pf";
-      name = "plasma-workspace-wallpapers-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plasma-workspace-wallpapers-5.26.3.tar.xz";
+      sha256 = "1qrwfn8r845giganv9gk7v75827q9js8sygc0dvijg2ilmr56d31";
+      name = "plasma-workspace-wallpapers-5.26.3.tar.xz";
     };
   };
   plymouth-kcm = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/plymouth-kcm-5.26.2.tar.xz";
-      sha256 = "0hdrj61n3gqah0hhgnxwb53qbivgqhz26g6bmsq8ns6xpl4n179q";
-      name = "plymouth-kcm-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/plymouth-kcm-5.26.3.tar.xz";
+      sha256 = "14np3wnca4nmcr74zbkrnysbfsrbrhxaf0hb96f4rn391kj5m635";
+      name = "plymouth-kcm-5.26.3.tar.xz";
     };
   };
   polkit-kde-agent = {
-    version = "1-5.26.2";
+    version = "1-5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/polkit-kde-agent-1-5.26.2.tar.xz";
-      sha256 = "036jrvkcj6cbpb9zbjpj5ajprlbd5ks6yj16qlq1m2f2gapds33j";
-      name = "polkit-kde-agent-1-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/polkit-kde-agent-1-5.26.3.tar.xz";
+      sha256 = "0wd6yjd1qgiqjvvdn575zaa4c3szigk91d5l7a4c4kg4x5yb161g";
+      name = "polkit-kde-agent-1-5.26.3.tar.xz";
     };
   };
   powerdevil = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/powerdevil-5.26.2.tar.xz";
-      sha256 = "003r8g9in4qm2mjbdwbnmc3a04y9s5wkng1l211xj1b6dq7mb354";
-      name = "powerdevil-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/powerdevil-5.26.3.tar.xz";
+      sha256 = "0190rygc748av81iw2a3bl3zkawl0wjpx0761lagvrdj7hm3x35v";
+      name = "powerdevil-5.26.3.tar.xz";
     };
   };
   qqc2-breeze-style = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/qqc2-breeze-style-5.26.2.tar.xz";
-      sha256 = "0am38p1xmi4amc38g0ra361b0bi5wr5qvhpfjsdx23qnigdfq31s";
-      name = "qqc2-breeze-style-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/qqc2-breeze-style-5.26.3.tar.xz";
+      sha256 = "04nx8519g6dwvacyp8x6n2av4wp65kshqbvbfy32f61lildhkg9c";
+      name = "qqc2-breeze-style-5.26.3.tar.xz";
     };
   };
   sddm-kcm = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/sddm-kcm-5.26.2.tar.xz";
-      sha256 = "0wbajgflnm46jf3gkk7gbrrw11rkagi525vwa8rvcxdh7ll2h1w3";
-      name = "sddm-kcm-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/sddm-kcm-5.26.3.tar.xz";
+      sha256 = "1xfkwqs0aljk1wdmgvw9vqm50d43svlzrkhh7cacy94z9jnaaxia";
+      name = "sddm-kcm-5.26.3.tar.xz";
     };
   };
   systemsettings = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/systemsettings-5.26.2.tar.xz";
-      sha256 = "03f9g8wiikvpyzanzr6arx8021prn2q2jydq2vj3cy6ap5wrkn29";
-      name = "systemsettings-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/systemsettings-5.26.3.tar.xz";
+      sha256 = "1clqw087nk47gb7qbbmc0s9ks2k5ch5ssim2smz7j6gn3d9n3qy3";
+      name = "systemsettings-5.26.3.tar.xz";
     };
   };
   xdg-desktop-portal-kde = {
-    version = "5.26.2";
+    version = "5.26.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.26.2/xdg-desktop-portal-kde-5.26.2.tar.xz";
-      sha256 = "0wswmpn176gciv3liqx5fa9cbh2ig5vnz6275bxyqc9clx810drn";
-      name = "xdg-desktop-portal-kde-5.26.2.tar.xz";
+      url = "${mirror}/stable/plasma/5.26.3/xdg-desktop-portal-kde-5.26.3.tar.xz";
+      sha256 = "1lx73k85ysyyscz1rpdrw3gq8vj16xsgbcz7gs36qcvzhwvg5pjp";
+      name = "xdg-desktop-portal-kde-5.26.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/compilers/cudatoolkit/redist/extension.nix b/pkgs/development/compilers/cudatoolkit/redist/extension.nix
index 17327efb40135..9c7951c75d137 100644
--- a/pkgs/development/compilers/cudatoolkit/redist/extension.nix
+++ b/pkgs/development/compilers/cudatoolkit/redist/extension.nix
@@ -12,6 +12,7 @@ final: prev: let
     "11.5" = ./manifests/redistrib_11.5.2.json;
     "11.6" = ./manifests/redistrib_11.6.2.json;
     "11.7" = ./manifests/redistrib_11.7.0.json;
+    "11.8" = ./manifests/redistrib_11.8.0.json;
   };
 
   # Function to build a single cudatoolkit redist package
diff --git a/pkgs/development/compilers/dotnet/versions/3.1.nix b/pkgs/development/compilers/dotnet/versions/3.1.nix
index 013fefb13e0cb..0b3e741c93e82 100644
--- a/pkgs/development/compilers/dotnet/versions/3.1.nix
+++ b/pkgs/development/compilers/dotnet/versions/3.1.nix
@@ -4,134 +4,134 @@
 {
   aspnetcore_3_1 = buildAspNetCore {
     inherit icu;
-    version = "3.1.30";
+    version = "3.1.31";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/12f61df9-e5d2-4cc2-b992-80d30ee3fc43/0087f4e0b8b3a94effa890ee3ebba0b1/aspnetcore-runtime-3.1.30-linux-x64.tar.gz";
-        sha512  = "afae1f5ab022b81636a0d6fe3956d491c3f28206f8177787013f309841dcb9f1134b33677a9cf3fd68a5c86cff7fcb0694eb597dc99a96dacd704e89120375a7";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/2fc0069c-e99a-4296-99ee-a422b3cf50de/df8aee91eeaf50a12c810c3845341eb3/aspnetcore-runtime-3.1.31-linux-x64.tar.gz";
+        sha512  = "9ea1fb4c9a656de8392b8f92c608c2f927fd03ad8e8b195f3f0b69c1433cfbf2679827b1ce2fac783f8ef77307c7b1b36563d0813f914b75b025b5cca6c773f9";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/4e1115da-a8e7-41b3-a5e7-54d8d0bf516f/e81152a855fa9ba69fa59c741fb4ef77/aspnetcore-runtime-3.1.30-linux-arm64.tar.gz";
-        sha512  = "327116926ed9d4a86664c6d3687d59261353639b67beafa8d451d8546eb800804ace64d40a05e14db5dc6ec638fc041efbd209ee58430fb539d02799c1a33c55";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/216fe20f-6c45-4a87-b206-6c22360567fd/902208836df9ddcf4eb177771b2c6fea/aspnetcore-runtime-3.1.31-linux-arm64.tar.gz";
+        sha512  = "970def9298bfe39c00054ae45231e2c632d4364a311349b3594bef5dd3739af2db33329f314f29a3956c271745948df88076e39bd2fa80e8a4dbb9723e3493ec";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/095f69b9-439e-4d3c-9927-c0bac5924730/f1d0b61643ae84745cf23de375eed37b/aspnetcore-runtime-3.1.30-osx-x64.tar.gz";
-        sha512  = "dd02798cff8ceea809789532584e104a8e06addbd7327cc35a2b220bee3ae92f8a8172d69208604682153131a4fc158fe860f2d4c62b1aaa120e832a4801cbe3";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/25282f2c-c43e-4c0f-aa09-f72c565e009e/b581cf1c97879ca4913a1763c7d1fe8d/aspnetcore-runtime-3.1.31-osx-x64.tar.gz";
+        sha512  = "25d395435ddc17b8155c6d9b06c6b280e462da3e86a8c2b0b0549cfb80d2770b0df33a0a87845b442e89295000a872fce12a5949b4f1b123f802e8e2d071d504";
       };
     };
   };
 
   runtime_3_1 = buildNetRuntime {
     inherit icu;
-    version = "3.1.30";
+    version = "3.1.31";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/9f6128a8-3962-4018-b9b0-9608b9aecec8/f46a672e0117d9128acdbc82cc314e20/dotnet-runtime-3.1.30-linux-x64.tar.gz";
-        sha512  = "febe026170101a4fd033a37395215c408fd0764786157c2cb70dc2ac8fd2f41e9e8659c3f8f9a034190b70df056ce9809abf083f59dded73d4cd5253dd0bac57";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/046afe25-7b88-48ad-a06c-1c3625115c63/6814f9ca777bc7e2cb4b373027dcdd76/dotnet-runtime-3.1.31-linux-x64.tar.gz";
+        sha512  = "fb2ac1a1e3b9b1eceb37587535d96a5a3c0b01edd07182ed57d4725e067678988a3fcdf22f3f49d21bc35760d69398af85a6449e6c3a8ed401ad85df920be4df";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/5400dc4c-6b15-4cab-b8cd-7ed7ea6f87bf/a409c6dbf2c866217cfc1ef4c449e30b/dotnet-runtime-3.1.30-linux-arm64.tar.gz";
-        sha512  = "e94b4f9dc1bae62f2577f5c6dada8ae111936eeb535010afb4d838c993b372be7dda2dfd84caf9e86d6b6a688757c63c18b73b547934023f058e5d75b099a912";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/dbdcd07a-e519-470a-a03e-702f4cbf65d7/e1bc1991aa91cc52582d446ae4b63691/dotnet-runtime-3.1.31-linux-arm64.tar.gz";
+        sha512  = "bb9594cdf3b1f8005005d12055fe5e1ae6ba40ed56c2f6f41e36b2c04c9a7fa4630da594c7d93fe587d75d9a00638818fb14228e188fb7f1b7b5eff96d53bc7f";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/9e891fa6-2faf-42ef-8331-dbffe526de7f/7b4b639d7bd08587ce0d0a2b90b6196e/dotnet-runtime-3.1.30-osx-x64.tar.gz";
-        sha512  = "43b8f60e9b963a673e0fdd4122a9b36ef54bacdcce7c396a61a99a969e18908bf63c4b092c0661d7ff17fbb138ee68b9d046c2c6e22886d3908c94cc08c35976";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/3a01bc5f-4deb-4cf5-bbdd-19a1dc406b2c/1c66b68807fe87cda620898c088000c4/dotnet-runtime-3.1.31-osx-x64.tar.gz";
+        sha512  = "8890441bd64911656e34a824f3d4abdbcbe4337887efc90fc8eba62189be161bcedd0d0f0e1168dadbc25bc616c462ab1c8499b9a52f05be19173f2af8ea09e7";
       };
     };
   };
 
   sdk_3_1 = buildNetSdk {
     inherit icu;
-    version = "3.1.424";
+    version = "3.1.425";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/28fd6fc0-f484-43d0-90cf-5e297a784e44/09c0612bb1cc46378546dfbdfd83014e/dotnet-sdk-3.1.424-linux-x64.tar.gz";
-        sha512  = "5f9fc353eb826c99952582a27b31c495a9cffae544fbb9b52752d2ff9ca0563876bbeab6dc8fe04366c23c783a82d080914ebc1f0c8d6d20c4f48983c303bf18";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c2574deb-9c23-4851-89bd-211243ecd85b/046fc7e68a8e7e6e5854fc0b3b56e59c/dotnet-sdk-3.1.425-linux-x64.tar.gz";
+        sha512  = "3d31c6bb578f668111d0f124db6a1222b5d186450380bfd4f42bc8030f156055b025697eabc8c2672791c96e247f6fc499ff0281388e452fcc16fbd1f8a36de1";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/dfe62f78-d4c1-4190-9d9d-44249e83a0c5/1fb0e84fb45e4e5d3207de6db85d99c3/dotnet-sdk-3.1.424-linux-arm64.tar.gz";
-        sha512  = "3bfd29233a3e0dfdbdc967f07808d4e239651f0f4f23f7c9e74f09271c9ded8044539ea4278bad070504ad782c4638a493bd9026ddbc97bbc657c5c12c27ccd2";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/d4a8d050-e3d0-4f07-b222-5cadb21320f2/05d4d832757a78ec88fb56d8f9f4cc65/dotnet-sdk-3.1.425-linux-arm64.tar.gz";
+        sha512  = "f3c18acc094c19f3887f6598c34c9a2e1cfa94055f77aa4deae7e51e8d760ca87af7185cc9ed102e08f04d35f9a558894f04f7a44fa56b91232ccc895f4e5a5c";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/32689e88-7340-47c7-8a67-d8e19a38c618/89d4815dfcc0c611cb0c599d0cefc71a/dotnet-sdk-3.1.424-osx-x64.tar.gz";
-        sha512  = "3e6bf0116afd20828c5b1420e70b5840df029f144ed7cfe8c133b02f43d7b2a5d17566e1815f166179f51299768d73bce43740f9862ac8384f2c8bd06e1b8d09";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/8d52dd3a-13f9-4b1e-ae1b-7afc8896bf08/f01ed5a9f1eb3d425daec9e900a334cf/dotnet-sdk-3.1.425-osx-x64.tar.gz";
+        sha512  = "dbe560c6d052333f2922c8337ca84cb4cd1de614de53be8bc3c52537c32bc4d074b8af832f5a1660bf0bc07204c74b3f0610a12ce6b192eae6503f76bb5ce40a";
       };
     };
     packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "3.1.30"; sha256 = "0m7kwk8nl9d6698y9598x3bp57m5gb6l7lc5mhws0sgd3ky1awgp"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "3.1.30"; sha256 = "1c9jr2pag5adwdz6j1b2jb8w47271zd2xzfqs3hiivrj4nh35l1g"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "3.1.30"; sha256 = "0jmgyl0kks2ichma2zbaj1x4j4bj20jn636z8vd1n46dlszas0gp"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "3.1.30"; sha256 = "0jgvzh8vzx4x6bx9xbd1h936p1kzr8pva9di4qwcwc8f7rb4wsjw"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "3.1.30"; sha256 = "156f18l9nk357slcfygdsy02xdvlgys0h6z94y8f2vs09vv7ifx1"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "3.1.30"; sha256 = "0j65fw8j3bzbj0f36yvr2l75j05zd22491w0aalhls950r6qzgzj"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "3.1.30"; sha256 = "1a3240apw4c8kz6xpy6749h2iks6fw9lcxzca53jx8c876grm5fx"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "3.1.30"; sha256 = "1s3w2lqhs7lcdqdhjdyh66cb0gpbi0qj3zln9l0g0zcl6imlrcf2"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "3.1.30"; sha256 = "0q650j7bp0f3aqsdw6imvdkbxwvad2lridwxd87xw3i1mn56gk1n"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "3.1.30"; sha256 = "0a6jz0larf8dasqfhi51lgfk94nc7ak1nvvhf8mpfrwfb1nqigcq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "3.1.30"; sha256 = "1zwsywsmpv1zc9wm4p46wvhsw2qx3imwnr3rky1p7mbb8azrjqxl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "3.1.30"; sha256 = "1v687i04v3xa1by0011qhb32i6rr6ibidsgyx21s1mwblzh6kibd"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "3.1.30"; sha256 = "1qc3ghz737hbrrkb5cpjiz6cvm5nwylaz5jnkxy2i7i9gwaagjjl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "3.1.30"; sha256 = "1mzkbg5x8flgc2kvhdli6i2mxd9nifv8axf5g9kvg4qmj61i0ddc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "3.1.30"; sha256 = "0rsn6mrkvpg82089i8f7wkzhb57vzyrz502s2sfl5yknhnf40sx9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "3.1.30"; sha256 = "1fm9z02y15y64kswn2khc5gb428bm27i5jsdmap333q1ai712ba7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "3.1.30"; sha256 = "0dykzasg077zwzimc6r7j1df8awnjksfssir1a1dlh2wxbch5x67"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "3.1.30"; sha256 = "104xr70jx28j45l43mq8smr3ndjcvyfl77jw9pzs8phfc30fh0sx"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "3.1.30"; sha256 = "1c8s21gh3igxw0wsnw1zx41d8winfy0l5f9l33mgm87l8bkdld5p"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "3.1.30"; sha256 = "1n7az6x692aw6ng1pank1snm1r1s4v2cx20bchz2anbp68yi6g07"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "3.1.30"; sha256 = "0fnlipf0n677p8cfm503ywr59cchl9jf8044ndyr1j55zdbzlq2k"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "3.1.30"; sha256 = "16vjwadxwvg109f6q816dni09r3i77g9z32x4m4nn6bahb6bm1lr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "3.1.30"; sha256 = "13ij3qycqvapnc70a8g1grd7c9jv7ps0r96cb7lvyfvz2yb5x1w7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "3.1.30"; sha256 = "0fhj8s8z4khxkvicabhbs9ilrwn3v73xp12zlm3ba9pi4nnlja8s"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "3.1.30"; sha256 = "0b0zxdviryp6gl7nik3mivx9wq6xmwrk9vbbjw0fnjwwmiy5ms6z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "3.1.30"; sha256 = "1vxd0n05ai00rxzcxnix9w6wqxxdadscamqkxhy79pj8n782gp0b"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "3.1.30"; sha256 = "1lrm0sa030i5cqggl0n89q5a878qiilgpp8in6z4p7fwkhama7yl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "3.1.30"; sha256 = "0bapgpqm1n7wasffr5qb2rk01xi0j51xfg4dhjk0f9zv080lrv52"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "3.1.30"; sha256 = "0qhzz0g6ymlrdx27w0a87caa44fcvi2nq8glgb2x6lphpwm78q7c"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "3.1.30"; sha256 = "1379znk80lkvrlqrnxp6r4b6487pn575d1kw6p250av22qxwx8vy"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "1vwmkxxjvbi3sk219lg9ha8vxv6gnn9pqs4nlmzdd03p9pafphvb"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "0h6isr6kwf70cyn75dkn59bwzizmbvmlpsr8rqa4vxank28f6zaz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0j1bm6f4m8l4qi65yf0kjq5zb28mx02q3xqsmy6jqqkwvqp2n5cw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "0glsj3hs22h4jhpd3cx0jr1qzf8akjdqqjb5sb1k0a5zzk2f59r3"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "14fzkyzb6wdk2j6jzsr7ilnlwrlyybx8cf7b4lf9whj98rlch7lf"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "0ag0nmwpwh1pjmc32b7i6pdsvmgrjg09ns175s5hik9gcl77016j"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "1h0mhj1qp76hb59sx4hhlc5x4m8hhqpcl0lza2czdwp9ki1zyvpm"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "1i7nqxz6f23xph734ylaa7zwaa4xj2hfg50q1dfr6ia8ywnkcnz4"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "06ch8vaysrls4k8ainpinww3i46y63p98qhy0i01f3by59iz52gw"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "1vwcffg9627l6j7bfgrvkzxwf44lbwk86yfnh6z0hgjx50f4gmx3"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0myr6yzjadih70wf4hbqxr94cppnx877825hfqc7pjhpxkj0hslr"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "051rngyjkk835fq50f336pcvh02ya3hs1drcrz20iic3l4akbj5y"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "0hhfizvmxj011pdwsb7837z8cxd4knm4lmq63m3zg6xackbmacvn"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "1sjkgpiwbg39vypvk2yldkxpjdbn0mwnsk7mwcdpq4g5294v0ag9"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "1hcf4a79ngfjy8dv9bpha9m50j3disyfrd5qmgjkrwwkvp8l1qgc"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "081hqdj3qwa3bijlxizr8988nsf3mkd4xl4x8rxbi3z68d4d0yiq"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "0r1hq4psfjs9zh19hiz03dcx7bxbc8fyv3jc4cgy5czdl0diyhq8"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "13gzg16zmaq9n2dqllksi68dfvary72rdqs95aq4zargji59h4xl"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0565lxbq9jz8n4z0q5pfbibfwixv1nqnhv8d8k5zm4xqxyxrrsi4"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "06f66vwwbav8pvm1kylfhvvzq7kjs888wycsv49cl9h48bzygll9"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "1lxh2gw6rc80g458cbfcvwr38xa012q5pgvr464qjcx902p1z9gj"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "10x928nmvsvsm30ma6jps5wz42hyfvih71ch1sbjhymxcgyqc2rq"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0q7sv59f44bsyjc1sg4c7s587d1k9slk09gf6fh06zl1xqyrdi1f"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "0q9g8p8jwscvc1l3l944dscgvmxgxprjv138gjvw1ykg8q6hhqb3"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "1gnc1dlc4lnnqbna3pzp7a1zrrvbv13hj4pxvncb92aid1dznri3"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "1gy39l2nixwby853sk8ng9cc17lc3msw0ap937v7wkqqvgkvrzgx"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "168szn1y403vzzc3fg3a79aqfzsxxyxl8sarfllk2f6hcqn1piaf"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "0s742k62nll49r7xmzq7fng6dzqgzvgqx7hqgby77kq2a6cv0735"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "1zpdzbvmxfqv2zps86fxa350bj2y2vjydy2gwm6ghdq5yn3jg7y5"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "0vygl1iicns07862ch8yxv2z6nsv31ndwcn2qz8qp52xsy6qbfgh"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "02zfw7gzk309avrpkj00ykg7by37f594fwmkgkycd0iz1xy2l4xd"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "12aq86vfjkwvxk81lnd77v2h4ndjpi21mkyagg01pdfhixbapdq2"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "1fp1jr9l9fhr0vmw98j45r1b4xbxhds55r09lmd3hx0wamxa7qxz"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "149vmmcc7v0xf78qkipch84v00lywgf0dwgqw3ghl1rpqndqq3wa"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "1f6924670aw19hmw209iagjfny5p3kpi95z3j3crd0jkk2bgxv90"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "1wg52hjh95yjnd1fk2mnlyl66dhcqr3f8lqi699sq7fk8ffbs2az"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "0g5pbvw63c48djybdpq638hgr421c5b1bjfk2c0c0ic8aw3qajh3"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "196hcvpb5xw97589f45xb4wa3pzmzhxhw9flgaiifp4z97xjfnp6"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0grh28f4w854i8pxmcslwknwz6wxs9v31i6dnzlrz2m6f2rqgrnk"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "0nqr5ws3jqniv7s9np91gnyvl2n3334sky7i8p1v71r5ypp4p5kd"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "3.1.30"; sha256 = "16fwvp6c04x3p05flwvnwa8najginhyxn9q57ml4pfya7b879nb9"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "3.1.30"; sha256 = "1v3qki82flkpxmxml2n4a91mjz2x107rf4zcidslpf09ym95rv36"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.30"; sha256 = "0wf7l5kp5njpszk6xrkbh4kr13rdvdfiblqrhdx0xqyzxmi36g2h"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.30"; sha256 = "108iv13yh640gjx7hvwb2617cn71rgkl7g953mniwpdhisaikz43"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "3.1.31"; sha256 = "0s8rnj81b04w1lbgwirsv9xzmpkx9ffr8wyzgwwyvb2y2r39w6pg"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "3.1.31"; sha256 = "12w3gka0k2z309jaxwhrqlhjfhag0pn26k44528k6039r5vrc62r"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "3.1.31"; sha256 = "1gbiwdhsfns4pkcpvl1kdpzynkplal0binfawxhzx0mjp66447rf"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "3.1.31"; sha256 = "1k5zjvak7pp4rzcv3p4jp2ic23xyk89342mna3i9kp20qn4c36mv"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "3.1.31"; sha256 = "0kilp89vmcqs6yznvx2wpxafhpjbzybrvdbfqpmlxjbbbbsgfi7v"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "3.1.31"; sha256 = "021a8xn4haa8vha9ypvldnmp8v519snjm9za67vscd2kkvifcxnl"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "3.1.31"; sha256 = "1qmd1zx54khnsqwrlq76m70xbw6dv1qrz3f9nva89prjgkqmqag4"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "3.1.31"; sha256 = "0dm0prvl1qsws22rwgkbdbb8jkgvgxw8zf88rf7rw3xp1dnhql74"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "3.1.31"; sha256 = "1i6ldw55wqck3nxh9bpw0czv2y7zqbckxky8ih1r35nf08yw6dld"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "3.1.31"; sha256 = "0pyssa4mhm3ik9w261kkmnhxri4l6kli20qg3fmfp5rb9yp99faz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "3.1.31"; sha256 = "14hrfingvks7x5y796dsfkhpjp4zszv7gvmd4ycczjfhrywfxzis"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "3.1.31"; sha256 = "1savp0v2b63sj6qj4qq30vbjgx8bynvvgadmgbgj42sk2p6sgll9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "3.1.31"; sha256 = "13plrsf4bgdqv5v8jha1n2jz0nj7jdggjpc7w7ipc3gxw42w0z1a"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "3.1.31"; sha256 = "1r59z5nwdxrwsqy2k4bvisqs2q0chr6wv9kxgsniqsz26vdp163w"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "3.1.31"; sha256 = "176575973yg2b6ls2c02ysb101xxamlgqkrbxhgbdkfh4w5clf6k"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "3.1.31"; sha256 = "0nvirb5hfk0swxm92isg3r9czcbsa95lb071k3adfqw7lfz8mqzz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "3.1.31"; sha256 = "09akjvppv6xvg3yyc84jx0yrcxn3kfg27vls71zxa539yvjkh29d"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "3.1.31"; sha256 = "03dsvrfb3jyrfril4d6w9z25rgl7ldbiqab5n6s7fjajz6qpmgj8"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "3.1.31"; sha256 = "0j2p5110qagrl5lb1j6zll9h0x3d17ad7r2h89ndjfrzs8awj9sp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "3.1.31"; sha256 = "1s5fkl5102ar9kl6w5nibkc71q49yx9jdqr5dgx8zmh88klaqc6s"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "3.1.31"; sha256 = "1p74kp59a6f8gvnkqvl9qfgav08lisjdsi882i4dpipxmsizbvn6"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "3.1.31"; sha256 = "00vlrk33nrxdjvjxrb1ck5hxv8ybjwscx9v3y3vnffias9dmg5dc"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "3.1.31"; sha256 = "037npznm0b3i4dl5ciif0l2cx98b4010633xjsahyfsnzszz6rxb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "3.1.31"; sha256 = "0626jfv9f0rbqp25x8sqdjcpqbbrr0mn7zlggz8lzkdfw3nj91pm"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "3.1.31"; sha256 = "1rnvh65wav9ah7qs5a5anqb35z04wqp2lf1awzmam4jsmfqd666x"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "3.1.31"; sha256 = "0zgwx8yl2y7hdc0xdlbmni55gq2fl1ni8xhdzknzyz5pwzr5fghl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "3.1.31"; sha256 = "1n85hrndj8kb9hi95jb7mfd197d17a79gl9mzv0xfb4zwfd3jb26"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "3.1.31"; sha256 = "19ssb0366lcs8w3wfq7nvbc2ja8530vfhps7yrwy3j46p2jl0x1m"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "3.1.31"; sha256 = "1i2das9gpk6lbvc4bjaarrgrmk29086zpqxkasgswqd17kdvpyfq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "3.1.31"; sha256 = "0s2x3ybfkj65p9b5wm0bvn2gfj442ylc44hbp2r4zgxabq0lghh4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0j31jicc7107wfims5f7sgwi97vywcmdrqc7y6qc5gkc2djqbslr"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0afclz46pdy9pbfjzlg9vkyyacy8ymmsq3jp6r161x0d5k2444vw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "0c7yhq57gy004k6fhsl3adb9nqz8cn019dy9gaddp6qlkiidirg9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "01qirfj6ydwyasr7ggbhymv8c9bmk61vl44cdz9xq8cfvd6yq5bl"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "00x9ldx2906b2z35diihb7z8q5a3a537rak1yyif27pw5s20s6iw"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0kpnlygnah6761iiqsdixzgb1sgfrvsqv0jjraz8bdda1778f22d"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1y9w7yzq47sd9i1wz1hl91s3yzz6vlhb3acwm58yv91r73h6dgy2"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "0fpqmin2mx99ndzzf2l633dlq8xxwgnn7qws3rcsn6kid7hn1kw3"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "02hyzxi4414z1clxhfni5x9dwmih5aww9wpcv8vjp9r33xigi6d9"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0mi3rwjjsgrr8c5yci1sg1yg57f8vhmmcdcyr9zsgwnq8rwrqn91"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1xbxgsi75xg0yrrpymkvh7fplrrrlw8k47knbgh8824bd7hvdq1b"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "0r12z7z5pkwcjm1zq6dav3axnahl9nvp72lg4a6ds39jz6a94mds"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "15vann79nyz4iayx10gcqwlf0frqqsmw26v9xakfbckha4pjhy1x"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "13j2graqr5a5jimvzsvd1i5cnnmrzqxfcvax8r385gbav0xr0d0s"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "0v6h1rj25i0cpvk78845wzxa4yffwjcnqkhpwdafj8glac633242"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "0qbn4zzx8fxap4546y3i5zwl6rv0rfdphkns4gmh1fjnkfb7zvjw"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "1ix4w2v5ajq6c4n6l7jrjxky7mx9lynsarfx0byxj4x5qlps1z56"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "1bkvz6n741dgrh9q57db9jdnlgccp9gcsivw8555n4zqkwx3bwkc"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "0zfhjqya1lnqz1zd9pw9c9w6ldvv8hgg76rh3qaxwfgmnp808vn0"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "1fx08byahkjv797jnql3c7j9ldgb2w4pm9vhb326mpna28x3qgmm"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0m339qyn21782x2fr73bbxk6aa6dngfav0aqlpbx1gpr0k6xb26b"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "1wwnzqb9xjadkgz4h6fmi7n0prp8v56cjfx1si79v96f3l9qrasd"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "0zwvrnqn4w38xgall1791msd9z0nr9xv6rk2xy6i1qbkavz4fn8p"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "0dyvsidj5g6rj0khakzimzn193vkgzzciyfs6jqa03mp99zvdl8p"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0ch5a8xpw89maq8lhncwp1izy16mwpjn1x60bfhzyskib9w931vw"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0zxfclfjjcxr33ialjxwihpxvp28by1zrv6cmja0jp71kr882lq1"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1is7azrlb222wfljhhnrwyhmrrc16d5hy8dadrx3s3h73bnmfl7g"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "101ws6l12rcf08r80d02bya2wmwsaajnhvl4bjprakfiy4pz4laz"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0k4fx1bnkh3420234pnqm227l30rih8s9ld0zpb7rzpby14dclar"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "1lsf021hw8ikwic1wdv0r1sdm4bypia9xcl7j01mllihs1idkadb"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1ccf8zdc1h6ri79qhj7gnclw7pyi08qa5kb2fr0m26zdd8xsgqbb"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "19ffjzqvdfmz5pfrk5pya2wvw6734mn5dg424sxgpbr1228bayai"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0pra9gpjlndzh8hhjpxsqjl2awqb7lkp868jiljbv7a0hhrj7aiq"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0yj7lw8w74cfc2q2dsz1qhqdw9glxs6narsqk48r80ahfvrbc5kr"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1mh44i5b204q8kf70ywvhgggqf68b48j9y0d06wvzadnswakqd56"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "11rysifqiysmajaipjg3hcrp3glwf6zg6ijvld0nsxwf3w4pxlvj"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "15hz945p1wr4j9b7qp2vqwd5mah464l938d14ldckhjr3di5c6si"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "0y7mqvxyhhannk11ky2i4gr60wcxaybv3ni4y7ydfd31k2baywf3"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "1njd0xvn780rg2jvlyvsw7kaxi80qfx1crhsbihhgjnjx4199vgn"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "162589081jp4nn8f2cq2d8mnzppmdw1zclnd66ablxm4dwz2xrij"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "3.1.31"; sha256 = "0nnd9kcz05j83qyyz9xbsyxmc6x872ai4bc45ificxh0rqa7zk9n"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "3.1.31"; sha256 = "1s5p5iby2866zzfmzd0x35aclgzmdmghp9yqn5am7bklhza4dls8"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "3.1.31"; sha256 = "0h1nhmmjs55alphb1x51namkaivr64611bn0080hi3kizrmiwnxf"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "3.1.31"; sha256 = "0sijpj15qjamyc9s8rxbqazi469525fzc7q81v9jw866x4laj4ms"; })
     ];
   };
 }
diff --git a/pkgs/development/compilers/dotnet/versions/6.0.nix b/pkgs/development/compilers/dotnet/versions/6.0.nix
index c39bfb246c90b..69d94b1d6916d 100644
--- a/pkgs/development/compilers/dotnet/versions/6.0.nix
+++ b/pkgs/development/compilers/dotnet/versions/6.0.nix
@@ -4,171 +4,171 @@
 {
   aspnetcore_6_0 = buildAspNetCore {
     inherit icu;
-    version = "6.0.10";
+    version = "6.0.11";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/7d44ddeb-ad35-41a8-a581-03b151afbd80/6888586c28836b1e1f71df879184550b/aspnetcore-runtime-6.0.10-linux-x64.tar.gz";
-        sha512  = "85fd0e7e8bcf371fe3234b46089382fae7418930daec8c5232347c08ebd44542924eaf628264335473467066512df36c3213949e56f0d0dae4cf387f2c5c6d0c";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/0a17a9f6-7705-4b47-aead-c0b582cad317/158b62e5183281e416994d56ce81bc0c/aspnetcore-runtime-6.0.11-linux-x64.tar.gz";
+        sha512  = "12a30719aacd5b3dd444d075c13966a4bb1dc149c36bcbc0e685730f08d1c75eb3929749b89a88569ddb48bd8104db84aaee2ee097ac3a5fe6fff60c9f09f741";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/c37e7250-886d-47e1-840e-fc0ae2aad195/81f019f66f158b7ccb3511d2fa5dec53/aspnetcore-runtime-6.0.10-linux-arm64.tar.gz";
-        sha512  = "254796814f5810c416361046aada833a151c946b0dda12d10d1ac792db8528b64eed4bb8195d99081639f22b2114489df0d4bae20da3fe6c63987cafe0349b2d";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e25f7ff2-9932-41dd-b549-5b4409b5a727/d00786aeabad50cd661e959a576f8777/aspnetcore-runtime-6.0.11-linux-arm64.tar.gz";
+        sha512  = "cf2a469cc2364358e0cd51640e9a614747e60724a99d5151dbd346eaad3779939f741f0cd0a752774a6df51c3e2af5a49ba8e4c5ba7ac02eda192cb7b73d85f7";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/38af6f1b-7b6b-40dc-8f0c-1f2025bea76e/795b0e4dff571fc01702d9cfbad359c0/aspnetcore-runtime-6.0.10-osx-x64.tar.gz";
-        sha512  = "9449b3f71813d2af75c3e2439aa22a639140f0c3f58c0e55fd1d66d660a603fb71f9f538d48087c113301d30f373be7aa8683e79af66427d3c70bc1713ae305c";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/16a48ca7-a75f-48bf-a513-ce5721debde1/b55c60cfbac77c576fb0161a4d4ad8af/aspnetcore-runtime-6.0.11-osx-x64.tar.gz";
+        sha512  = "cc5d76404fd1a352404597cfa36def6c06018aac9f53c938d96264fa057534364057531d91c8b0ecfb2aed6c2816ce32c0a67bcae39da241c3ee36cdd35ebe9c";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/49c2a919-5162-4314-9010-a8da201e965e/f346ee2fc7ff046045edcca0778c625c/aspnetcore-runtime-6.0.10-osx-arm64.tar.gz";
-        sha512  = "549745d9d41329f12572025317ad40addd00bce64cf15181df5c0c5f5b29c96830397cf97eec315770c8e1b7dfce5909368b213b359f465d679390a0b741a021";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4bb8e524-4a1c-403b-adef-362e13b22fcf/6304e6772640e07412ccfb9a0a5ec58a/aspnetcore-runtime-6.0.11-osx-arm64.tar.gz";
+        sha512  = "e52add6045fd30482d3ba1703b41d354f38661ac9f88b1b70aa31d4ff5bc685b8767579b172519a4471beaa3cfdb346f46298da369a5714923937f1af03e353c";
       };
     };
   };
 
   runtime_6_0 = buildNetRuntime {
     inherit icu;
-    version = "6.0.10";
+    version = "6.0.11";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/48fbc600-8228-424e-aaed-52b7e601c277/c493b8ac4629341f1e5acc4ff515fead/dotnet-runtime-6.0.10-linux-x64.tar.gz";
-        sha512  = "8a074c93845416f69f035f2d0e16251dd2bd5abcdfcb7863afd59a5ddc78fa03aede8f79b42c7ca857fc19c8dea53d43da4e4a311f35f6f2eaf9fd64afc8f9e4";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/367108bb-8782-4f0b-839d-c98191b7729a/94185f91ef33890816a5846a374b74b7/dotnet-runtime-6.0.11-linux-x64.tar.gz";
+        sha512  = "9462d73fd3f72efaa2fb4aa472055f388da4915e75cfc123298b3494f1dfd8d48c44bfa6cd5c41678ab7353d9085d05dd7f1fee0eef20c11742446e3591e45df";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/21bc0b9c-669f-4d59-9e6b-d16d1917afc0/fd3fce1337cef07b2e3763d754becb05/dotnet-runtime-6.0.10-linux-arm64.tar.gz";
-        sha512  = "94d182d2d80f3cc9caabbd12e3afeef4af93269a331b64276985496e4a77040785c25b85c58cfc8093f4199e8c6da6de8128157dadfed41c82d991f57df7afdd";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/b02be36b-8470-4b81-8254-1f957ce8f397/fd6aa0da17fc51c1b57b2d96aa792c1a/dotnet-runtime-6.0.11-linux-arm64.tar.gz";
+        sha512  = "c889e70ea0b2224eb9163cca6a57cbbbbb8213a551770dc5c9f08d8d49fec1f38ac4802435cc9509baa03970823666fe1dd80621e6ee8592c27b7e639643e5d3";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/f088e65a-26aa-4da3-a3e5-b4e7e419add8/79a7a79a56eeb08b0646f34952a00091/dotnet-runtime-6.0.10-osx-x64.tar.gz";
-        sha512  = "dbd077f32b2fe22a6672f702f42b1f0af963082d9e4f4907d60951b16b70fc9827ba29773728870b1d59c9c538cbf4092fc823641677da96476059dcace57d5c";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c9bd7b7d-8dbd-4486-b3a6-d3bd29e9efc1/4b2debd5a8aa0812cbe19cc6cae26066/dotnet-runtime-6.0.11-osx-x64.tar.gz";
+        sha512  = "d8df6aee071b9c59672df6c67cb56c87796d9204a5fb044bd9e7a6fc7d5f83c84e0ee5ec871d57f38a226f57c70d18e52cb35a6520d26d94b335c97a860e6c01";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/f48a8f09-4b5a-40b4-ac4d-197d6ac53038/3cdc2003e07ccf4b22e9bf9a0313a5dc/dotnet-runtime-6.0.10-osx-arm64.tar.gz";
-        sha512  = "0b9eef6d820b86b64969de1d45b8201fded72b4a6339883c3f7180c1a97b19e1962cfe8664c7868fd1a20998deba7cb00f8f35f6b2d6ff6d414f1cc4ff2fcf07";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/6fde4997-8628-4666-8281-6aef1322cda3/f9ead70f42ef845bbc5c17d53b174931/dotnet-runtime-6.0.11-osx-arm64.tar.gz";
+        sha512  = "0fe0a7f88a1c99b682a0f60d60d6d1954b9ce185450fc21e3700f1e0b2b1b58ae7412cd43636bc7e7ef9d1412d38661df772c946524c5659d05b8945fdfb468d";
       };
     };
   };
 
   sdk_6_0 = buildNetSdk {
     inherit icu;
-    version = "6.0.402";
+    version = "6.0.403";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/d3e46476-4494-41b7-a628-c517794c5a6a/6066215f6c0a18b070e8e6e8b715de0b/dotnet-sdk-6.0.402-linux-x64.tar.gz";
-        sha512  = "972c2d9fff6a09ef8f2e6bbaa36ae5869f4f7f509ae5d28c4611532eb34be10c629af98cdf211d86dc4bc6edebb04a2672a97f78c3e0f2ff267017f8c9c59d4e";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/1d2007d3-da35-48ad-80cc-a39cbc726908/1f3555baa8b14c3327bb4eaa570d7d07/dotnet-sdk-6.0.403-linux-x64.tar.gz";
+        sha512  = "779b3e24a889dbb517e5ff5359dab45dd3296160e4cb5592e6e41ea15cbf87279f08405febf07517aa02351f953b603e59648550a096eefcb0a20fdaf03fadde";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/234daf6a-5e12-4fa3-a73b-b12db44a3154/df7c012e5e4e2cc510de9226425dad88/dotnet-sdk-6.0.402-linux-arm64.tar.gz";
-        sha512  = "2f5351192e87c2dd196d975e7618bd7b0b542034d0b1bc932fe944d8cbabb0ed2599e98e88d9757e68f198559961ab3350d8eddfacc2951df00fbf6a7e44f244";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/67ca3f83-3769-4cd8-882a-27ab0c191784/bf631a0229827de92f5c026055218cc0/dotnet-sdk-6.0.403-linux-arm64.tar.gz";
+        sha512  = "fe62f6eca80acb6774f0a80c472dd02851d88f7ec09cc7f1cadd9981ec0ee1ceb87224911fc0c544cb932c7f5a91c66471a0458b50f85c899154bc8c3605a88e";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/2601dfcb-7d2f-4186-9a08-d121e63a06dd/cd89903b769b1d6e3bdc1e7cd5fcc19a/dotnet-sdk-6.0.402-osx-x64.tar.gz";
-        sha512  = "b6cbb3fefdb43282f83f69cf5a7c4cc9f74bf64f1008a4a33368cf9ee1d5fa186e324549005942c1ec48778efc2ba0b33a19b5b802920c84aa636b663697cf6b";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/fdbd3d94-ea79-44c9-bf84-ca161871ee50/6e4b47c4926e30251a178014fe3da399/dotnet-sdk-6.0.403-osx-x64.tar.gz";
+        sha512  = "8a8b6f86f09d0c5a8dbc35f6adbb14cbb2ed10d1bcee0a15e717a416c759f824b2453fab0b76e0826c149612fe2fb8bdfc3f8827383dd3f8f01ef5497b85d589";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/8857cf39-5c46-413c-875b-e091f4b00c9b/19f79f518af3e91ddce328db7f4e1910/dotnet-sdk-6.0.402-osx-arm64.tar.gz";
-        sha512  = "e9e73aa815f4af93ba7325c2904c191bb731b5a4048db2529da7b2472f1a140603f22d2a7d4e35b2f301d046388109116af2c9efb33e1ece43fe39cb96b83d48";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e825e710-a4ac-4bf8-9777-36aaed9ba8fc/1dbf807664c030ffe386453ed35030fb/dotnet-sdk-6.0.403-osx-arm64.tar.gz";
+        sha512  = "1210ec9341f7ce192b2a006b1e5d98385e1108d016b0db3c6eb5ac5a1ecd6c9384fe26b62363d3a885e5ba26ec50cbe483970563e897bbb274568990aa43810b";
       };
     };
     packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.10"; sha256 = "12i4im5jywy06bprfifckkp9f0clyygms97xkmy5m1cjapsbzcb0"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.10"; sha256 = "0ry6pcngzdj7b3cw2khj01z6fbam6x6qkvdvcx3dwvgs6ab77207"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "6.0.10"; sha256 = "1jlfqh0x19m2pafnr3qw9x2zrfy3pnzfxn4k66hlld51jxhc6v0z"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "6.0.10"; sha256 = "0ycx91kd8bzvwzqdzj58s5krqv6dwb9w6xi0gaf99mmg8086rb5f"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.10"; sha256 = "17wjr04wqjnc6cvc7fw4a2m1a27mn51j0hzbw4906x98b1bn2cs0"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.10"; sha256 = "174mdikwjda35x63x6rc89mx7knqp3z6g2vb00qxa166vfny70nv"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "6.0.10"; sha256 = "1zjj9yp9frij2zwwqvjqhb09xfampwf5y9winldcbbajf7riw8p7"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "6.0.10"; sha256 = "0n62h1kqj419497vpfibf0rixsm6mylxwvbrbmhmzhd1g0w4z1k4"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.10"; sha256 = "1ddjwdw6r6zd657f87mr2mkg79x3h8sc0yd3a3ddmhsyma6vr37k"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "6.0.10"; sha256 = "0chjqx49w4c80fbs8p4his64ys0lldwzyanlc2808m8n3g7bdg4h"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.10"; sha256 = "15al7gj48b4rm8rkn0kh3b5lmqgqzy9pr10jvcn30rlbn6j1jhsd"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "6.0.10"; sha256 = "1x4qpxf5vv99mnkzcv6yjlrfy5lkqyk934f4566sps6xiiq2q27s"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.10"; sha256 = "0ln1724g8lhpljhznflr9xm2xz5plngrsd7l6i0q9zailgywbs3h"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.10"; sha256 = "0cf7456qbakq045if42dsd9yxc47svc3gd5dbq3i4na21inyg0ib"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.10"; sha256 = "1k5zyzqhd7jkx34s8fnix5gr6nnc1ppckdibz14ixlhghzjhlp9h"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "6.0.10"; sha256 = "0fn9asxpjirzvsd6l6v7jq2bxq1a7wn2d6bzc8rln11is3xxlw67"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "6.0.10"; sha256 = "0nvddg4lvk2qgwpggbgm1di33b6lcvj722ww5ra2naksznhhbqpp"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.10"; sha256 = "06fkh8sbkypccjnp6kxkmkywq6aik5xssrc6910lk7kfiyidri0k"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.10"; sha256 = "0kvsm4j3l5ldv8zdwhigfn7yzmlhfm8yhqbvr05j6gvfqjx924vs"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "6.0.10"; sha256 = "0gk08p2fg00vl8jm28hmrvm5yvrzk171f9zxbp3fwf3i8az2yxcq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "6.0.10"; sha256 = "137i5xl1zcawpvxha4837j6nmkv0ffs3f3693s6v7zlsym23zdqz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.10"; sha256 = "0079z39n0n20kmzsvwg6znjvkh4aailg6a0qqy2dpr8bqqjqbg8k"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "6.0.10"; sha256 = "0wh6npbflgh1dyxdp9n4dmd5h585maj4sg19dffb5km275bpsmrw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.10"; sha256 = "04lx2hj114wissij56zywcb3f0n9vkm3gsjbdvvz4dqbvmg34mi8"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.10"; sha256 = "1h7b172ng7770gabb9h9xb6c0crrbnllsjbwqr7hh1dmffl9r4yc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "6.0.10"; sha256 = "1iymv6bxqrwp38pygqq05zkc53brzk3767wkv03gpxmva59qmjc4"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "6.0.10"; sha256 = "0k9cn8vnjdpip8rrqg30kjsqpmcqycm4ixy1z3ygbn3drf6h96zx"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.10"; sha256 = "0csyazxrnsvi200mqh22326idg85qzcfr2xvp3xa9gd04ihs708i"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.10"; sha256 = "1glgsfrdw0309x613px0ad7pig6mx4s84pgl8vr8yg6qgfhp9xd6"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "6.0.10"; sha256 = "10ry5mnsrp13nvkpc4r34f5yx2lximnns9si56frd5igky4z3nhc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "6.0.10"; sha256 = "1s37k7sfk9wnffcms4rh2vmcywzhaywvxkn19bp2vgbb6qsfynra"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.10"; sha256 = "1l3gskn49lggysr7500jyrnfvr1d39x83skx2sccqpql5f31gg5g"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "6.0.10"; sha256 = "08nld3092zj8fqwdvnmmaysyjmm6xnw1ixnis2cr770fh2vgnrqc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1vv0ivfjrvlcrsjpdx3piw5dzjdyw6qa9gfnwswrrf4bglmhjg7i"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "0881cil3p9jnfx7gpwkdxz65c5kiapym9f32fpphc7vzfg3jqpgx"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "085j91gm8g5smxapa4228k6492yz7yj5g38fdq3pljvw8zknhpwk"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0k8j74qg4mdmk4cwdxdp3vrdwwsmxx7r35mqff4ig1sd4vnqxh2l"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1b5yl53hrinngms1ry87z1aqv9v68nkiqqqipj4020p41014pga3"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "0hidhhhshsz460h4nyx0h3kcfvck4jx4axf9mv8awbkb1lxvy44p"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "0bi9f2sv2zjkkqyfd7sw7yl0gdkyla6r3f9synzg6nhl8wplnkvm"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0jdfpipkrdw6d9z035k1ikrq5cxfrnw4fvjxkak00x5c24dalmwk"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1a6w2gfk0v56hm897w393r4yv4wka1zaxaavj78yy130y6rzvrg0"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "171lskfgrqvgbfm8pbf60mqia9m6v67msxcy5ibkjzcf8n4v1yqf"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "0sjmi4fkbhp7z40l7cjl956vha4428nafzjd7sx7a6yp0jiig9s6"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0ya56k47xk3gscx025kidnqp4f9hwbzrw680fa2kdvnmjwd9j87d"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "11hac6qqwsrvbrq2r1ixmxqza1w84kdq6wmiq3qd7nsc5jq953zg"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "18vhx34465xbs6ivkafpd1zhz2a81zifkfcdwzw09zfcj023m8hg"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "0cnk3j1vy9sr876jm5l8f2bjxx4fhva9n6g0rv4zly5p21g865fr"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0z1i89r0dyj6hizx7w6v7dd0rx2wg2ss2jzk9c1ajd93jq19sbf1"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1vk6dp7syp471kwmf26hk4x35a5x5fp86wgan8gqnlfl2dvx48cf"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "1zyz1brv0ynqi7mvik32lcr4z1fs6gf5hl6nwv7ajz2kgdxpyv1d"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "1dxn703vzaiz42dligk28517z4444mkfjzx52jafxfpxx7dnrg4j"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "1nanrnflwbfvy5b3h3mqq07p19zwc8a7x5qgar8xwadlg933c7jq"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1dwp3a4qj2wqaxg1ql8asxgqjj5rfw4721x94a4i0xp7kj8ml33j"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "1lay1lkdyb409afs73pq5nj189lbj2agk3icspliv9a67bsy93zd"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "1pyr42lk8l7crissswxscd69vymv9yr3dmzxf93g01ah436j3js5"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0yg79plw57af4jwpg02d6mi90nhxwhxlrdbpr07m65rqfljcmk3q"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1k6v0z6i1k25ngrv0xrb0fa6m62ghxnv1xq8k2p7w063b08v5qdb"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "1mcdpdxvlrag4hyl9z0yvbb0a8rmwnvbvn2877466k2zdp00cpam"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "05nygdw5dkl3y3jbvsa5p2lw6s07npz6ac7jvs4sq6h56qi69vic"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0m4jzs80c3253wqb341k9vcsxsd7kf4cg5aqgpivpl0xl44w506b"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1j07ibnkvxqqy0wn0xlzib9rx5qv8agznl8z7iplvw73bpka189d"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "0l092p9myf711wdzglrifd1mxvn5kcclcz4spb7n47bazxayk5xm"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "156bnrc9ay7f7xllyh7456nyx9wqn03hasyph1m9z47wg9rfrszb"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "1mjwjj8y0qjgqpmhivpzlx0m2rq1llrdc2crg630mcny6bmxw5aq"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "0hy4sqp66ywhc06s4iviymibia9950n2zjxzqnqgrcq9am10x1nz"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "1297ildclz82aczk92q5raab61g0vaak65yx54w7kg5fd2py9aay"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "18sd8j73ms5488ik9ysg4qdmm2zgqpry3cn8ca5cpbpwqhqk4gbq"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0lb5v7zf9x2hbcvvv5wc13b85jqjjvza42pqa2v5bpj81qy5zyrl"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1x47nr7vyrm8jw4ydr7affd92im4m22i35mp2ab4j4zsls9yppcy"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "0993w6b3svwjf0w05v53xb9xzjndmm66zyg2m3rs12i26blisbfc"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "1ygp3nnjzaxi1rgc66xss3071wpyv0363460dv5v5yrc37ip0apy"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0n0v4fz359c38qm799s3521q5abk114kw6if3ddg4hi4xpny3g9f"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1mz7ijiv0kcqkhxzmmmaig5h7i1gj24rfi5x76hd4xgj4vvl65lw"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "0jch3ms8khfplvbzn11bl935pqfy9b04qm2w9nfsxl6997pa0aby"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "0k5lb2pqqyigyfj4sya2qiz8mpwfxi1glsf53r84zbh6yyabq8hj"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "1yls6r3rlqik4prcavawprpphzkzbf76bwqx9bb642mbks22gh9a"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "6.0.10"; sha256 = "1ifwfg8sbpividcfxlg0qaphpk0vis0g3r5w4s0d210j2w4v0gdm"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "6.0.10"; sha256 = "1nvk7jyb06nl37sw08381g2gha5m01adwshdfz5xsfj5zb3gpv4d"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.10"; sha256 = "0qkh04cj8gl6rq4138gvj6r1hwzplwaqpadjyz44ylgmksxz19is"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "6.0.10"; sha256 = "1yssdxkaay3zqffaihqsqvx8g89xj8vm7ys1rs951p6g3b2zq8v9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.10"; sha256 = "0mjy93cfm5vfjyx39yixybpvj0xn07agjczfhhycmprbrd208zwn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.10"; sha256 = "07wzx9xqw4lzwsvbvr984s40v9j04hwlzglc6p6w2s30l9h72mhd"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "6.0.10"; sha256 = "0mimm8apwpyfhi6fvlzpps4gzaf3jf40r72hv9hpnn68h735rs44"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "6.0.10"; sha256 = "1371z778w7zzaha4c8w1xygd3qdiw7rdy260pjmhw9dj46jywl67"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "6.0.10"; sha256 = "1y5rbqnqz00vw5azhzzbnwi677gsjcs2zvmc5j1v7vn8nwnqpv24"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "6.0.10"; sha256 = "1my83z2wmirqh3gnsm3faz60fydw5jcgplybx2qffs59x0qsyv7a"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "6.0.10"; sha256 = "102xpqvp1allfnvygyvky3vyq2b91i5bfpw6r5shmqmvq6v83299"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "6.0.10"; sha256 = "1hg18fcgnnwn89siqmsm07pw7pz1r3dcd7l8hihpf33w1550mcyb"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "6.0.10"; sha256 = "1wgzcgl4qx2nnfl3x09vac0gj1hi6fdggbzag29n8dgsh52gskz1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "6.0.10"; sha256 = "1gdiydnn6p339hgy3sd0kg2smcfxg8axi3l3kfiwmi41y4i9n7i0"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "1ib5cpqk4fa9nskr1c5k2qp25b2j413736b4wvy0av9v6lrszjbw"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "1d3jk2f1mnqv27ih4qipq0c3nh63gwd27d2d1d280rsyf8k7rsl0"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "0kv221vyzf2864spbl95rv30znkvsf8kq5gg3523xijpny74wijv"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "1i6vzk0y48g229jcfgjnry0cg3al3m7c3kvyjprr38grbs2vibsb"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.10"; sha256 = "0fk3yz4zcpfvqx581l828f4d5hlsgilb34ygn029lyn3i8gllgda"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.10"; sha256 = "12qn7y375yppkc8v9jkvv97ihgwz7j9hwphm163i0jd7rafvxrcw"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.10"; sha256 = "1rbn66ns870anjlrghyfpsb6vxk3rqsqzha5f7i2cjrpy0d6qn2i"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.10"; sha256 = "0jlaablf9hzwylmsd5cvzi4p70xnznxsml6xg3cjfcb771hpqr6c"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.11"; sha256 = "1z15s89x44yxv80vm3wnnlz09ljalp3aifybs1pd77967ik3xyq0"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.11"; sha256 = "1pw25rnw5nm51wjdjbrhzhz9v0c8gjjqn2na2bam3c5xawvnqkqf"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "6.0.11"; sha256 = "127hcb0fwqhxwcwkb1dy77xqm3vr29c5710n3y6jhk0p4sydnrf6"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "6.0.11"; sha256 = "16f24lrvrzg02p4ynl69vxq2v13a653pl0i6d1pkn0248mc3h7fk"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.11"; sha256 = "0vd5da34frm7avrc9d16d39s2k5sgzd260j5pkjsianhpjby5rbn"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.11"; sha256 = "0gy7whqd7blj6k7zyv3bgfs2hhwxvkjvvdf4axvnq43w1sv8s92d"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "6.0.11"; sha256 = "0b29lnas3affa0xdgbnxgvcqhzs5v7b40y9kz910lf8k674qxmmy"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "6.0.11"; sha256 = "0zx6hw2bjhzwlrny8zkd2223bck1cimws3pkwi3gqyajn1ck49im"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.11"; sha256 = "1yaybb1rmwia5n60bahbykn32y7wad9hqp818hkc3ypxzisd2hwp"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "6.0.11"; sha256 = "06is4h5s81np7bx31xb8svzpqz7m16gxs0hvqx5ab2qxhwkwa8x0"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.11"; sha256 = "15n8x52njzxs2cwzzswi0kawm673jkvf2yga87jaf7hr729bfmcr"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "6.0.11"; sha256 = "05n56w958nzivf5ysls3v5ld1r31fcxq4k3228g9mdxinswhch0v"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.11"; sha256 = "066018q4cr20404gi6i4x6xmq2hcvmlszrx5nv1gr6rlhg7xw6vh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.11"; sha256 = "1ypyxz74hfpcipwgiybdw9pwqkbshbrvil0q53ln75p1hkx51yna"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.11"; sha256 = "0k8nl3hnr8h0ljw185dyhavrz2f7x6wavyadyf7f1v289jzasj72"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "6.0.11"; sha256 = "0l5yyqqm1mm96kkyr56b8l1cygs8z5jb72qd51gln47kgxxhcxl0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "6.0.11"; sha256 = "12qwrvz46ysw0537s6qax6igcj7bgydcyfskf4s1pb6yzpys84cn"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.11"; sha256 = "0bnq4dj7s5mspi7f8ihpp2y4bncb229ihrcmxvifsbb15mlhh8g4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.11"; sha256 = "12g1ynar2n1jrrwa98fcp76gidj227c8swc6c3yfq4v3lgsws9mx"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "6.0.11"; sha256 = "0k7yylj9jc7rzc8k014pdyrgiqliw6yq5bvqvjx7vm3k26mr5bjj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "6.0.11"; sha256 = "0pgdnbklh28hmkaymn3hz3x30754fkms5hhjpvf2f6zwxjznihd0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.11"; sha256 = "19x6xrjika4iz1xsclxcivffnml1byvazly2l16jk2g5yzab52bm"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "6.0.11"; sha256 = "0rpka8pv6nhzyglyxgmx6a18qq213fsgazi9chh4x7hv0l573dgh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.11"; sha256 = "1dqx8spmn4zk6h0qvy522hf86zl5zf5k3m403rpdvqbwv5d4prsg"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.11"; sha256 = "03kvh4l5j8i8263wz7fmznzf5rs1grgazrhi3ayhynvhdal04mdk"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "6.0.11"; sha256 = "1r604xbnknk6xcsnk4g1g0mw3s99l021f56xf1nbalyhh85q95q5"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "6.0.11"; sha256 = "1aslp6yidcmwsv9kxykl66sfgwlhi5kq1zw9fzw5mj7zqllgm4l9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.11"; sha256 = "1f60dyl8pnj067i7bvmsbazcvrjkgrz9943vjj0ym49cfyq98cnw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.11"; sha256 = "01bwpalzfw62qc708488aspyy8lpyjppj1ywfhswbqllaf00i5xs"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "6.0.11"; sha256 = "1gsl464hw93vhigglhg8b771p7lmhq0h4rykjrn7x6148iswmhkw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "6.0.11"; sha256 = "19l1533sh8g7fngfxa538lg6lnga4di4f4icph0wbs9133x797zb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.11"; sha256 = "07ym9n57gr4vwr9x693f73nz979p1x839fk04yq0vav6v29s6fgk"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "6.0.11"; sha256 = "0i9kmk37jddy7672k393idnzkncznim2w846zl58pmb6jdldxm79"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "1q3h9nyjdvcr3951kbghln03fclii83dis0dknni8ygn5nc19zmq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0g5bc7mv16a7k02zw40i238r3f8yi6swspjba5iwisv5knp85dzb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "0pavlb0dblfcnhwr0w6yvn169nggsr2sip0a48ywmzchss3jxs8s"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "01n24jn0i9j5mkh3nwx4l56aw2hc28gkrnfjk7b76rq2yib8dl1i"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "0gzwa2aq158l724sl1dcdarlr0y09ll33mhihc9jkpw1y63c2y2n"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0aqbqhdli5daynlvbnlg5izf7fhmx2gvf97c9yj8zmvg9grqn4vy"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "12xm1wb5k62dpzk12kmnxqqc96h5sidkbf9rghp2hab4dil7d540"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1plbj8s3wm77mfcm9ps03zc6mdhf0adxbjxf5k2gfxny736dpsb3"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "10nb9ppd3ifgjaxp5q2yyc2bzw9j7shpbp4lh8r21hm4kbyly6bi"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "1mvcnvjm97808hlq9kf2s502rf0ab5vk4bqm5x1jgg9913819i7y"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1pmp95dbilxsw84g4bxvibsbs0wgz5kqs07lds5raykhipvrhybp"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1gawsvad4kwr5z1ccsngrdkqqy8wlivk69f6c9fxnbc5srw5kcp9"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "0qxk7r0m5mhvnb3li1yznl2dw95xl9mpkd4sk9hb15rpyxlkfqmb"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0xmm6y21296l40sfhxgqfqfp7fxdjva2vh6qixnjx2ddablni8q5"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "0fxwrw3d5sffsbbwka02vwimfxp7gj1f0jf25hyaqnqbj1gpgs0l"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "0shwxx47l4jkk757cp6z1iiwbdkiw6sb9jbzwjmsjv3m8swrr44k"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "040zx6skb8wkdmybhgagyj9dcpj2ag9izn2ww0ak3zhbyx4n6gp4"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "05a35jblvxmc0xdsl6gmfxjbxx473an4ha49wldcmyg0451pfkwk"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1s9frv6h18fi0089afs1qpm8q4lxbfphg2vfd8gkzkwj844jbbqv"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1c3r7v664bj3h3dch0d860ly75xbcnfc1894cj34g7a67fdhr0l3"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "0q726zb93cd08lr8z77srxk8ab13m755817kss325i32l3zsij44"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0yk0alqhjna2brvkmgxzvbgja6bfq39sjh35sakglljkmxgypxpz"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "08cf22dd75yab2y9k561yy2y14pwqmpfscssz1n46kqzmxk6zbak"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "0rkhdp3zdc8r9k508fr7fad0j31fh7x33m9q0wg6pia4fdwvh87s"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "10sbpgxikvngf7ddfjw0w2lm54ni6a2gh5mdk9wnnv2lyy6bicrv"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0sz6yxwij25rxizzbpf4ic1fm5fb2n1k63hgnd0yxshhrpp8syjg"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1bkka2i41x8qmk0i4a5spabv9bb2jbd12qq0ym98anky6dfvs1r0"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "0fkzkbl12jkwgn9qk23hcz0b2ydfhq7li6frr5np0qpdc66624ha"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "0w2y4xhdszipq7ypp8psk9xmk96pyr1227f8psrs5hdrb58ahzfl"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0s62ggs2534cmwcsh341jnf0d7frx3bz98h5lb6qiyxa1844na9g"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1h5q0836z5xn9r4byb1l0ahmhzfa7wlcd6jfl71ja2l2h051k4rq"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1wnk0gq69g534840ljq0drq6g7a937y3q6r17jxvjdsi3x7gi8cp"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "1smmca72ld8cn4cj7g15xhnx9iadam1cqj1p8xxg0dwa794b83sh"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "0rdxa2d816l3zrf8ijkq0blf685hh9nfnqsxkb96md3xkpqwimnh"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "18hd09z977ad3m5mmhvgbwzb95m2nhsj9nad7plbsdykg8wh0ls2"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "0p850ixy3qxmhh5xfw7wwhmdqzwcf7wxzn80fmlq5f3iwvb3y6nb"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "18252p14vvjxm2sqbn4j122zv9f78rarzrsg1314fzz5g7glhvb1"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "1jy8h6w6sd17l1fxh21lvrkqacj8484ymrhahiy2jjmg5axm5raa"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "000398ffbw1am6l2jx717ny4qmf2zfpl1f8rm6mdbgghyb8if6dh"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "08hhz84pmvnglr51vdv51h3cbw2qf6n14kq3bvwhrlhpngqs62ni"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "0gi160mr13nkdmhk3ihn3pm8hhvll2ychrm9jyc6ii249cccn9rm"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "19mbaafawl665xgw8451cpwcwq11jjr4pkxhm40cqvsnzk22zs9s"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1aiw9q7kqmwar3w4w5w45l0134xxd46hb4k04ggdzsamn1vg29za"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1qxb9axrywyblah8g9fcs141dclmj35wksk2izv1k030c5d7cd3y"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "6.0.11"; sha256 = "0bpy6md1lfzgn5622388rb2pg32i4pvlw1cb8qpqafvms4p5mm3a"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "6.0.11"; sha256 = "0mb04dsm2z954q6552al84p2ikajm6lrpsrh8gxb1iw1qabyvhlw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.11"; sha256 = "09laias011a3v854zc962lcddjkc3bif3jwsi0blyk6v1m2mf4kl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "6.0.11"; sha256 = "13g4jr43f6b83a3jwd76pxkaj71b1sqz1zwq72rk1y24likpshc4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.11"; sha256 = "12a0fqnwsnd6q8vdkdxylrzmmdwn4hfh58j1bdsii1kgm50qwmqp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.11"; sha256 = "1j64ppdvh5s3pqr6sm3sq9bmk3fzj7l4j3bx023zn3dyllibpv68"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "6.0.11"; sha256 = "03nn5x4nlj46vgbl2wkxyl6hibn0n2ry0zxxmzbkvs37mbjxk86z"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "6.0.11"; sha256 = "0fhsjlqg01kxqzdippg1gz93rpd60pgcxl8pxwcgikxgbj7cy8s4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "6.0.11"; sha256 = "11pn7rikm8462xgvy92a1lkss68j47bwqik36yki15hyaqybv4ka"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "6.0.11"; sha256 = "0i2v135k2f0lbh00x1ximf97737dm81adh3z9w5sbzymqiyi8q3f"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "6.0.11"; sha256 = "1ksjj7jj8wphcqxkpzmwqkj0mnyk7x4sdfhyanv1a2f3ik603q4d"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "6.0.11"; sha256 = "0pj9l7fs4hpfdvl7j3c0q21f4cpf7ch2miibga01g82s2rq0vhli"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "6.0.11"; sha256 = "0imidlvxriy3yxvgn9pml3gryf025cyspq9wzyicqqaf9b69vahq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "6.0.11"; sha256 = "110x61wlvy01pln698dbmr8km1h0savpxs2rji827h3c43lgpp5q"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "16g5vd8j9ykdr10fnbp2bw7ri6z54a1jnl6ymi7b9lc5q34yic0f"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "10pi42nsdyr4phkyf9fyqnq2ycwi9jb8mqs5qfa8qygq44rw8ph5"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "0ds0rlzx5xcny65kfbhgiwk1za9c4zb1pqpz5ij44qpyw4kyp262"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "1npi6kfyhwij9qw43z179hcr2k7cayjlbacc5j8ibwxfr2hay9gr"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.11"; sha256 = "1zw93b8vrf2i2lci6137q4v12qrf30rd14a6964hzc5gyqa6d9ab"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.11"; sha256 = "14scil6kil1rv6hvfkyi980mx47xnkf3m3ms2lkgn3lkgblrnsvm"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.11"; sha256 = "1y7c0km6b2lwpxrba6jjc3pmfwhs27wp6kagir0ai4yccgxw9lwz"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.11"; sha256 = "0i9877kzl4rxlya5df7sb1l3vi2mlyrqim1ww6c1dscb7ii2qyfi"; })
     ];
   };
 }
diff --git a/pkgs/development/compilers/dotnet/versions/7.0.nix b/pkgs/development/compilers/dotnet/versions/7.0.nix
index 37f8cdd17701d..3f7cdd5fb86aa 100644
--- a/pkgs/development/compilers/dotnet/versions/7.0.nix
+++ b/pkgs/development/compilers/dotnet/versions/7.0.nix
@@ -1,181 +1,181 @@
 { buildAspNetCore, buildNetRuntime, buildNetSdk, icu }:
 
-# v7.0 (rc)
+# v7.0 (active)
 {
   aspnetcore_7_0 = buildAspNetCore {
     inherit icu;
-    version = "7.0.0-rc.2.22476.2";
+    version = "7.0.0";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/eda5c509-4e42-48b7-95dc-0584b0645d20/2e6219b8fc0873628b9cd8fe9c726b0c/aspnetcore-runtime-7.0.0-rc.2.22476.2-linux-x64.tar.gz";
-        sha512  = "1941cd6ea3bea31d970029c34acf0d60b63d1e7fba39086be1a79177a6f87f2b0300bf4008e96a5235d52bc74a41503b21b088143cd306058d42dd3ce8252af0";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4bbb4d31-70ba-4def-b747-4358be873982/3dbca5b64c2ffb88641c0e42bdeb297a/aspnetcore-runtime-7.0.0-linux-x64.tar.gz";
+        sha512  = "02ce2e0b3c4b1d0eb0d9bdb9517a3293404b2a1aaf23311e305b856bb15723414f6328887788b875f0f80361f3e195c872ea3984971e5f0ab1ad5de43950d707";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/6a9cde74-7514-4609-8f87-3d932052bf7a/c8b037945ed4d2b1afc52661bc32a93e/aspnetcore-runtime-7.0.0-rc.2.22476.2-linux-arm64.tar.gz";
-        sha512  = "24fb13ed26a44d6fba86a2058839026ec81868143a5b7af7857b75a004b0c64eea9a3e544f9e0774b761f9c911608ac74237b2d63ba6799718d12915d5d32df4";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/2d6d851a-4eea-4a7a-9d5e-f1d6cdccda29/366a3dd90251ce11d8c5191ae9633efc/aspnetcore-runtime-7.0.0-linux-arm64.tar.gz";
+        sha512  = "ffee38cb0c8fd3ba20f3d814b7e141f94be18620eb91a229b80d7c609f6cad77efb7f8f276e9fbee4f3ed8cce33cc0659f0dc77faeb8f5427c95deead97275d7";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/7b6d123b-4968-49a9-9209-38eb39c893e4/4a870b64b1c32f3c26531532090be743/aspnetcore-runtime-7.0.0-rc.2.22476.2-osx-x64.tar.gz";
-        sha512  = "a8799dfa6efb4dcecf023de5d666969906b7b5c512a9eb2e76ef12cef6ff5b63d84e3b9b2ec7573ca3ad1b7dc1f21885974a7bd10d3df807c009c2b02440fd34";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/5ea36935-090e-4ca4-841f-49371b408d9d/6e0c2c4721dabbb9a237d6b6ed17df75/aspnetcore-runtime-7.0.0-osx-x64.tar.gz";
+        sha512  = "a1ab796c04d17ade8d93bc53b58ebeccd541d30aa0438bd81ff66c728dc13f934043f98528417eb976ea426e58107bef371b26d5877a550f2397005c5362a1da";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/da2c7570-ae74-42d0-84bf-b059e8635fd5/6db3247d25a867adee6a3d92a437520b/aspnetcore-runtime-7.0.0-rc.2.22476.2-osx-arm64.tar.gz";
-        sha512  = "3ebc2f205920b9955ef5d30e02d659468beee68271e54fbc6e4afa5aafb98effea6f642e5086801708b5dd35fc6c25aeeb9a924abf8cb4f6a6c0a44d3c16d025";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e8576603-3b51-43ac-8ec1-fa96517e9149/7de992056c89e164f60908d9912f3a81/aspnetcore-runtime-7.0.0-osx-arm64.tar.gz";
+        sha512  = "437f4fe11c95330eb56dc9e4a0c5836546d9e5b28f6cd0236ef563a82b0103e3526c0e6d50d44c90f4eb19bd6a1f409178d0f7b7620a2fff185aee6ae7cbe337";
       };
     };
   };
 
   runtime_7_0 = buildNetRuntime {
     inherit icu;
-    version = "7.0.0-rc.2.22472.3";
+    version = "7.0.0";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/627fb71b-ed0f-4c99-8566-4157b78042aa/c39f6d133cc76d02bd4a165415c030ee/dotnet-runtime-7.0.0-rc.2.22472.3-linux-x64.tar.gz";
-        sha512  = "2294605e371ec575e59baa1eacf973d7dd6761d5d161f4988ed6c51d5db2795a4dc95709d6eaf38ddb2caee6f0551225b49be5cbe42233c2ffae3a0f63d4412c";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/d4b0a69b-29cd-40ef-9e95-a8d16f0ff346/5844add76ae3917af9efd59d95e3cbd4/dotnet-runtime-7.0.0-linux-x64.tar.gz";
+        sha512  = "f4a6e9d5fec7d390c791f5ddaa0fcda386a7ec36fe2dbaa6acb3bdad38393ca1f9d984dd577a081920c3cae3d511090a2f2723cc5a79815309f344b8ccce6488";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/fd677894-fe5d-448b-a1e2-a1abd577a1be/33c3573a28596dfa7cdc73d26a3c7de4/dotnet-runtime-7.0.0-rc.2.22472.3-linux-arm64.tar.gz";
-        sha512  = "cc1f37687745a3aed3c161415fa57dd8f151f515fb2a030c6b2e600942d188837398038d81654a1137bfafc5e1733e351e7c8ea04678cd2457d6620a3381826b";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/edc62d2f-5c2e-4085-a6d8-11ba9abb18f4/6ca82f155ed65e4c1335214d2d948c78/dotnet-runtime-7.0.0-linux-arm64.tar.gz";
+        sha512  = "a359402471c0c4f11f9e472ee6f8d7d165b57a29f132e01a95d3ee4020fa27f9c6ed5ede4b41786fd9bbad1491a4726c6f45d105c19695c0a1cc9a9d414ee614";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/d9a3c643-0572-4571-bf1f-c3f5c6e9f8d6/6144f6fed64492d647741ab3d157a4b7/dotnet-runtime-7.0.0-rc.2.22472.3-osx-x64.tar.gz";
-        sha512  = "840835baa12d79404ed1ec59d33cad5d61980dfa2f596f0da56e421ba20f0ec8a91476e4f4b92921cab9c0c95f22f8989dce6394e8f4b3701a54945829ad4a91";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/93aca2a1-570c-4db7-90a1-de89a3a53f27/2d443a62676d498918def9188859f900/dotnet-runtime-7.0.0-osx-x64.tar.gz";
+        sha512  = "b9b906561a443b0fc2064d7dfb9c497bcc157421c0fa7967547673e098c091a29012e36af3282d7bae9d51c216a31578b086d82c6e10ef6244e773b40ab57081";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/23235792-7d1e-4b2e-a2f1-3b7069ec6573/eb140f4236a01e8ae3b6d8faf8f542df/dotnet-runtime-7.0.0-rc.2.22472.3-osx-arm64.tar.gz";
-        sha512  = "1a4374c3e01a1204822da82be919ce5e3814e54167f78410b23e85e10e8df16f84340588f6b3e3e24eebd762ad4545cb1e5ab8fd01cf8fce6f25fec71701945a";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/fa0f8c59-92d6-46eb-a35b-2063a888f26e/0dcd341b1bde64bd1a8ae91097dfca7f/dotnet-runtime-7.0.0-osx-arm64.tar.gz";
+        sha512  = "4a0dabfc8008dc39c3e7da6315475d5a20d30715cf1f4139e45ad1579486ba005a876918cf69369281b47d6932c070e735a4d7d84dbef8b0ef79f52e12b21d02";
       };
     };
   };
 
   sdk_7_0 = buildNetSdk {
     inherit icu;
-    version = "7.0.100-rc.2.22477.23";
+    version = "7.0.100";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/f5c74056-330b-452b-915e-d98fda75024e/18076ca3b89cd362162bbd0cbf9b2ca5/dotnet-sdk-7.0.100-rc.2.22477.23-linux-x64.tar.gz";
-        sha512  = "22db5d1d16f6fcedfc46f87896920425b5d9b61d09c47d254d6ac731c6d853657882b21faf21f313ed20b33e6331d01b9f723b2c586f0e0cf5acc5ed570b0260";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/253e5af8-41aa-48c6-86f1-39a51b44afdc/5bb2cb9380c5b1a7f0153e0a2775727b/dotnet-sdk-7.0.100-linux-x64.tar.gz";
+        sha512  = "0a2e74486357a3ee16abb551ecd828836f90d8744d6e2b6b83556395c872090d9e5166f92a8d050331333d07d112c4b27e87100ba1af86cac8a37f1aee953078";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/8eb03851-3b65-4116-8d6a-f5665e88b90f/901ff01f63c7dd06c3550e0a0cd15587/dotnet-sdk-7.0.100-rc.2.22477.23-linux-arm64.tar.gz";
-        sha512  = "bd5f6fc2bc6783bcf71b4a5c274b2e710336fc031c2577f5ccdb9be2679ce8b15e40fb8e631e2dd18b2359396107fe44d867d341f6fc5daae165f8f238adee17";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/47337472-c910-4815-9d9b-80e1a30fcf16/14847f6a51a6a7e53a859d4a17edc311/dotnet-sdk-7.0.100-linux-arm64.tar.gz";
+        sha512  = "0a332df58891e808c9adc2b785e9b0e658b29b494963c8d501b0f8806ff5d3daad4614886349cbba86af638ed7ac76e78a2d05aeca13bac25d5f45fbe62b8251";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/0f93024c-7a1a-42c6-a085-50bb1fccea6f/09194b050530239bbc2cdb3b9ec4bdce/dotnet-sdk-7.0.100-rc.2.22477.23-osx-x64.tar.gz";
-        sha512  = "a7ef37c576e47b6734b1d58037de8f42e9e20c4e65ce7a213c6e306a68ff426fb2d5e5b805307775e481c35320bb33f6a62b3a2a97ddd35637134f9798ee610b";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/09e4b839-c809-49b5-b424-86d8ca67b42e/54be2d3868ae49fa00b1cc59065d5e2e/dotnet-sdk-7.0.100-osx-x64.tar.gz";
+        sha512  = "86165993dcf768b3ce793e94739ae681f30b63b3f7fdc82c6da7692f3867f93c19ac5b9152bc8f45708f4194187d60b706e0ee61a37f6e1470536c95a5e53e1c";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/e9a9a239-5430-4a88-941e-0c63ffe4ff42/18dc8b8b1cc2010fde2c418a85a96e70/dotnet-sdk-7.0.100-rc.2.22477.23-osx-arm64.tar.gz";
-        sha512  = "f7cc6bbe15784f6587c40db2ac043b410fdff764f42fe0cd85a6eba863b201f6bb50b4029a6316c276c0165448c00719768211b67908ee27b7186d18d3431387";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/1a0e0146-3401-4c2b-9369-4cb5e72785b7/8548e8f2c619330ea7282e15d1116155/dotnet-sdk-7.0.100-osx-arm64.tar.gz";
+        sha512  = "d1af8592bc8aec43069f689449c159a4b13da419a924dab495b66bbf8c99b526c75c609171205b6d1b30bb0ff6f57797135245048e3629fbb33f462171107581";
       };
     };
     packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "7.0.0-rc.2.22476.2"; sha256 = "0h2l8yap76j51rlgxq3c0xyan4w6qlmpmd5j61208qkhz09kvcb4"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "7.0.0-rc.2.22476.2"; sha256 = "1dpmihfj4rji4j4x454z262dc6mw2wbzq2gkxgkh81gp5b0lv9id"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "7.0.0-rc.2.22476.2"; sha256 = "1c7s3s9i75sxaqdgaz4rxzvyn7bxxrp1vjxarawr6wa9j5k7zvqv"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "7.0.0-rc.2.22476.2"; sha256 = "1km3ys2hwk84sz9ym68l5hcm5dj04incpk0wkj4a80cbqfz58yqy"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "7.0.0-rc.2.22476.2"; sha256 = "196x89hhn1c10rk2xk3jbvnkfiw9qk8b82ms3rbmn660y6cf2z3n"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "7.0.0-rc.2.22476.2"; sha256 = "00hb5pa63fx5qwdb8zlfbgpg346q3m17sw1rvx2bbk3c41lf3mdz"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "7.0.0-rc.2.22476.2"; sha256 = "0skd2hy9rhiz0j5zcznvaq2dbyd874c3fy9csmjryxq0r3dlcgz1"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "7.0.0-rc.2.22476.2"; sha256 = "0gcmw3vzgbqfg2s935jm8p4bs8xkd9iynwimqpg8lri5scqgckr5"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "7.0.0-rc.2.22476.2"; sha256 = "0snr79gymyk4cmrna2b85kcp9khxkvjmhyn5glhyqj4lz26bbfvg"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "7.0.0-rc.2.22476.2"; sha256 = "02gzw3da5xvlds81ha82mw2aqys9bfafmpbrniz25qyiram49vcp"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "7.0.0-rc.2.22476.2"; sha256 = "0qrznlqilm2yz3akfy0ind65iyl0c4hmxjvlkhh4cm97621p73f9"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "7.0.0-rc.2.22476.2"; sha256 = "01s5wwfma1mzkhlyk31b1mw12k5ilbfq97apkxsxvh85i2vs459h"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "7.0.0-rc.2.22476.2"; sha256 = "02jcl0k71sxvfg573l59a0wypjlhx5bpz9782s2g1q74dnprx0a9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "1iysxmdil6pqidyrxgpcvirg0qp0k6b3wpp9fik2lyr3bp8khpks"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1ckzw6p2ih8h9050avq906bchsz19rx1zwnvcvj7a92r2bh92129"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0vk14gymssb6rkcwaagwf3l28j9wv4a86j3gfsj4mqxi89rkwrc1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0v06906mrbj28c202zbydc8zbx2hldcrqx6jbh5wlzhih5mfr149"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "150kqnl9v8amydz147h38vagnczn1fpz2gmx70c92l3ypqakrfdr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "18ja1aarvq0vs3jp389sskm6mqq7lh0dwahmg17n0c1p8j4zd3wq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "1ls11073f3r8yl07fs5y86id38rb726780r5fxcjynkll74m0kwm"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "00iya8nvkh8r0bfch9r28spgha1rf6xn1756flg0jfpnmnd53xb3"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1z3qflwh3m3g0m0lvdzsq3gafc8i8d2010l4g09w2acn200510xg"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "7.0.0-rc.2.22472.3"; sha256 = "0p827f73nbcv288wy5vqiq35kxk3y1dhi7f86gzzqarp7cbfzzc4"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "01z5bcaismz5c06if7vwkd753dh73q92l2bji3pbh6cnsg422nc2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1fgk3yydfw4y4svpdkdil64bxgaddw8brhgcwvak4904l5bx8gkk"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1kxnmb8x1df92wd5n7g5ydgb4khcs5xq8kgkwar0067734k8sff7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "01myx9n3glmaw366smqjyf4qy3mz6a07iknhgb3abhl309adg46a"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "121pqvffcib9wdw4q419b1vniyhak8in4iqbkdjdnijips5jbw0n"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1z9694xja3qpfh1hqv8b9vwpsljvv4zl7ihnr8r6l1zwzics9gs1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "0pymzb6n19cy1ham4glraj5wmnfz4ay1bbk14x2pqg8nmcqs9i0x"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1phm6vs0ihs1i5568s3q7nkmjibzgc0vrp8p9nwizg8vn1bzs0aa"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "08xpbxb5mrjscvbbkv3cnfxcawl30p3fnxv0wyb1zg6rdd446f4d"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "7.0.0-rc.2.22472.3"; sha256 = "04b817bf4fjaip2wjxhbcrl2sbhisw1mz1m2sgqvb8jzbm1bv08z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0zdgymm1kn2magcs4vsfzd2pbjy61vs4yc654xa8wy68pchc7yj9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0hhyz0rlw95qjlzp4nbj9hrri82mqahgky5pd3xmiqllmw53y15m"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "0x851y3aib319p7fm4cnq99m9l0mrr55nbx9yb1fwxhv4rfn3jmq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "0a7lrbwgil8riyp3v306hr97w83b0vqizb3ig0kpdwbj32zxz3q9"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1mvapavcy2qzkr94mwfsgyygbwlm4s7b63cmhaz9fj3qhydwdzik"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "146ydx54vhgjaxfpggfch96ai3jppbciw5yvn5r9kx34vbxy2m38"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "1ixm57p75h285lf2dcc4fk1gnyjbxnadg3war1a7h6v3whjziwmx"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "1hgqb8d4nplrlsl0cza57v4h147kighx742ss35rlw40nn7wy40r"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1pa8zm0j4zwkq13knvadl8fjdz2ayrx5ynxkjwcfk8vkwzrsk21a"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "01igid2msnllk79qfindhz4kr13rgpmkvpp6w7kcyjag37qsp42i"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "0mfyxrimmyv2s0r49l43z42qdp5cww4wxcvxv70lrjp6ysizdr11"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "05h59an89c6766jy30v91bfys6lb17lzssqn7kzn012zxnsd612w"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "154k3szpgy904qpk3wb45c7c8r7inhxa9jxvcswpdyi8ybbv4vz6"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "10hzyhclv223d9hbgffzpb0nb63ljkxnbilgckhndh0gfn36hcq7"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "1hdkxk3w13pvsg8ai3jd4ksw9q1cwixsf5xnz0ci80b1i7pvn039"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "1drnja2lwy0v17swaxdgjrc1xk190yffxpf7q7pg0bd5p7kq45f0"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1lkn3n8a0lm567f6mwkcffkkf4frxkphf51xkgmkab1sqp4b83yk"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "16ig6ly2j0vfm5d915az2kf9b2cai9argn3smfsqchng49zx86rx"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "02g0d8ffxbk7h5034sbw4bmq4rh9dr4vmn74c8mn12bq14pi075m"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "1xq0by4s3wfz69cajip7spfl94kgg249vll91c4f597cdfqy7kzc"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "06ibkqbrfgngk850vk23mskhyrf5qd1kkck2nw31bhgnh7bp4ddc"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "07m95mpmiblslrdmkpnzn118s6fapds2fxqvm75yasdrd22biy6s"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "1bxxczfbjsyr3hlw3ix3gnmila0csyl799c08nh7aycpqpacr51h"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "13l2rziiaxvys31mk47wbvg2c05w456s6adicvk3q985lng1alr0"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0rgakvawamdjgbv414frsh9pl1qk7fa3r82i66bfqz0ld62rgzjs"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "16g06ahnf9wcr0ahm9112l5b8cv6s22gq3v7jljlpz6wxlbby64k"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "15yw6sgmjydk5c7przd2n4fip9wqilpqcm46pixpcsdaxd9xn93n"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "1ggzm4fcnsjd8shck75hn34g2flwccbx9d75lp0imbgg49rpyp2d"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0f0cimiwyk9nr69bcmmvv3zna43zhlh09p997ad9225bksgdapr9"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "12wxfs3r94hs2q90fs4jlq7rljdyaza48lx51xz1cjz22m86bnap"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "13bb0z7b77s2dgpjabpvm7xr9bvi0w6n88gnaf6csaxnmnqc9jxf"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "10hf46mc65wkfcn4wa7lz1addv0h5v8dl96q32n9k7n3344q8f8m"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0c9ski0p289zchyyy2zy572c5fpp6q8hksnssjw2s6wg5g6sl24g"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0d4bp0dw4dm8avw14c5y4y8nqhbgvxv821j7davfgah962yf4cq9"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "0p8xdq69q4g3w327bpiwnsnz5c8gb20cfyphp2fjb70vg85m6rfq"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "1ldxnabxsh9lnlwcb2w911g0xijm8razmxa0hi4w2avgd9khd7yi"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0rfgkmilnddx24pkkh2mkxxixmrsj5msafl2snv5xg3k9bbrvjcf"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1y2yc8a3qkqmclycq41jppi4h10kpsrd1c8iyg8nx63kqsgs9nlx"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "17bbhvwq27aiwc11wmdj6fqkr011bn2q677jzxmc9c6ia4qclcw4"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "0jacafq91y7dkzq5r4d1pblk4yhg3ckl0jv3w8n0mxscpgcg238v"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1m2wqbr4rs4pm6qb4kmk272iyrdvqjikfg3zzn1c7cwg4ygkyq3l"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "194k56z5sbkphj1kj0w4v26jvls51mn5yb1j079acv7y6jicvqzr"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "1mvhrhlh5rm3i6gysd7vhsxxl016y535mvng614hfxf9b8x8fr1s"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "109ry8xzjvdl8na9a9sgisxxbfzan15xmbdnxp4f8xcvszbky99s"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "7.0.0-rc.2.22472.3"; sha256 = "1pzhw3smwim5ky5721n5gwdp6pwnvpwkmrn7p3k76pvfbprwivfv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "1pgfj06fbj1z9hsid8za68fahgsgk0ra148g3hxaw1d1lidyjq9i"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0na88422j0clnv979wkzycw8ic0c04zz8yrp39il5z3i7zi1l2qi"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "1pxmndnjg59z9iwkckzmbgk1q6jkzvpmz0xn13ljwr26bnb5wg0q"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0wpgcssqrqphblazjwhi2x7l7sxrv4w86n961d7npnss77w2s1rl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "7.0.0-rc.2.22472.3"; sha256 = "0ng55x7bcyl71hmr4nfk7lkylj39rsmhjpfx65calmpv9jzcw287"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "7.0.0-rc.2.22472.3"; sha256 = "0dpqz7h4wps6wgr6pri2q9zbzx520fpkm55b42lbbcc9hfibpfwc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "1can9ygvw84kkjs0bf2ib1rlck10j1cihi68l3dsxx6cfq6j0l6z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "099i619jlil2fcznwccsnmix2zmdyfdp3zxda0iiclvpgk0qxyy3"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0b2q1ggx19aby50l7fw6xfw209591xqswhkvbpa69r0hccj4b00r"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0jpdyn4izznmchc5xzmsbikq2wnzbxy82n3xpymw2ibs4kwv5pva"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "0vwf8q4y5fdxzsa1945hcn75n0xwmcb9ksggbc4jy48dy78fmmwi"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "7.0.0-rc.2.22472.3"; sha256 = "08lzffzrik1cmgcwj64qnw3klm0srcnvpjx20llsdxh6f1idfzzw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "7.0.0-rc.2.22472.3"; sha256 = "0y3w0vsz8f6w3pb7bc7sh0k3vx4d9j0rvmx7b9r20rnpzv30nbdv"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1zjvvwi9s1ahl1pfm89nwng9k2bjwby4s8ab1dfgbdj23rfx00p7"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1816lyga62bf4xdxf8wxga238l8xmvpr556ms5krcy72yd3jzyn6"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "1dh3qfmmhj0flp0zs7qcm4shwq6rqrxb3d2q2hbfdkajbx8s2sv8"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "02z514s54l9kwr9y8sqciy9rqs6naw0cs5frvik51lsc8sankibq"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "1f5idviqffi44sxjvsd7m70h8z6c0qr739qrp9iqsvrkh3h2x3n0"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0-rc.2.22472.3"; sha256 = "0f2pdybhsz5n0xswy9hj0fqkmf9wvq8kbsh2748f9v800knn2pmk"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0-rc.2.22472.3"; sha256 = "14lzdp3nw9z4fcc1z50l8sfp9ygwip6g2hfdvby8zhwgj1b43ryr"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0-rc.2.22472.3"; sha256 = "11bb5x0i5ynvsaymlqxml8zf0jjsmn7nfqwgsj0zycpli76qdc5l"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "11nr2fwv8fmlhj28ny5i8pbj1dvapph494z9sk11z1v1n2pkschl"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "1jmab7kgm204m5pla82amwhfbs5x62ndxzqvi09sg132s4dc3qcj"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "0m4qqqlpq6sf1pnzljwqvv78xr2h6ah5m5b2w38f2kzk5h4ngcrm"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "1nk489n6vcd307cxcv7ljn3b7xabhlnb2c7qpfw5a5yd5bbv7h59"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "1l89nlxpj2ac3ch8k4draczc5xvdicxyc1n1vff6irhkwfny4y6c"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "1abq8jzfnwdabivx73f9lcqcamdrp303gjfvii6kgh3abn7lsmki"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0-rc.2.22472.3"; sha256 = "1clv15r6c38g1gf88r4v6p0y5lb6mykaxry67zh88vzkwvk02lk7"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "7.0.0"; sha256 = "1xzybxsi87vw5fdc0m32l2pdcjbgrj4a9m7766vv3qlm3pnw2gi0"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "7.0.0"; sha256 = "07b7pv06nvzv6cgn68x64925bi9v120dczqa1s63z1wqih7ijk9b"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "7.0.0"; sha256 = "1sflim5k94kdrcb88jm8jqxi354r2bnycgsx1l19mraacpsxw2sd"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "7.0.0"; sha256 = "1iiv6vnb7dw00m9m6q3347in8z27pq8h1d759mx8wk4r35wzwijl"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "7.0.0"; sha256 = "1lnyb2v5ahk730fb7nz0z9vrpiyhn4plgvfl130x9zw6as9rkqf5"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "7.0.0"; sha256 = "1aq3lkp6ggsw5iqqyv4ain20c47r3yzwn21i5wbzdfivci0k5pl1"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "7.0.0"; sha256 = "1izaa212j4363yajcifym1xxhja7qs8pnbin3rsjdkhm7fgffbw1"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "7.0.0"; sha256 = "0h1nnw0h1p04y8n3p2gj0bgin4bm6byr4mklz15diqwy45c6whp6"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "7.0.0"; sha256 = "17lvrw4fp44kf68hx619kdxvmwzd27r2h57qi69dnby7v1givcci"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "7.0.0"; sha256 = "0vc2w7jrvh2hfxxs4if1k95wprzrvbp9dv9lcw84j1vyzhhanngc"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "7.0.0"; sha256 = "0xv3sr2a202xzi09m5m9q0034724mzfldjsw1j3jkn8csv7821gi"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "7.0.0"; sha256 = "0bcbb1znpdr4r83y0qjx7y61mzn43chyv7dhwsra4wrfmw8zk6r1"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "7.0.0"; sha256 = "04lbvxk4vywaw5pgwl2ag1nr09a1kx7ji75yfw8igzsp8s3vlqcl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "7.0.0"; sha256 = "1hqrljfjzdsl356fnk3s60fmiwh07hzzff5lj6aywbpbb91sr9fk"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "7.0.0"; sha256 = "155ra9i7k63ii10fcnq3q0kbbrbffzwsdrxddvwg891fr23jkz8j"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "7.0.0"; sha256 = "016y3d1337ddjg2lsy0bnls9pflljnzvwnx31caxzaigcbabqqkg"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "7.0.0"; sha256 = "101773hcmk7w4cqlw9vlla2vw827lsqaasaalir06gpmrlr3lbwp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "7.0.0"; sha256 = "0vamf4d0cwxa4r9rvx2h05rr8dnqy365qls10s1ifl14bqpsjjlb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "7.0.0"; sha256 = "06rg0czvg9dw8xr95bvgmpdnmlrjxrqihmlg0hs84gdi3c748xgj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "7.0.0"; sha256 = "1gjia7vx6s5vlsniycmkiysygyq6iq8chfd660g7g5j5x4n0bijy"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "7.0.0"; sha256 = "1gqs62v531l5wpn4l08dnygxawjdmdq7cs1ykqyic407mpyq35pf"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "7.0.0"; sha256 = "0kpahfm1bmwcl551hq5bxd1i39qx2sigkdv39yxps72g8sh89igf"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "7.0.0"; sha256 = "0pcz74jxwywm6228zih366qks718wrppb2sv7i3qm1afmqnfkxv3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "7.0.0"; sha256 = "19nax9xgm2pv6163l0dicy9ln3snz3rag5bcxn2vgvmsi6by4aa6"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "7.0.0"; sha256 = "0k06bwbf1v03h4j4crp4x1iby1rvx3b277041glh8fywgpv55h08"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "7.0.0"; sha256 = "0nx8ds2f15bxxmhrq1yfvvhniqly1bnknzn1fvg9wxhphlbdync4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "7.0.0"; sha256 = "15czc22gw8z6lb31vwac4xgifmmhr1q62cgydj44ksgiq9x6g87w"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "7.0.0"; sha256 = "1y5ci26p30bjhsmax624x5kw421k2ilf8jl6252cjclq8ghxn3i9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "7.0.0"; sha256 = "04s945gayk4r54rfyr3v35b49d26f35pvcng9m9wzzpg2wkyg4ml"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "7.0.0"; sha256 = "0zd84ic9zad1qjydicmbp6dgd342yx4vm382aqx9kfvvdz11kds3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "7.0.0"; sha256 = "1vqw38b7y59203j8z4af1p491941ixrdsnwl8yqc8akg0q74xhx0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "7.0.0"; sha256 = "026r4p2cxpyy0mh0a6fb9cnk2yd5rym8nl9pzzxql664n4fayw6d"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "7.0.0"; sha256 = "1fkn84yv26r28blq3mjhxdzscci5q92mwwkbs97ldrqxfb4yi3p4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "1dq50frd65gr6m297sgihsqwmczazr6yk8ssky2c1d2y0h8q6b64"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "1arxdwsxq31a9p867sdfl6dxd2wqma1qpjpwxidaab76jgai0awz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "16mnrs799i2z367pa7qvr5hysf3wknbjr8mz6l69c979xfckkzyb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0fwkyc22bicsqphmlaf26xmv0smnrdls9mknlzmwysxfnzqpg38z"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "056340npn4n4p19fda4jsd0za06q915sn7d12h4c8lqdm51nvrlw"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "12fyxv55lgzf7l6wda6fhlj290r10hy2kqlvswj49106y00qcjfj"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0rjvqr4v93cy2smcxidxplbfrdc211scpx0mnzrrhygha0jchs89"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0rsyhklq5njaszf9q9csa1sl27ym0812q0gba2k205ngxgh082rl"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "0ixjyzv6dh5x9dwiiagiabmzhbq2qyk8gwss5viqhgdmd0r30isi"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "0fw209iqv3xvz9fnhrrj1rrjfzpjgig8fr8iim0gl6qixw3a0q8w"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "1jr843dpcvrk363wb7zb674zchnvhwn8yw9jgbz9c5b2ql4swgkd"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "17xv2wl5cim11sg4zp9xc1jpz3wk3rld0xapzwz0h9af2v89yrm8"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "0y3k174hmask6ykhjs4p1sq6jf7zqivlcdy6nw64a5xvqdwfk43g"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "0y81yay24b7idzv836znxryscvns6vy96y0mfdigb2rimv0h4wlj"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0a7gy6pfaknrq692lls6rg6qxxq81db60qidhvxhrdp8y1m52d4d"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0x8ib8ffx6sr4pdw9hxdxkpnbvsl76gqv7wldbv8q7fdzg53a1z2"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "12qx9k2a8v0vhc56k459fjykvqq46gygi88n03jfmvapnkvfmdbh"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "0kq19a6wkc0d4qw46jmxdmsf8sg4l6lj3mcdvvxnz03n5lk4c6mv"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0190xml4crgl27hiby096d4hg1wdy2pkdwcyq525qx5dvqvzpvfs"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "1pmirxjf49dh66in169rn56cvhyla8hjvnv1njpd2a8bjcl9sdp7"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "0wnh0csgdg6cxm82ylhg3bgq3lciha0g0463j36y8vpd9n891axi"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "1xi7n1gx0a26i2c8jwfnmxlv58wbc3bhd7zjmg7m1cy3assqkil9"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "1qr7q4gxgk2fm2hqpkg5w144haica0aayz5jgm1zr5dmc5giw8mh"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "09yk8ay0ng7rgh0rw99igvm1cjyr5yxwfs7m5zsarwbq01hwp36l"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "080k801gqib24x230b7s64cra26vb3jgkhzg5f89897xz4zp7hy3"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "0zkv1zdwfwwlpg0q49733mr8h2d5063gwp1v1rbcw8ka86srdb8k"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "19mc3hyxbqy5hpfi888sclv3mylvhc8pbpvnrjdv2ky82j3czn6z"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0r4jvv7v9a0yq5p40p5idyr19kfgxck81yyljp9j79za8lbc7wh6"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "07s1vdl5smy94x0f9bd5036bczqhg210kzld4rrins1b6bmv4xl3"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "0kr25wqfcpyjlrb78r0frl2181zkk3qlv9rli3vfb83f35hhdx9s"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0jhidazb3x4mfc4l4zc6vblcdj3270a6r82pysdqrnhvmznlzic9"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "13vm2drh1fzqi92qrwbh9dzprsn56ivsdr87i1728ivmmka7iqdp"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "1glv394f70q3qjibzjig0czfpbk52k5p6kvv9rim9i5kqkqp4cvy"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "04jm9hkvc57dk2z1parllrsg2zd4hgh9sizjlm2j44s3vm2djy0k"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "16r6b5pcziwlihc05li27ihxr9mjxd58clcnslywvyzmv7gz1dj4"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0rw5r6lwdc759pys1cws09izij6vm8ikqwgbxnkhn2ll41qkwfaz"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "0a94ic4fd4nxdgiwmk09fg615ib62pfi2mqpypvwfb4kv804hvsl"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "1j5yj4m9d3wmhv5zjwy07wz6gfdhqxh8vylwgv2651zyrlv7kxia"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0w2a95yw49mr7k51b9cigjb0yryflfxjs2rq8p0r82y0njcxw6b0"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0j7mxxgi6167a7l43db1my2qj9n8q6ww6qmfnndk6jrpxywajh3v"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "1gb27669992lxzlrdj3ah4k68hxr98rk4k2f83miqd2h4zbhp6kd"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "04r7nikvzbcg55hx6xbcss9gwnad8cpy3fy2f0jh0ry8jh990h2g"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "1rb7myjhyan570242b2vhrk3cpdkaga6qvla54czlqgb20c56qja"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0ssx929yz95b3vvnlb0qwb6sinqqiwlw0ykygaad7l2bxm4bqmvp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "7.0.0"; sha256 = "18z37bdi5x5ggmzxwh8kxd77wd75sqmdp3ynlzb2nfp7mvk10s2l"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "7.0.0"; sha256 = "1qfbznic7wk6gy4c77ff3nrwvgx5pvjg26k05rv1dr8w6h58b7r7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "7.0.0"; sha256 = "0fx5zlf9spb2241f1apcyj0zq9kd2crm4mx3b1ccwirnfh20qy9x"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "7.0.0"; sha256 = "1gjfp5f76g8bwbpmb9qfq116224zwa9vb4310kxaybdx5yb72iky"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "7.0.0"; sha256 = "1db2jawfmal5qxmswix8kwf3x68sh52r0r9ihdphivbi4nj8nsg2"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "7.0.0"; sha256 = "18sf7x6kiigjxjvysbnk1sy0shs50lx6pxslfdcpzr349b7drgap"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "7.0.0"; sha256 = "1xwf795qwyajqk81sipr96pzla4gxyvx88cwpfaq7zclihd03p58"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "7.0.0"; sha256 = "1v3zcyqrrax5nh447bv2b6c2252l4mbi6xcacw4zjicm2v7kadba"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "7.0.0"; sha256 = "1v3j8ffghzd1wjl64r9wl3593xh7adycand78jd9sndiak27qgiv"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "7.0.0"; sha256 = "1m62g19w1253dy289k4k490pxiavdalql87dimx9syqk81agknr0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "7.0.0"; sha256 = "1k3nihw931vvr8vj05x0f9gmx7fqqvnhlby297jdxpj9gsvssr2a"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "7.0.0"; sha256 = "0wvf8clmyl6xpyi2casa2zxjl5x0f14cj5infkwrm7bkb0hwwj0c"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "7.0.0"; sha256 = "0zjlamc8bgvb8lrfwmyimqbxi6b4gfn1w7fhfqf20050vyzivqdb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "7.0.0"; sha256 = "1zcn8hrmbvqx9w4d5pm69v1znwbpdl4573jwybj8w5myl5ni3jly"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "01blflyln8rgig20cim8kpjc2kj97vhw6ajxf3029b3692lkm693"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "1f7jfxnw0vkmmwm5rkycqf8f5mj3815hqdbwxbg9cxskd46a6rrg"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0fqbgywnhlb39xhxff0h68pvrx8m17w40z5b5p65jh597l56pgpi"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "0dm9pdm5d5nckfhid846kcpm0lb01g7rmpqmimj0qjwy83jdk88f"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.0"; sha256 = "0ccsg4z8fsyqlflgcd8dhz3kq0xc860nyd9q8amw76ig2l7cj2sw"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.0"; sha256 = "02r5nhn51wpn6nnms1kd8znq3zg0vs624wkh6qwc1raq1b2njlyb"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.0"; sha256 = "0451wbsgkf9gybkdijmljc7rsr527gbyy11nimwc8gn266cgnl9l"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.0"; sha256 = "1vz3wd1dgjwgs91r0qdah9nbs5lgf31rmrkyyr830cc9dj7h18hv"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "1clj5f6ywj5agqdpzjy7slj4vx2y80djq54s5v6hdpcppvw7zykf"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "0mqr862bdgcs08941ljmfxgj7srjx1gi3w4356lrvhr9qn754sgk"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "079va9yfpjmiig3ig9zia831hby7i6dx4bg9axc3aikhclcr15sv"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "15dwcikc033wakvgrqavyyxhqi9mc5cq2g54m8mxvdvslx91g2qp"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "1szhmj9c0s2v3fvsawqk8rj19fb1w7hprvgfygaicqsfvqwlw7x5"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "1ia3pvmyy9dlgpcn7lhvl3hlnbj3bjjlfd1gdg3bpwl1l23pbc81"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.0"; sha256 = "1y946qx7ya3kws9g005bqbr0k8hi4v7na3pfw90hvmr23g47fs5r"; })
     ];
   };
 }
diff --git a/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch
index 5a1fdc1e75fd5..a5519d96a9d26 100644
--- a/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch
+++ b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch
@@ -1,4 +1,4 @@
-From f342b6bfab5eee9c7fea9ddc8804d9a5ff6953eb Mon Sep 17 00:00:00 2001
+From 1faa30525c9671ffd3a08901896b521a040d7e5c Mon Sep 17 00:00:00 2001
 From: Nick Cao <nickcao@nichi.co>
 Date: Tue, 20 Sep 2022 18:42:08 +0800
 Subject: [PATCH 1/4] skip symlink system libraries
@@ -8,7 +8,7 @@ Subject: [PATCH 1/4] skip symlink system libraries
  1 file changed, 2 deletions(-)
 
 diff --git a/base/Makefile b/base/Makefile
-index 23a9c40..12f92aa 100644
+index 23a9c4011..12f92aa05 100644
 --- a/base/Makefile
 +++ b/base/Makefile
 @@ -181,7 +181,6 @@ $$(build_private_libdir)/$$(libname_$2):
@@ -28,5 +28,5 @@ index 23a9c40..12f92aa 100644
  endif
  
 -- 
-2.37.2
+2.38.1
 
diff --git a/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch
index 8b3da95ba915e..64c0821eaba85 100644
--- a/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch
+++ b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch
@@ -1,4 +1,4 @@
-From 6a7723be33261cdc302e0f7bdb37fb50d30cc5fc Mon Sep 17 00:00:00 2001
+From 05c008dcabaf94f5623f2f7e267005eef0a8c5fc Mon Sep 17 00:00:00 2001
 From: Nick Cao <nickcao@nichi.co>
 Date: Tue, 20 Sep 2022 18:42:31 +0800
 Subject: [PATCH 2/4] skip building doc
@@ -8,7 +8,7 @@ Subject: [PATCH 2/4] skip building doc
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile b/Makefile
-index d38311d..a775d36 100644
+index d38311dce..a775d36e1 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -227,7 +227,7 @@ define stringreplace
@@ -21,5 +21,5 @@ index d38311d..a775d36 100644
  	@$(MAKE) $(QUIET_MAKE) all
  else
 -- 
-2.37.2
+2.38.1
 
diff --git a/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch
index 2d6745c8a2154..f2b5825c0e5e0 100644
--- a/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch
+++ b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch
@@ -1,4 +1,4 @@
-From a57c582eabc4703ed627b32f7f11893db9676fb6 Mon Sep 17 00:00:00 2001
+From 756d4e977f8f224e20effa82c612e5a9cc14d82e Mon Sep 17 00:00:00 2001
 From: Nick Cao <nickcao@nichi.co>
 Date: Tue, 20 Sep 2022 18:42:59 +0800
 Subject: [PATCH 3/4] skip failing tests
@@ -8,7 +8,7 @@ Subject: [PATCH 3/4] skip failing tests
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/test/Makefile b/test/Makefile
-index 24e137a..0e82acf 100644
+index 24e137a5b..c17ccea8a 100644
 --- a/test/Makefile
 +++ b/test/Makefile
 @@ -23,7 +23,7 @@ default:
@@ -16,10 +16,10 @@ index 24e137a..0e82acf 100644
  $(TESTS):
  	@cd $(SRCDIR) && \
 -	$(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl $@)
-+	$(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl --skip LibGit2_jll --skip MozillaCACerts_jll --skip NetworkOptions --skip nghttp2_jll $@)
++	$(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl --skip LibGit2_jll --skip MozillaCACerts_jll --skip NetworkOptions --skip nghttp2_jll --skip Zlib_jll $@)
  
  $(addprefix revise-, $(TESTS)): revise-% :
  	@cd $(SRCDIR) && \
 -- 
-2.37.2
+2.38.1
 
diff --git a/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch
index eefde7c6b03bb..2243565b394eb 100644
--- a/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch
+++ b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch
@@ -1,4 +1,4 @@
-From a60100f06f48fbb4697aced65175bf3d41185e3e Mon Sep 17 00:00:00 2001
+From c0e587f4c50bd7bedfe6e5102e9b47c9704fac9b Mon Sep 17 00:00:00 2001
 From: Nick Cao <nickcao@nichi.co>
 Date: Tue, 20 Sep 2022 18:43:15 +0800
 Subject: [PATCH 4/4] ignore absolute path when loading library
@@ -8,7 +8,7 @@ Subject: [PATCH 4/4] ignore absolute path when loading library
  1 file changed, 1 insertion(+), 3 deletions(-)
 
 diff --git a/cli/loader_lib.c b/cli/loader_lib.c
-index 0301b6e..5cbda61 100644
+index 0301b6eed..5cbda61af 100644
 --- a/cli/loader_lib.c
 +++ b/cli/loader_lib.c
 @@ -50,9 +50,7 @@ static void * load_library(const char * rel_path, const char * src_dir, int err)
@@ -23,5 +23,5 @@ index 0301b6e..5cbda61 100644
  #if defined(_OS_WINDOWS_)
      wchar_t wpath[2*JL_PATH_MAX + 1] = {0};
 -- 
-2.37.2
+2.38.1
 
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index 6821fdffdb239..ab2ac8057453c 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "joker";
-  version = "1.0.2";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "sha256-u8wxyFYlqKL+NsSh+rM634MA9XsR9aJUJ+OtQ61uAFo=";
+    sha256 = "sha256-ERkK4T+nUTf18OoEctSugeK4i/f6k0naBKxzn+6pe38=";
   };
 
   vendorSha256 = "sha256-AYoespfzFLP/jIIxbw5K653wc7sSfLY8K7di8GZ64wA=";
diff --git a/pkgs/development/interpreters/lua-5/interpreter.nix b/pkgs/development/interpreters/lua-5/interpreter.nix
index d4af272e7cf61..c265785b8d85d 100644
--- a/pkgs/development/interpreters/lua-5/interpreter.nix
+++ b/pkgs/development/interpreters/lua-5/interpreter.nix
@@ -146,7 +146,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    homepage = "http://www.lua.org";
+    homepage = "https://www.lua.org";
     description = "Powerful, fast, lightweight, embeddable scripting language";
     longDescription = ''
       Lua combines simple procedural syntax with powerful data
diff --git a/pkgs/development/interpreters/scheme48/default.nix b/pkgs/development/interpreters/scheme48/default.nix
index 883b0b2f39aae..7a4178d82b15d 100644
--- a/pkgs/development/interpreters/scheme48/default.nix
+++ b/pkgs/development/interpreters/scheme48/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "1.9.2";
 
   src = fetchurl {
-    url = "http://s48.org/${version}/scheme48-${version}.tgz";
+    url = "https://s48.org/${version}/scheme48-${version}.tgz";
     sha256 = "1x4xfm3lyz2piqcw1h01vbs1iq89zq7wrsfjgh3fxnlm1slj2jcw";
   };
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "http://s48.org/";
+    homepage = "https://s48.org/";
     description = "Scheme 48 interpreter for R5RS";
     platforms = platforms.unix;
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/ada/spark2014/default.nix b/pkgs/development/libraries/ada/spark2014/default.nix
new file mode 100644
index 0000000000000..1e6157cfb9a25
--- /dev/null
+++ b/pkgs/development/libraries/ada/spark2014/default.nix
@@ -0,0 +1,71 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, gnat12
+, gnatcoll-core
+, gprbuild
+, python3
+, why3
+, ocaml
+, ocamlPackages
+, makeWrapper
+}:
+
+stdenv.mkDerivation rec {
+  pname = "spark2014";
+  version = "unstable-2022-05-25";
+
+  src = fetchFromGitHub {
+    owner = "AdaCore";
+    repo = "spark2014";
+    # commit on fsf-12 branch
+    rev = "ab34e07080a769b63beacc141707b5885c49d375";
+    sha256 = "sha256-7pe3eWitpxmqzjW6qEIEuN0qr2IR+kJ7Ssc9pTBcCD8=";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    gnat12
+    gprbuild
+    python3
+    ocaml
+    makeWrapper
+  ];
+
+  buildInputs = [
+    gnatcoll-core
+    ocamlPackages.camlzip
+    ocamlPackages.findlib
+    ocamlPackages.menhir
+    ocamlPackages.menhirLib
+    ocamlPackages.num
+    ocamlPackages.yojson
+    ocamlPackages.zarith
+  ];
+
+  postPatch = ''
+    # gnat2why/gnat_src points to the GNAT sources
+    tar xf ${gnat12.cc.src} gcc-12.2.0/gcc/ada
+    mv gcc-12.2.0/gcc/ada gnat2why/gnat_src
+  '';
+
+  configurePhase = ''
+    make setup
+  '';
+
+  postInstall = ''
+    cp -a ./install/. $out
+    # help gnatprove to locate why3server
+    wrapProgram "$out/bin/gnatprove" \
+        --prefix PATH : "${why3}/lib/why3"
+  '';
+
+  meta = with lib; {
+    description = "a software development technology specifically designed for engineering high-reliability applications";
+    homepage = "https://github.com/AdaCore/spark2014";
+    maintainers = [ maintainers.jiegec ];
+    license = licenses.gpl3;
+    platforms = platforms.all;
+  };
+}
+
diff --git a/pkgs/development/libraries/amtk/default.nix b/pkgs/development/libraries/amtk/default.nix
index 26f9e75744082..4a47ec61645ec 100644
--- a/pkgs/development/libraries/amtk/default.nix
+++ b/pkgs/development/libraries/amtk/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "amtk";
-  version = "5.5.2";
+  version = "5.6.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "x33S2PVex2tQItmW5RJ82S7GqhePo+jzP1fbukXfiIY=";
+    sha256 = "89uHl0Qqm4UGKs0LPheskSWgtIfhQhbQmwOwiEGCDrk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/catch2/3.nix b/pkgs/development/libraries/catch2/3.nix
index 9c2de74bea263..0fdfe1cbdbb3c 100644
--- a/pkgs/development/libraries/catch2/3.nix
+++ b/pkgs/development/libraries/catch2/3.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "catch2";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchFromGitHub {
     owner = "catchorg";
     repo = "Catch2";
     rev = "v${version}";
-    hash = "sha256-bp/KLTr754txVUTAauJFrsxGKgZicUEe40CZBDkxRwk=";
+    hash = "sha256-l/bqW32c1vAzE3jN01VystZXuH2ZiOQGgXkh/Mcq2eI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index 4716bb061b39a..540fe842c5a77 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -32,13 +32,13 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "gjs";
-  version = "1.74.0";
+  version = "1.74.1";
 
   outputs = [ "out" "dev" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-fWQYr2LMc1VqssJbSt9n9FI4q4kliI96VyUTWdTr7R4=";
+    sha256 = "sha256-8h+c0zN6ZypEx+ZL+ajYrXfBuIuVKythhMevmx8+9Fk=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/gtksourceview/4.x.nix b/pkgs/development/libraries/gtksourceview/4.x.nix
index b7828de45585e..315547ad38681 100644
--- a/pkgs/development/libraries/gtksourceview/4.x.nix
+++ b/pkgs/development/libraries/gtksourceview/4.x.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
-  version = "4.8.3";
+  version = "4.8.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "wwAZUGMgyiR02DTM7R4iF+pTPgDrKj9Ot4eQB5QOxoI=";
+    sha256 = "fsnRj7KD0fhKOj7/O3pysJoQycAGWXs/uru1lYQgqH0=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix
index 31bce026daa0d..2014b00b1e547 100644
--- a/pkgs/development/libraries/kde-frameworks/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/default.nix
@@ -32,7 +32,7 @@ let
   broken = lib.versionOlder libsForQt5.qtbase.version minQtVersion;
   maintainers = with lib.maintainers; [ ttuegel nyanloutre ];
   license = with lib.licenses; [
-    lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
+    lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12Plus
   ];
 
   srcs = import ./srcs.nix {
diff --git a/pkgs/development/libraries/kde-frameworks/kdav.nix b/pkgs/development/libraries/kde-frameworks/kdav.nix
index 92d57158e3209..3149c2206625d 100644
--- a/pkgs/development/libraries/kde-frameworks/kdav.nix
+++ b/pkgs/development/libraries/kde-frameworks/kdav.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kdav";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [ kcoreaddons kio qtxmlpatterns ];
diff --git a/pkgs/development/libraries/kde-frameworks/kholidays.nix b/pkgs/development/libraries/kde-frameworks/kholidays.nix
index 9484dece57ed9..81369d4ce83d3 100644
--- a/pkgs/development/libraries/kde-frameworks/kholidays.nix
+++ b/pkgs/development/libraries/kde-frameworks/kholidays.nix
@@ -7,7 +7,7 @@
 mkDerivation {
   pname = "kholidays";
   meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ];
     maintainers = with lib.maintainers; [ bkchr ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/development/libraries/libftdi/default.nix b/pkgs/development/libraries/libftdi/default.nix
index 68801883df9da..d177f7369a042 100644
--- a/pkgs/development/libraries/libftdi/default.nix
+++ b/pkgs/development/libraries/libftdi/default.nix
@@ -1,4 +1,11 @@
-{lib, stdenv, fetchurl, libusb-compat-0_1}:
+{ lib
+, stdenv
+, fetchurl
+, libusb-compat-0_1
+, Security
+, IOKit
+, libobjc
+}:
 
 stdenv.mkDerivation rec {
   pname = "libftdi";
@@ -9,7 +16,7 @@ stdenv.mkDerivation rec {
     sha256 = "13l39f6k6gff30hsgh0wa2z422g9pyl91rh8a8zz6f34k2sxaxii";
   };
 
-  buildInputs = [ libusb-compat-0_1 ];
+  buildInputs = [ libusb-compat-0_1 ] ++ lib.optionals stdenv.isDarwin [ libobjc Security IOKit ];
 
   propagatedBuildInputs = [ libusb-compat-0_1 ];
 
diff --git a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
index 06ceccb793aa5..d8948b08672c8 100644
--- a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
+++ b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmysqlconnectorcpp";
-  version = "8.0.30";
+  version = "8.0.31";
 
   src = fetchurl {
     url = "https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${version}-src.tar.gz";
-    sha256 = "sha256-WyzuvjmG/m1rDG8ptpEss6HKv5mNLExBJ0UnaN51qws=";
+    hash = "sha256-HSF7yEybmzzDQvl1cwUZ/mlXqVXxnIHqg2a/HfJtELA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libpanel/default.nix b/pkgs/development/libraries/libpanel/default.nix
index 85f7fb23b7bfa..d3ab5fc0be2dd 100644
--- a/pkgs/development/libraries/libpanel/default.nix
+++ b/pkgs/development/libraries/libpanel/default.nix
@@ -15,14 +15,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libpanel";
-  version = "1.0.1";
+  version = "1.0.2";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libpanel/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "hBtqtx6wcv1lIAI+H3Gqx/8lDGbq37sXyVXaa/QeIwY=";
+    sha256 = "pnIEOkiuIAUAl8mp+dmPKnOh7IVHgirnu6VNPMiNf+I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/log4shib/default.nix b/pkgs/development/libraries/log4shib/default.nix
index 1c9a6a1e2ac7a..e204fa92bfd1b 100644
--- a/pkgs/development/libraries/log4shib/default.nix
+++ b/pkgs/development/libraries/log4shib/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  NIX_CFLAGS_COMPILE = [ "-std=c++11" ];
+  CXXFLAGS = "-std=c++11";
 
   meta = with lib; {
     description = "A forked version of log4cpp that has been created for the Shibboleth project";
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index 5d2ad71bada8e..ad4206eedfbb4 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -75,5 +75,6 @@ stdenv.mkDerivation rec {
     license = licenses.bsd2;
     maintainers = with maintainers; [ codyopel ];
     platforms = platforms.all;
+    changelog = "https://github.com/uclouvain/openjpeg/blob/v${version}/CHANGELOG.md";
   };
 }
diff --git a/pkgs/development/libraries/qpdf/default.nix b/pkgs/development/libraries/qpdf/default.nix
index f843949b3a064..05c1a4c0d486a 100644
--- a/pkgs/development/libraries/qpdf/default.nix
+++ b/pkgs/development/libraries/qpdf/default.nix
@@ -25,10 +25,11 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with lib; {
-    homepage = "http://qpdf.sourceforge.net/";
+    homepage = "https://qpdf.sourceforge.io/";
     description = "A C++ library and set of programs that inspect and manipulate the structure of PDF files";
     license = licenses.asl20; # as of 7.0.0, people may stay at artistic2
     maintainers = with maintainers; [ abbradar ];
     platforms = platforms.all;
+    changelog = "https://github.com/qpdf/qpdf/blob/v${version}/ChangeLog";
   };
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
index 2dd9edcf5d239..db1367f6fba56 100644
--- a/pkgs/development/libraries/qt-5/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -368,7 +368,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     homepage = "https://www.qt.io/";
     description = "A cross-platform application framework for C++";
-    license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
+    license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ];
     maintainers = with maintainers; [ qknight ttuegel periklis bkchr ];
     platforms = platforms.unix;
     # Qt5 is broken on aarch64-darwin
diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix
index b74d5e0868027..9abd9fabc9576 100644
--- a/pkgs/development/libraries/qt-5/qtModule.nix
+++ b/pkgs/development/libraries/qt-5/qtModule.nix
@@ -70,7 +70,7 @@ mkDerivation (args // {
   meta = {
     homepage = "https://www.qt.io";
     description = "A cross-platform application framework for C++";
-    license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
+    license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ];
     maintainers = with maintainers; [ qknight ttuegel periklis bkchr ];
     platforms = platforms.unix;
   } // (args.meta or {});
diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix
index 8717b94545b62..436fe46330756 100644
--- a/pkgs/development/libraries/qt-6/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix
@@ -257,7 +257,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.qt.io/";
     description = "A cross-platform application framework for C++";
-    license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
+    license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ];
     maintainers = with maintainers; [ milahu nickcao LunNova ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/development/libraries/qt-6/qtModule.nix b/pkgs/development/libraries/qt-6/qtModule.nix
index 999d69ce683a9..3ef0ea191a760 100644
--- a/pkgs/development/libraries/qt-6/qtModule.nix
+++ b/pkgs/development/libraries/qt-6/qtModule.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation (args // {
   meta = with lib; {
     homepage = "https://www.qt.io/";
     description = "A cross-platform application framework for C++";
-    license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
+    license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ];
     maintainers = with maintainers; [ milahu nickcao ];
     platforms = platforms.linux;
   } // (args.meta or { });
diff --git a/pkgs/development/libraries/qt-mobility/default.nix b/pkgs/development/libraries/qt-mobility/default.nix
index 60c1d2754d70d..36e1948f09ec9 100644
--- a/pkgs/development/libraries/qt-mobility/default.nix
+++ b/pkgs/development/libraries/qt-mobility/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     homepage = "http://qt.nokia.com/products/qt-addons/mobility";
     maintainers = [ maintainers.qknight ];
     platforms = platforms.linux;
-    license = with licenses; [ bsd3 fdl13 gpl3 lgpl21 ];
+    license = with licenses; [ bsd3 fdl13Plus gpl3Plus lgpl21Plus ];
   };
 }
 
diff --git a/pkgs/development/libraries/qtforkawesome/default.nix b/pkgs/development/libraries/qtforkawesome/default.nix
index b82d5b160c31e..5af59da875df4 100644
--- a/pkgs/development/libraries/qtforkawesome/default.nix
+++ b/pkgs/development/libraries/qtforkawesome/default.nix
@@ -18,13 +18,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "qtforkawesome";
-  version = "0.0.4";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-J3F+ikz6gQqV+JsOX8EpMOWoTmI6UK5KndFALUo4oiU=";
+    sha256 = "sha256-9e2TCg3itYtHZSvzCoaiIZmgsCMIoebh6C/XWtKz/2Q=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/qtutilities/default.nix b/pkgs/development/libraries/qtutilities/default.nix
index 1fd5eed05a9be..c7365b422c974 100644
--- a/pkgs/development/libraries/qtutilities/default.nix
+++ b/pkgs/development/libraries/qtutilities/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qtutilities";
-  version = "6.8.0";
+  version = "6.10.0";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-I8VvVGlz6rQLWd7Fq0q58VFFj+EHGiwkayam2Cj3aJQ=";
+    hash = "sha256-xMuiizhOeS2UtD5OprLZb1MsjGyLd85SHcfW9Wja7tg=";
   };
 
   buildInputs = [ qtbase cpp-utilities ];
diff --git a/pkgs/development/libraries/rapidfuzz-cpp/default.nix b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
index 8310e9444aae2..9adfa1a9eb83c 100644
--- a/pkgs/development/libraries/rapidfuzz-cpp/default.nix
+++ b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rapidfuzz-cpp";
-  version = "1.10.0";
+  version = "1.10.1";
 
   src = fetchFromGitHub {
     owner = "maxbachmann";
     repo = "rapidfuzz-cpp";
     rev = "v${version}";
-    hash = "sha256-HhVkOPZ9LGoF5HSs0tOiZyUQWBwrfDTKJMc8WwGOdq8=";
+    hash = "sha256-c9ESzsDcoUw5XAEZDHdG8jazjI5Oyqic1gaT0qGQsbI=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/tepl/default.nix b/pkgs/development/libraries/tepl/default.nix
index c6c7d265ed7d9..259d596465567 100644
--- a/pkgs/development/libraries/tepl/default.nix
+++ b/pkgs/development/libraries/tepl/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tepl";
-  version = "6.1.2";
+  version = "6.2.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Cv4uyaWNT6ixBntqc0/TxzNqn/+3VyyWPFLqbYckoZs=";
+    sha256 = "jNaGXCw4GIdgyzjK4z3J4KiI+tGNCwTx1V5laqmJqEQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/misc/yelp-tools/default.nix b/pkgs/development/misc/yelp-tools/default.nix
index a58891bc333bb..088b4ccf48af8 100644
--- a/pkgs/development/misc/yelp-tools/default.nix
+++ b/pkgs/development/misc/yelp-tools/default.nix
@@ -13,13 +13,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "yelp-tools";
-  version = "42.0";
+  version = "42.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "LNQwY/+nJi3xXdjTeao+o5mdQmYfB1Y/SALaoRSfffQ=";
+    sha256 = "PklqQCDUFFuZ/VCKJfoJM2pQOk6JAAKEIecsaksR+QU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/fakeredis/default.nix b/pkgs/development/python-modules/fakeredis/default.nix
index 28c63b3e267eb..2b42454805c81 100644
--- a/pkgs/development/python-modules/fakeredis/default.nix
+++ b/pkgs/development/python-modules/fakeredis/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "fakeredis";
-  version = "1.10.0";
+  version = "1.10.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "dsoftwareinc";
     repo = "fakeredis-py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yf/rj2c481lIFJJ8t+yqZe74MN+y7HikBTnRo3lkPeQ=";
+    hash = "sha256-Tqm1p3CNU61aHhiVyP5Gt6bMxni3wvEvR3HFv328Hk0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/hahomematic/default.nix b/pkgs/development/python-modules/hahomematic/default.nix
index 39260c94b5615..183bdc734ee40 100644
--- a/pkgs/development/python-modules/hahomematic/default.nix
+++ b/pkgs/development/python-modules/hahomematic/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "2022.11.0";
+  version = "2022.11.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = pname;
     rev = "refs/tags/${version}";
-    sha256 = "sha256-fEsH5yaGI/y8Qg9WnKm8uCrwEbSwhKlF6kixS3iPVXg=";
+    sha256 = "sha256-de901mQEnJCHihrrQsVk9t8JVedff4AEKvQ45mnnauU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/hy/default.nix b/pkgs/development/python-modules/hy/default.nix
index 096e1d4aa0767..eab7e4d0638e9 100644
--- a/pkgs/development/python-modules/hy/default.nix
+++ b/pkgs/development/python-modules/hy/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "hy";
-  version = "0.24.0";
+  version = "0.25.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,8 +22,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "hylang";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-PmnYOniYqNHGTxpWuAc+zBhOsgRgMMbERHq81KpHheg=";
+    rev = "refs/tags/${version}";
+    sha256 = "sha256-V+ZtPm17ESxCGpRieGvEeO2bkwHfZQ6k9lsnDWr6pqo=";
   };
 
   # https://github.com/hylang/hy/blob/1.0a4/get_version.py#L9-L10
diff --git a/pkgs/development/python-modules/hyrule/default.nix b/pkgs/development/python-modules/hyrule/default.nix
index 201809d4538ca..8db2e54edc177 100644
--- a/pkgs/development/python-modules/hyrule/default.nix
+++ b/pkgs/development/python-modules/hyrule/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "hyrule";
-  version = "0.2";
+  version = "0.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "hylang";
     repo = pname;
     rev = "refs/tags/${version}";
-    sha256 = "sha256-/YHgJq+C5+yc+44s76OR0WELUm8KHL2xxtJmGDTChCM=";
+    sha256 = "sha256-UvLk5d1lhoXBP2y3YfxVBCoKb3PMHUeNnnbAX6iypiU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/jc/default.nix b/pkgs/development/python-modules/jc/default.nix
index 9c097335b2c3a..ae39ada5c15e9 100644
--- a/pkgs/development/python-modules/jc/default.nix
+++ b/pkgs/development/python-modules/jc/default.nix
@@ -34,5 +34,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/kellyjonbrazil/jc";
     license = licenses.mit;
     maintainers = with maintainers; [ atemu ];
+    changelog = "https://github.com/kellyjonbrazil/jc/blob/v${version}/CHANGELOG";
   };
 }
diff --git a/pkgs/development/python-modules/mpmath/default.nix b/pkgs/development/python-modules/mpmath/default.nix
index 59ebfc7091e36..e3b3223966c96 100644
--- a/pkgs/development/python-modules/mpmath/default.nix
+++ b/pkgs/development/python-modules/mpmath/default.nix
@@ -1,7 +1,9 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , setuptools-scm
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -13,12 +15,21 @@ buildPythonPackage rec {
     sha256 = "79ffb45cf9f4b101a807595bcb3e72e0396202e0b1d25d689134b48c4216a81a";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2021-29063.patch";
+      url = "https://github.com/fredrik-johansson/mpmath/commit/46d44c3c8f3244017fe1eb102d564eb4ab8ef750.patch";
+      hash = "sha256-DaZ6nj9rEsjTAomu481Ujun364bL5E6lkXFvgBfHyeA=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools-scm
   ];
 
-  # error: invalid command 'test'
-  doCheck = false;
+  checkInputs = [
+    pytestCheckHook
+  ];
 
   meta = with lib; {
     homepage    = "https://mpmath.org/";
diff --git a/pkgs/development/python-modules/pescea/default.nix b/pkgs/development/python-modules/pescea/default.nix
index d2accd221df00..4bf4f395a9070 100644
--- a/pkgs/development/python-modules/pescea/default.nix
+++ b/pkgs/development/python-modules/pescea/default.nix
@@ -52,7 +52,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
+    broken = stdenv.isDarwin;
     description = "Python interface to Escea fireplaces";
     homepage = "https://github.com/lazdavila/pescea";
     license = licenses.gpl3Plus;
diff --git a/pkgs/development/python-modules/pyshark/default.nix b/pkgs/development/python-modules/pyshark/default.nix
index cadd47ca07b16..c7b469dbf7604 100644
--- a/pkgs/development/python-modules/pyshark/default.nix
+++ b/pkgs/development/python-modules/pyshark/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchFromGitHub
 , appdirs
 , lxml
@@ -24,34 +25,36 @@ buildPythonPackage rec {
     hash = "sha256-byll2GWY2841AAf8Xh+KfaCOtMGVKabTsLCe3gCdZ1o=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "fix-mapping.patch";
+      url =
+        "https://github.com/KimiNewt/pyshark/pull/608/commits/c2feb17ef621390481d6acc29dbf807d6851ed4c.patch";
+      hash = "sha256-TY09HPxqJP3zI8+ugm518aMuBgog7wrXs5uoReHHaEI=";
+    })
+  ];
+
+  # `stripLen` does not seem to work here
+  patchFlags = "-p2";
+
   sourceRoot = "${src.name}/src";
 
-  propagatedBuildInputs = [
-    appdirs
-    py
-    lxml
-    packaging
-  ];
+  # propagate wireshark, so pyshark can find it when used
+  propagatedBuildInputs = [ appdirs py lxml packaging wireshark-cli ];
 
   preCheck = ''
     export HOME=$(mktemp -d)
   '';
 
-  checkInputs = [
-    pytestCheckHook
-    wireshark-cli
-  ];
+  checkInputs = [ pytestCheckHook wireshark-cli ];
 
-  pythonImportsCheck = [
-    "pyshark"
-  ];
+  pythonImportsCheck = [ "pyshark" ];
 
-  pytestFlagsArray = [
-    "../tests/"
-  ];
+  pytestFlagsArray = [ "../tests/" ];
 
   meta = with lib; {
-    description = "Python wrapper for tshark, allowing Python packet parsing using Wireshark dissectors";
+    description =
+      "Python wrapper for tshark, allowing Python packet parsing using Wireshark dissectors";
     homepage = "https://github.com/KimiNewt/pyshark/";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/pyunifiprotect/default.nix b/pkgs/development/python-modules/pyunifiprotect/default.nix
index d924c8c552ecf..2635a5484b642 100644
--- a/pkgs/development/python-modules/pyunifiprotect/default.nix
+++ b/pkgs/development/python-modules/pyunifiprotect/default.nix
@@ -29,7 +29,7 @@
 
 buildPythonPackage rec {
   pname = "pyunifiprotect";
-  version = "4.4.0";
+  version = "4.4.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     owner = "briis";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-2qgR9NCEIAENUatv9Bt0n7qp2md293xDTfE/U9zN1fI=";
+    hash = "sha256-lwgYvmig3yIQPcmX2suStcnzEYOXphHTRn40iJZICPs=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/qiling/default.nix b/pkgs/development/python-modules/qiling/default.nix
index fcceaa3d007fc..e47d0b9fbf29e 100644
--- a/pkgs/development/python-modules/qiling/default.nix
+++ b/pkgs/development/python-modules/qiling/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "qiling";
-  version = "1.4.3";
+  version = "1.4.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sndRKknfY3LgqUf6FOobwczIStjzZkudVgUR1EQSyeU=";
+    hash = "sha256-gtPYwmQ96+jz6XrqU0ufaN7Ht6gqrtxGrDoaTWce7/U=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/rapidfuzz/default.nix b/pkgs/development/python-modules/rapidfuzz/default.nix
index a70c006a99bfd..27cc7f80f2df1 100644
--- a/pkgs/development/python-modules/rapidfuzz/default.nix
+++ b/pkgs/development/python-modules/rapidfuzz/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "rapidfuzz";
-  version = "2.13.0";
+  version = "2.13.2";
 
   disabled = pythonOlder "3.7";
 
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "maxbachmann";
     repo = "RapidFuzz";
     rev = "refs/tags/v${version}";
-    hash = "sha256-IeH4Lk0WAQhZFBRuQobC8qOCZPJJiK5U09VYWOK9MOY=";
+    hash = "sha256-a83Vww9dEh0nNylnZwCm6PJYmfKvw5RnMLerfKfN1dY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/transitions/default.nix b/pkgs/development/python-modules/transitions/default.nix
index 24bfa14b8c4b7..42efd9d0017ab 100644
--- a/pkgs/development/python-modules/transitions/default.nix
+++ b/pkgs/development/python-modules/transitions/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , pythonAtLeast
@@ -38,6 +39,14 @@ buildPythonPackage rec {
     export HOME=$TMPDIR
   '';
 
+  # upstream issue https://github.com/pygraphviz/pygraphviz/issues/441
+  pytestFlagsArray = lib.optionals stdenv.isDarwin [
+    "--deselect=tests/test_pygraphviz.py::PygraphvizTest::test_binary_stream"
+    "--deselect=tests/test_pygraphviz.py::PygraphvizTest::test_diagram"
+    "--deselect=tests/test_pygraphviz.py::TestPygraphvizNested::test_binary_stream"
+    "--deselect=tests/test_pygraphviz.py::TestPygraphvizNested::test_diagram"
+  ];
+
   pythonImportsCheck = [
     "transitions"
   ];
diff --git a/pkgs/development/python-modules/types-python-dateutil/default.nix b/pkgs/development/python-modules/types-python-dateutil/default.nix
index 4ac603bc8d127..c08117d2ad4a0 100644
--- a/pkgs/development/python-modules/types-python-dateutil/default.nix
+++ b/pkgs/development/python-modules/types-python-dateutil/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-python-dateutil";
-  version = "2.8.19.2";
+  version = "2.8.19.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-5uMs4Y83dlsIxGYiKHvI2BNtwMVi2a1bj9FYxZlj16c=";
+    hash = "sha256-oxMoTfXtP9B4MDJi7cDv3iiZjNCOUGHvHMwLtf700to=";
   };
 
   # Modules doesn't have tests
diff --git a/pkgs/development/python-modules/types-requests/default.nix b/pkgs/development/python-modules/types-requests/default.nix
index 2b1f4d1380ce6..ba8193a2f8882 100644
--- a/pkgs/development/python-modules/types-requests/default.nix
+++ b/pkgs/development/python-modules/types-requests/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-requests";
-  version = "2.28.11.2";
+  version = "2.28.11.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/c170UgTn7ju9yz0pBrHJzhyytnmraFLEf9d/e7mDtM=";
+    sha256 = "sha256-vpAHr/sX8KCbtI532xi7bgvp+CYJx48drm2zAlnXIdY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-urllib3/default.nix b/pkgs/development/python-modules/types-urllib3/default.nix
index 328d1720d8450..7b667e0df56e0 100644
--- a/pkgs/development/python-modules/types-urllib3/default.nix
+++ b/pkgs/development/python-modules/types-urllib3/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-urllib3";
-  version = "1.26.25.1";
+  version = "1.26.25.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qUhYSUSyQSyadLnPZPbEjK+GUsuIs4NhMW9tFdihhM0=";
+    hash = "sha256-o6UQ22CbNjZwzGLtt2WYuCcL001OsvbJ8IjQ59gZbWs=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/uvloop/default.nix b/pkgs/development/python-modules/uvloop/default.nix
index c7b1d8103dd2a..fafc027337a0e 100644
--- a/pkgs/development/python-modules/uvloop/default.nix
+++ b/pkgs/development/python-modules/uvloop/default.nix
@@ -69,6 +69,9 @@ buildPythonPackage rec {
     "--deselect=tests/test_tcp.py::Test_UV_TCPSSL::test_shutdown_timeout_handler_not_set"
     # Broken: https://github.com/NixOS/nixpkgs/issues/160904
     "--deselect=tests/test_context.py::Test_UV_Context::test_create_ssl_server_manual_connection_lost"
+    # Flaky test: https://github.com/MagicStack/uvloop/issues/513
+    "--deselect=tests/test_tcp.py::Test_UV_TCP::test_create_server_5"
+    "--deselect=tests/test_tcp.py::Test_UV_TCP::test_create_server_6"
   ];
 
   disabledTestPaths = [
diff --git a/pkgs/development/tools/allure/default.nix b/pkgs/development/tools/allure/default.nix
index 8a7adc122e9b1..07ca36be34e45 100644
--- a/pkgs/development/tools/allure/default.nix
+++ b/pkgs/development/tools/allure/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "allure";
-  version = "2.20.0";
+  version = "2.20.1";
 in
 stdenv.mkDerivation rec {
   inherit pname version;
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/allure-framework/allure2/releases/download/${version}/allure-${version}.tgz";
-    sha256 = "sha256-NTDG0mG2qyOrUSRSm59ybXiJd6pSoSq+xE9or8YRMw8=";
+    sha256 = "sha256-nq7PY4CVSqfuTzN7ZDChTfYalYKb4uBG8ZnIBd7ernI=";
   };
   dontConfigure = true;
   dontBuild = true;
diff --git a/pkgs/development/tools/memray/default.nix b/pkgs/development/tools/memray/default.nix
index e1d9fa8c48f65..5d37c5dc09903 100644
--- a/pkgs/development/tools/memray/default.nix
+++ b/pkgs/development/tools/memray/default.nix
@@ -66,5 +66,6 @@ python3.pkgs.buildPythonApplication rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ fab ];
     platforms = platforms.linux;
+    changelog = "https://github.com/bloomberg/memray/releases/tag/v${version}";
   };
 }
diff --git a/pkgs/development/tools/misc/universal-ctags/default.nix b/pkgs/development/tools/misc/universal-ctags/default.nix
index 362c1cbcb9d05..02d5a4e549da2 100644
--- a/pkgs/development/tools/misc/universal-ctags/default.nix
+++ b/pkgs/development/tools/misc/universal-ctags/default.nix
@@ -38,13 +38,13 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs = [
-    libseccomp
     libyaml
     pcre2
     libxml2
     jansson
   ]
-  ++ lib.optional stdenv.isDarwin libiconv;
+  ++ lib.optional stdenv.isDarwin libiconv
+  ++ lib.optional stdenv.isLinux libseccomp;
 
   configureFlags = [ "--enable-tmpdir=/tmp" ];
 
diff --git a/pkgs/development/tools/parsing/byacc/default.nix b/pkgs/development/tools/parsing/byacc/default.nix
index 90bd3f38c3b6b..d3a3cd702319e 100644
--- a/pkgs/development/tools/parsing/byacc/default.nix
+++ b/pkgs/development/tools/parsing/byacc/default.nix
@@ -1,15 +1,20 @@
-{ lib, stdenv, fetchurl }:
+{ lib
+, stdenv
+, fetchurl
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "byacc";
-  version = "20220128";
+  version = "20221106";
 
   src = fetchurl {
-    urls = [
-      "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
+    urls = let
+      inherit (finalAttrs) pname version;
+    in [
       "https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz"
+      "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
     ];
-    sha256 = "sha256-QsGAXMUpMU5qdjJv4bM+gMcIYqRLAUdNo2Li99stdJw=";
+    hash = "sha256-qJm+Inu8rJz3cA99u1qElGiPH58GF7UQdi2urOR7nRI=";
   };
 
   configureFlags = [
@@ -23,9 +28,22 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "Berkeley YACC";
     homepage = "https://invisible-island.net/byacc/byacc.html";
+    description = "Berkeley YACC";
+    longDescription = ''
+      Berkeley Yacc (byacc) is generally conceded to be the best yacc variant
+      available. In contrast to bison, it is written to avoid dependencies upon
+      a particular compiler.
+
+      Byacc was written around 1990 by Robert Corbett who is the original author
+      of bison. Byacc is noted in Lex & Yacc by John Levine et al (O'Reilly,
+      1992) for its compatibility with the original yacc program.
+
+      Nowadays byacc is maintained by Thomas E. Dickey.
+    '';
+    changelog = "https://invisible-island.net/byacc/CHANGES.html";
     license = licenses.publicDomain;
+    maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/development/tools/rust/cargo-audit/default.nix b/pkgs/development/tools/rust/cargo-audit/default.nix
index 9dcf6b22d530a..1b8ecc57e242d 100644
--- a/pkgs/development/tools/rust/cargo-audit/default.nix
+++ b/pkgs/development/tools/rust/cargo-audit/default.nix
@@ -9,14 +9,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-audit";
-  version = "0.17.3";
+  version = "0.17.4";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-8L2E8Gj34n0aVfP3XVdm5+zHbHw7Ayg9Ptb/igdVr2U=";
+    sha256 = "sha256-tglBtgjhZmeZTE8X6wNGI9CS3OsbHxTlPJVN4wjXVgs=";
   };
 
-  cargoSha256 = "sha256-h0MnJPD1zxkfAvcsrKuR5eJK68mXi+TIIZqutBiBEaM=";
+  cargoSha256 = "sha256-THoV87GpTuFhO/Qo37n4oascQK/tCaFUa8G2MKxrz+k=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-generate/default.nix b/pkgs/development/tools/rust/cargo-generate/default.nix
index 8064de4d2b3d0..bc15e0f0f083e 100644
--- a/pkgs/development/tools/rust/cargo-generate/default.nix
+++ b/pkgs/development/tools/rust/cargo-generate/default.nix
@@ -10,19 +10,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-generate";
-  version = "0.16.0";
+  version = "0.17.2";
 
   src = fetchFromGitHub {
     owner = "cargo-generate";
     repo = "cargo-generate";
     rev = "v${version}";
-    sha256 = "sha256-qL5ZbLimpsi/7yuhubHF3/tAouE/5zCWRx4nZG841cU=";
+    sha256 = "sha256-so69T2mDq/nFGiug2zYIX6Z+Dhxk3riV+TkEYTpFrTg=";
   };
 
   # patch Cargo.toml to not vendor libgit2 and openssl
   cargoPatches = [ ./no-vendor.patch ];
 
-  cargoSha256 = "sha256-OB3rjJNxkUKRQPsWRvCniNPfYBgLFV4yXO7dnVvL7wo=";
+  cargoSha256 = "sha256-JRoD6SuGQPJ8HOePXrH3avIY+sW61ErZFOHLafqmxMY=";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -39,14 +39,13 @@ rustPlatform.buildRustPackage rec {
   # - favorites_default_to_git_if_not_defined: requires network access to github.com
   # - should_canonicalize: the test assumes that it will be called from the /Users/<project_dir>/ folder on darwin variant.
   checkFlags = [
-      "--skip favorites::favorites_default_to_git_if_not_defined"
-      # Probably git 2.38.1 releated failure
-      # Upstream issue https://github.com/cargo-generate/cargo-generate/issues/777
-      "--skip basics::it_loads_a_submodule"
-    ] ++ lib.optionals stdenv.isDarwin [ "--skip git::utils::should_canonicalize" ];
+    "--skip=favorites::favorites_default_to_git_if_not_defined"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "--skip=git::utils::should_canonicalize"
+  ];
 
   meta = with lib; {
-    description = "cargo, make me a project";
+    description = "A tool to generaet a new Rust project by leveraging a pre-existing git repository as a template";
     homepage = "https://github.com/cargo-generate/cargo-generate";
     changelog = "https://github.com/cargo-generate/cargo-generate/blob/v${version}/CHANGELOG.md";
     license = with licenses; [ asl20 /* or */ mit ];
diff --git a/pkgs/development/tools/rust/cargo-generate/no-vendor.patch b/pkgs/development/tools/rust/cargo-generate/no-vendor.patch
index 0c3b18de211cd..b7788d3d656cc 100644
--- a/pkgs/development/tools/rust/cargo-generate/no-vendor.patch
+++ b/pkgs/development/tools/rust/cargo-generate/no-vendor.patch
@@ -3,9 +3,9 @@
 @@ -10,7 +10,7 @@ include = ["src/**/*", "LICENSE-*", "*.md"]
  
  [dependencies]
- clap = { version = "3.2", features = ["derive", "std"], default-features = false }
--git2 = { version = "0.14", features = ["ssh", "https", "vendored-libgit2", "vendored-openssl"], default-features = false }
-+git2 = { version = "0.14", features = ["ssh", "https"], default-features = false }
+ clap = { version = "4.0", features = ["derive", "std", "help"], default-features = false }
+-git2 = { version = "0.15", features = ["ssh", "https", "vendored-libgit2", "vendored-openssl"], default-features = false }
++git2 = { version = "0.15", features = ["ssh", "https"], default-features = false }
  console = "0.15"
  dialoguer = "0.10"
  dirs = "4.0"
diff --git a/pkgs/development/tools/sumneko-lua-language-server/default.nix b/pkgs/development/tools/sumneko-lua-language-server/default.nix
index 4b5c85a6cf8bd..cd473c714271e 100644
--- a/pkgs/development/tools/sumneko-lua-language-server/default.nix
+++ b/pkgs/development/tools/sumneko-lua-language-server/default.nix
@@ -4,13 +4,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "sumneko-lua-language-server";
-  version = "3.5.6";
+  version = "3.6.1";
 
   src = fetchFromGitHub {
     owner = "sumneko";
     repo = "lua-language-server";
     rev = version;
-    sha256 = "sha256-S07/N6Cq/YG0kS2riPI8wy/fOxPHkMrGqpmUd+ymwJ0=";
+    sha256 = "sha256-jlx2Tn5NuHq7OFHPHOknZfLAbQanWLMTsw7wO1SJOkk=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/zed/default.nix b/pkgs/development/tools/zed/default.nix
index 743adb5615331..1eafbaab016c0 100644
--- a/pkgs/development/tools/zed/default.nix
+++ b/pkgs/development/tools/zed/default.nix
@@ -23,5 +23,6 @@ buildGoModule rec {
     homepage = "https://github.com/brimdata/zed";
     license = licenses.bsd3;
     maintainers = with maintainers; [ dit7ya ];
+    changelog = "https://github.com/brimdata/zed/blob/v${version}/CHANGELOG.md";
   };
 }
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index cae2c870efc52..df1b4deb0300c 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -17,15 +17,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.27.1";
+  version = "1.27.2";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HlaCssoDySmjLqvsILnE8+SZc0oHtD0SvgjmT0hUPvs=";
+    sha256 = "sha256-YDlZYYKibq8eAeGkU1qtTrJC0UF4YOK7XzkxWZjoQhM=";
   };
-  cargoSha256 = "sha256-iP9TPWQlZGLrpRIMnySqiy2LX2y5XXfWqBbSrSQ+BD4=";
+  cargoSha256 = "sha256-3mXjAD4kzAaiFkK9XFEy7Df+ko6jHfWAle7gAoHxb7E=";
 
   postPatch = ''
     # upstream uses lld on aarch64-darwin for faster builds
diff --git a/pkgs/games/itch/butler.nix b/pkgs/games/itch/butler.nix
index 68f1bac49e903..d6d9075997a32 100644
--- a/pkgs/games/itch/butler.nix
+++ b/pkgs/games/itch/butler.nix
@@ -1,6 +1,9 @@
 { lib
 , buildGoModule
 , fetchFromGitHub
+, stdenv
+, Cocoa
+, fetchpatch
 }:
 
 buildGoModule rec {
@@ -14,9 +17,21 @@ buildGoModule rec {
     sha256 = "sha256-vciSmXR3wI3KcnC+Uz36AgI/WUfztA05MJv1InuOjJM=";
   };
 
+  buildInputs = lib.optionals stdenv.isDarwin [
+    Cocoa
+  ];
+
+  patches = [
+    # update x/sys dependency for darwin build https://github.com/itchio/butler/pull/245
+    (fetchpatch {
+      url = "https://github.com/itchio/butler/pull/245/commits/ef651d373e3061fda9692dd44ae0f7ce215e9655.patch";
+      hash = "sha256-rZZn/OGiv3mRyy89uORyJ99zWN21kZCCQAlFvSKxlPU=";
+    })
+  ];
+
   proxyVendor = true;
 
-  vendorSha256 = "sha256-EIl0ZFDKbZopUR22hp5a2vRUu0O1h1O953NrtoNa2x8=";
+  vendorSha256 = "sha256-CtBwc5mcgLvl2Bvg5gI+ULJMQEEibx1aN3IpmRNUtwE=";
 
   doCheck = false;
 
diff --git a/pkgs/games/sil/default.nix b/pkgs/games/sil/default.nix
index 7d446a684aae0..8455d35f7b7c3 100644
--- a/pkgs/games/sil/default.nix
+++ b/pkgs/games/sil/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   version = "1.3.0";
 
   src = fetchzip {
-    url = "http://www.amirrorclear.net/flowers/game/sil/Sil-130-src.zip";
+    url = "https://www.amirrorclear.net/flowers/game/sil/Sil-130-src.zip";
     sha256 = "1amp2mr3fxascra0k76sdsvikjh8g76nqh46kka9379zd35lfq8w";
     stripRoot = false;
   };
diff --git a/pkgs/games/tetrio-desktop/default.nix b/pkgs/games/tetrio-desktop/default.nix
index 93d80314c6619..221f0160ca95a 100644
--- a/pkgs/games/tetrio-desktop/default.nix
+++ b/pkgs/games/tetrio-desktop/default.nix
@@ -2,16 +2,20 @@
 , lib
 , fetchurl
 , autoPatchelfHook
+, wrapGAppsHook
 , alsa-lib
 , cups
-, libpulseaudio
 , libX11
 , libXScrnSaver
 , libXtst
 , mesa
 , nss
+, gtk3
+, libpulseaudio
 , systemd
-, wrapGAppsHook
+, callPackage
+, withTetrioPlus ? false
+, tetrio-plus ? callPackage ./tetrio-plus.nix { }
 }:
 
 stdenv.mkDerivation rec {
@@ -37,19 +41,13 @@ stdenv.mkDerivation rec {
     libXtst
     mesa
     nss
+    gtk3
   ];
 
   dontWrapGApps = true;
 
   libPath = lib.makeLibraryPath [
-    alsa-lib
-    cups
     libpulseaudio
-    libX11
-    libXScrnSaver
-    libXtst
-    mesa
-    nss
     systemd
   ];
 
@@ -61,15 +59,25 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    cp -R $TMP/tetrio-desktop/{usr/share,opt} $out/
-
-    wrapProgram $out/opt/TETR.IO/tetrio-desktop \
-      --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/TETR.IO
+    runHook preInstall
 
+    cp -R $TMP/tetrio-desktop/{usr/share,opt} $out/
     ln -s $out/opt/TETR.IO/tetrio-desktop $out/bin/
 
     substituteInPlace $out/share/applications/tetrio-desktop.desktop \
       --replace "Exec=\"/opt/TETR.IO/tetrio-desktop\"" "Exec=\"$out/opt/TETR.IO/tetrio-desktop\""
+
+    runHook postInstall
+  '';
+
+  postInstall = lib.strings.optionalString withTetrioPlus ''
+      cp ${tetrio-plus} $out/opt/TETR.IO/resources/app.asar
+    '';
+
+  postFixup = ''
+    wrapProgram $out/opt/TETR.IO/tetrio-desktop \
+      --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/TETR.IO \
+      ''${gappsWrapperArgs[@]}
   '';
 
   meta = with lib; {
diff --git a/pkgs/games/tetrio-desktop/tetrio-plus.nix b/pkgs/games/tetrio-desktop/tetrio-plus.nix
new file mode 100644
index 0000000000000..e8daf4d0fbe96
--- /dev/null
+++ b/pkgs/games/tetrio-desktop/tetrio-plus.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchzip }:
+
+stdenv.mkDerivation rec {
+  pname = "tetrio-plus";
+  version = "0.23.13";
+
+  src = fetchzip {
+    url = "https://gitlab.com/UniQMG/tetrio-plus/uploads/a9647feffc484304ee49c4d3fd4ce718/tetrio-plus_0.23.13_app.asar.zip";
+    sha256 = "sha256-NSOVZjm4hDXH3f0gFG8ijLmdUTyMRFYGhxpwysoYIVg=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    install app.asar $out
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "TETR.IO customization toolkit";
+    homepage = "https://gitlab.com/UniQMG/tetrio-plus";
+    license = licenses.mit;
+    maintainers = with maintainers; [ huantian ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/games/the-powder-toy/default.nix b/pkgs/games/the-powder-toy/default.nix
index 41fb91812539c..2901f42e095e2 100644
--- a/pkgs/games/the-powder-toy/default.nix
+++ b/pkgs/games/the-powder-toy/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A free 2D physics sandbox game";
-    homepage = "http://powdertoy.co.uk/";
+    homepage = "https://powdertoy.co.uk/";
     platforms = platforms.unix;
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ abbradar siraben ];
diff --git a/pkgs/os-specific/linux/nvidia-x11/open.nix b/pkgs/os-specific/linux/nvidia-x11/open.nix
index 3e21dade83ae2..b3d0d876aec62 100644
--- a/pkgs/os-specific/linux/nvidia-x11/open.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/open.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
     description = "NVIDIA Linux Open GPU Kernel Module";
     homepage = "https://github.com/NVIDIA/open-gpu-kernel-modules";
     license = with licenses; [ gpl2Plus mit ];
-    platforms = platforms.linux;
+    platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ nickcao ];
     inherit broken;
   };
diff --git a/pkgs/servers/hqplayerd/add-option-for-installation-sysconfdir.patch b/pkgs/servers/hqplayerd/add-option-for-installation-sysconfdir.patch
new file mode 100644
index 0000000000000..d2319ec13ed3e
--- /dev/null
+++ b/pkgs/servers/hqplayerd/add-option-for-installation-sysconfdir.patch
@@ -0,0 +1,35 @@
+diff --git a/meson.build b/meson.build
+index 8af2fcf9..0e318307 100644
+--- a/meson.build
++++ b/meson.build
+@@ -22,7 +22,11 @@ if not get_option('uninstalled')
+     rygel_datadir = join_paths(get_option('prefix'), get_option('datadir'), 'rygel')
+     rygel_libexecdir = join_paths(get_option('prefix'), get_option('libexecdir'),
+     'rygel')
+-    rygel_sysconfdir = join_paths(get_option('prefix'), get_option('sysconfdir'))
++    if get_option('sysconfdir_install') != ''
++        rygel_sysconfdir = join_paths(get_option('prefix'), get_option('sysconfdir_install'))
++    else
++        rygel_sysconfdir = join_paths(get_option('prefix'), get_option('sysconfdir'))
++    endif
+     rygel_plugindir = join_paths(rygel_libdir, 'rygel-2.6', 'plugins')
+     rygel_enginedir = join_paths(rygel_libdir, 'rygel-2.6', 'engines')
+     rygel_presetdir = join_paths(rygel_datadir, 'presets')
+@@ -57,7 +61,7 @@ conf.set_quoted('DATA_DIR', rygel_datadir)
+ conf.set_quoted('PLUGIN_DIR', rygel_plugindir)
+ conf.set_quoted('BIG_ICON_DIR', rygel_bigicondir)
+ conf.set_quoted('SMALL_ICON_DIR', rygel_smallicondir)
+-conf.set_quoted('SYS_CONFIG_DIR', rygel_sysconfdir)
++conf.set_quoted('SYS_CONFIG_DIR', get_option('sysconfdir'))
+ conf.set_quoted('LOCALEDIR', join_paths(get_option('prefix'), get_option('localedir')))
+ conf.set_quoted('MX_EXTRACT_PATH', join_paths(rygel_libexecdir, 'mx-extract'))
+ conf.set_quoted('DESKTOP_DIR', join_paths(get_option('prefix'), get_option('datadir'), 'applications'))
+diff --git a/meson_options.txt b/meson_options.txt
+index fd04776a..3dee43ba 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,4 @@
++option('sysconfdir_install', type: 'string', value: '', description: 'sysconfdir to use during installation')
+ option('uninstalled', type: 'boolean', value: 'false', description: 'Run Rygel from build directory only')
+ option('api-docs', type: 'boolean', value: 'false', description: 'Build the API documentation')
+ option('man_pages', type: 'boolean', value: 'true', description: 'Build the man pages')
diff --git a/pkgs/servers/hqplayerd/default.nix b/pkgs/servers/hqplayerd/default.nix
index 37b60ce56aaf1..1b312218aeda8 100644
--- a/pkgs/servers/hqplayerd/default.nix
+++ b/pkgs/servers/hqplayerd/default.nix
@@ -6,27 +6,33 @@
 , fetchurl
 , flac
 , gcc12
-, gnome
 , gssdp
 , gupnp
 , gupnp-av
 , lame
 , libgmpris
 , libusb-compat-0_1
-, llvmPackages_10
+, llvmPackages_14
 , meson
 , mpg123
 , ninja
 , rpmextract
 , wavpack
-}:
+
+, callPackage
+, rygel ? null
+}@inputs:
+let
+  # FIXME: Replace with gnome.rygel once hqplayerd releases a new version.
+  rygel-hqplayerd = inputs.rygel or (callPackage ./rygel.nix { });
+in
 stdenv.mkDerivation rec {
   pname = "hqplayerd";
-  version = "4.32.4-94sse42";
+  version = "4.33.0-96sse42";
 
   src = fetchurl {
     url = "https://www.signalyst.eu/bins/${pname}/fc36/${pname}-${version}.fc36.x86_64.rpm";
-    hash = "sha256-hTckJdZzD/Sx/uV30dlGiT46QvzIGp6BQdNNRlQ/Mgw=";
+    hash = "sha256-4gPK31XMd5JUp2+il1Qa7r0EaXVGEvKoYLNGSD2dLUs=";
   };
 
   unpackPhase = ''
@@ -40,14 +46,14 @@ stdenv.mkDerivation rec {
     cairo
     flac
     gcc12.cc.lib
-    gnome.rygel
+    rygel-hqplayerd
     gssdp
     gupnp
     gupnp-av
     lame
     libgmpris
     libusb-compat-0_1
-    llvmPackages_10.openmp
+    llvmPackages_14.openmp
     mpg123
     wavpack
   ];
@@ -106,6 +112,10 @@ stdenv.mkDerivation rec {
     $out/bin/hqplayerd --version
   '';
 
+  passthru = {
+    rygel = rygel-hqplayerd;
+  };
+
   meta = with lib; {
     homepage = "https://www.signalyst.com/custom.html";
     description = "High-end upsampling multichannel software embedded HD-audio player";
diff --git a/pkgs/servers/hqplayerd/rygel.nix b/pkgs/servers/hqplayerd/rygel.nix
new file mode 100644
index 0000000000000..c09fb5450f3f7
--- /dev/null
+++ b/pkgs/servers/hqplayerd/rygel.nix
@@ -0,0 +1,108 @@
+{ lib, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, vala
+, gettext
+, libxml2
+, gobject-introspection
+, wrapGAppsHook
+, python3
+, glib
+, gssdp
+, gupnp
+, gupnp-av
+, gupnp-dlna
+, gst_all_1
+, libgee
+, libsoup
+, gtk3
+, libmediaart
+, sqlite
+, systemd
+, tracker
+, shared-mime-info
+, gnome
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rygel";
+  version = "0.40.4";
+
+  # TODO: split out lib
+  outputs = [ "out" "dev" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "c22K2+hhX2y8j8//mEXcmF/RDhZinaI2tLUtvt8KNIs=";
+  };
+
+  patches = [
+    ./add-option-for-installation-sysconfdir.patch
+  ];
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    vala
+    gettext
+    libxml2
+    gobject-introspection
+    wrapGAppsHook
+    python3
+  ];
+
+  buildInputs = [
+    glib
+    gssdp
+    gupnp
+    gupnp-av
+    gupnp-dlna
+    libgee
+    libsoup
+    gtk3
+    libmediaart
+    sqlite
+    systemd
+    tracker
+    shared-mime-info
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-editing-services
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
+    gst-plugins-ugly
+  ]);
+
+  mesonFlags = [
+    "-Dsystemd-user-units-dir=${placeholder "out"}/lib/systemd/user"
+    "-Dapi-docs=false"
+    "--sysconfdir=/etc"
+    "-Dsysconfdir_install=${placeholder "out"}/etc"
+  ];
+
+  doCheck = true;
+
+  postPatch = ''
+    patchShebangs data/xml/process-xml.py
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "gnome.${pname}";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "A home media solution (UPnP AV MediaServer) that allows you to easily share audio, video and pictures to other devices";
+    homepage = "https://wiki.gnome.org/Projects/Rygel";
+    license = licenses.lgpl21Plus;
+    maintainers = teams.gnome.members;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index b669950c5c144..8004993a2094e 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -9,13 +9,13 @@
 
 buildDotnetModule rec {
   pname = "jackett";
-  version = "0.20.2175";
+  version = "0.20.2225";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "MkMEsD8hU23RPvLJvEN2IT5BiuE1ySuVRLmPK2Yqsa0=";
+    sha256 = "HrI0B5gvN/UC9TmErwsmRc85aqCXfYYEQfPkRchHY5Q=";
   };
 
   projectFile = "src/Jackett.Server/Jackett.Server.csproj";
diff --git a/pkgs/servers/keycloak/config_vars.patch b/pkgs/servers/keycloak/config_vars.patch
new file mode 100644
index 0000000000000..be2d54790c2b6
--- /dev/null
+++ b/pkgs/servers/keycloak/config_vars.patch
@@ -0,0 +1,15 @@
+diff --git a/quarkus/dist/src/main/content/bin/kc.sh b/quarkus/dist/src/main/content/bin/kc.sh
+index d7be862cde..16f9aa78e0 100644
+--- a/bin/kc.sh
++++ b/bin/kc.sh
+@@ -32,8 +32,8 @@ abs_path () {
+   fi
+ }
+ 
+-SERVER_OPTS="-Dkc.home.dir='$(abs_path '..')'"
+-SERVER_OPTS="$SERVER_OPTS -Djboss.server.config.dir='$(abs_path '../conf')'"
++SERVER_OPTS="-Dkc.home.dir=$KC_HOME_DIR"
++SERVER_OPTS="$SERVER_OPTS -Djboss.server.config.dir=$KC_CONF_DIR"
+ SERVER_OPTS="$SERVER_OPTS -Djava.util.logging.manager=org.jboss.logmanager.LogManager"
+ SERVER_OPTS="$SERVER_OPTS -Dquarkus-log-max-startup-records=10000"
+ CLASSPATH_OPTS="'$(abs_path "../lib/quarkus-run.jar"):$(abs_path "../lib/bootstrap/*")'"
diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix
index 373a6d03d9de7..d4ec9d6e9ed7d 100644
--- a/pkgs/servers/keycloak/default.nix
+++ b/pkgs/servers/keycloak/default.nix
@@ -13,15 +13,21 @@
 
 stdenv.mkDerivation rec {
   pname = "keycloak";
-  version = "19.0.2";
+  version = "20.0.0";
 
   src = fetchzip {
     url = "https://github.com/keycloak/keycloak/releases/download/${version}/keycloak-${version}.zip";
-    sha256 = "sha256-Ze9VE2gtLxoZpyqbeisvHdOu8yFPwAKnDMpfA3FXWy8=";
+    sha256 = "sha256-dJueuXKv3GoDnaQnvYMzIJJSr+NNSYgS7KY3MTGE37Y=";
   };
 
   nativeBuildInputs = [ makeWrapper jre ];
 
+  patches = [
+    # Make home.dir and config.dir configurable through the
+    # KC_HOME_DIR and KC_CONF_DIR environment variables.
+    ./config_vars.patch
+  ];
+
   buildPhase = ''
     runHook preBuild
   '' + lib.optionalString (confFile != null) ''
@@ -37,6 +43,8 @@ stdenv.mkDerivation rec {
     ${lib.concatMapStringsSep "\n" (pl: "install_plugin ${lib.escapeShellArg pl}") plugins}
   '' + ''
     patchShebangs bin/kc.sh
+    export KC_HOME_DIR=$(pwd)
+    export KC_CONF_DIR=$(pwd)/conf
     bin/kc.sh build
 
     runHook postBuild
@@ -54,9 +62,6 @@ stdenv.mkDerivation rec {
   '';
 
   postFixup = ''
-    substituteInPlace $out/bin/kc.sh --replace ${lib.escapeShellArg "-Dkc.home.dir='$DIRNAME'/../"} '-Dkc.home.dir=$KC_HOME_DIR'
-    substituteInPlace $out/bin/kc.sh --replace ${lib.escapeShellArg "-Djboss.server.config.dir='$DIRNAME'/../conf"} '-Djboss.server.config.dir=$KC_CONF_DIR'
-
     for script in $(find $out/bin -type f -executable); do
       wrapProgram "$script" --set JAVA_HOME ${jre} --prefix PATH : ${jre}/bin
     done
diff --git a/pkgs/servers/matrix-synapse/tools/synadm.nix b/pkgs/servers/matrix-synapse/tools/synadm.nix
index 5075e42e710b1..776a88833e222 100644
--- a/pkgs/servers/matrix-synapse/tools/synadm.nix
+++ b/pkgs/servers/matrix-synapse/tools/synadm.nix
@@ -4,12 +4,12 @@
 
 with python3Packages; buildPythonApplication rec {
   pname = "synadm";
-  version = "0.36";
+  version = "0.37.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-OMXUbfAC927qJw0B5sq1lGJQRkFAUdohIOkCYUbZumI=";
+    sha256 = "sha256-6RlgPiYxbnTGJBpNIM1dzAuGTbvydnXkfywSsI0G/oc=";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/monitoring/grafana-agent/default.nix b/pkgs/servers/monitoring/grafana-agent/default.nix
index a44fbb7f4231f..28cfbaa94cbf1 100644
--- a/pkgs/servers/monitoring/grafana-agent/default.nix
+++ b/pkgs/servers/monitoring/grafana-agent/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "grafana-agent";
-  version = "0.28.1";
+  version = "0.29.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "grafana";
     repo = "agent";
-    sha256 = "sha256-KeajXEeaTrLObgLrIyI2MJK+ap8zIdZ/jIQuVaF4ojg=";
+    sha256 = "sha256-6CnYoUECT6vcQw2v7GLRzOtlL4tKKpz4VADuz9MxseM=";
   };
 
-  vendorSha256 = "sha256-UEQYZbP3dzi7wZwX+InJrgHrFB1wfSUNmUMkit+Y1Lo=";
+  vendorSha256 = "sha256-FSxkldMYMmyjVv6UYeZlceygkfKFzZK2udeUNBbpYnc=";
 
   ldflags = let
     prefix = "github.com/grafana/agent/pkg/build";
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index 23558f7f760e0..a6ae94bf74ac9 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "9.2.3";
+  version = "9.2.4";
 
   excludedPackages = [ "alert_webhook_listener" "clean-swagger" "release_publisher" "slow_proxy" "slow_proxy_mac" "macaron" "devenv" ];
 
@@ -10,12 +10,12 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "sha256-aqCGFgrODOdSJtvYDTygHsPhi5ON4fkpmFSnPZgR26U=";
+    sha256 = "sha256-kiKMyfwQi7rULTH+AVA0O+dBz4AvZcHVi9mWN4kOt5Y=";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "sha256-m2pgRXxaXLRRl5iwfPuLqHEsxhuaCfSFCKSAKAYk9J8=";
+    sha256 = "sha256-lNnL6ggSCpxRwp3+ZsjIXvgXrwOzzrULuxsrsu47wHs=";
   };
 
   vendorSha256 = "sha256-2DO0eAKSJzavOKKHIl3beQhBhuARm7ccwwDODPByL4Y=";
diff --git a/pkgs/servers/nitter/default.nix b/pkgs/servers/nitter/default.nix
index 8005b78df53fe..77edac169fb80 100644
--- a/pkgs/servers/nitter/default.nix
+++ b/pkgs/servers/nitter/default.nix
@@ -2,6 +2,7 @@
 , fetchFromGitHub
 , nimPackages
 , nixosTests
+, substituteAll
 }:
 
 nimPackages.buildNimPackage rec {
@@ -15,6 +16,15 @@ nimPackages.buildNimPackage rec {
     hash = "sha256-fdzVfzmEFIej6Kb/K9MQyvbN8aN3hO7RetHL53cD59k=";
   };
 
+  patches = [
+    (substituteAll {
+      src = ./nitter-version.patch;
+      inherit version;
+      inherit (src) rev;
+      url = builtins.replaceStrings [ "archive" ".tar.gz" ] [ "commit" "" ] src.url;
+    })
+  ];
+
   buildInputs = with nimPackages; [
     flatty
     jester
diff --git a/pkgs/servers/nitter/nitter-version.patch b/pkgs/servers/nitter/nitter-version.patch
new file mode 100644
index 0000000000000..94c78ad2d2949
--- /dev/null
+++ b/pkgs/servers/nitter/nitter-version.patch
@@ -0,0 +1,17 @@
+diff --git a/src/views/about.nim b/src/views/about.nim
+index e7e8de9..54a6050 100644
+--- a/src/views/about.nim
++++ b/src/views/about.nim
+@@ -3,10 +3,8 @@ import os, strformat
+ import karax/[karaxdsl, vdom]
+ 
+ const
+-  date = staticExec("git show -s --format=\"%cd\" --date=format:\"%Y.%m.%d\"")
+-  hash = staticExec("git show -s --format=\"%h\"")
+-  link = "https://github.com/zedeus/nitter/commit/" & hash
+-  version = &"{date}-{hash}"
++  link = "@url@"
++  version = "@version@-@rev@"
+ 
+ var aboutHtml: string
+ 
diff --git a/pkgs/servers/plex/raw.nix b/pkgs/servers/plex/raw.nix
index bd7c96a56bdd1..77f2a5bb8e0eb 100644
--- a/pkgs/servers/plex/raw.nix
+++ b/pkgs/servers/plex/raw.nix
@@ -12,16 +12,16 @@
 # server, and the FHS userenv and corresponding NixOS module should
 # automatically pick up the changes.
 stdenv.mkDerivation rec {
-  version = "1.29.1.6316-f4cdfea9c";
+  version = "1.29.2.6364-6d72b0cf6";
   pname = "plexmediaserver";
 
   # Fetch the source
   src = if stdenv.hostPlatform.system == "aarch64-linux" then fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_arm64.deb";
-    sha256 = "sha256-FiUeZFIeXk27VQY99d2a98iBQgy7ESKd0HvYRclQHq8=";
+    sha256 = "sha256-rd8xnCRniDt6BoOo40g95EwgAT+lFpAOlYHlLAGn9Yc=";
   } else fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_amd64.deb";
-    sha256 = "sha256-6VSYQO6KmbAC4vlU3McF4QmuJIopBVB7aV5bpNqOSv0=";
+    sha256 = "sha256-6wLfhA1kPVWgREFJnhByewe4u4HCHbj8LY94+piewzE=";
   };
 
   outputs = [ "out" "basedb" ];
diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix
index 2dc2c3230a82c..95b89093a8801 100644
--- a/pkgs/servers/uwsgi/default.nix
+++ b/pkgs/servers/uwsgi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, nixosTests, lib, fetchurl, pkg-config, jansson, pcre, libxcrypt
+{ stdenv, nixosTests, lib, pkg-config, jansson, pcre, libxcrypt
 # plugins: list of strings, eg. [ "python2" "python3" ]
 , plugins ? []
 , pam, withPAM ? stdenv.isLinux
@@ -6,6 +6,7 @@
 , libcap, withCap ? stdenv.isLinux
 , python2, python3, ncurses
 , ruby, php
+, makeWrapper, fetchFromGitHub
 }:
 
 let php-embed = php.override {
@@ -59,20 +60,21 @@ in
 
 stdenv.mkDerivation rec {
   pname = "uwsgi";
-  version = "2.0.20";
+  version = "2.0.21";
 
-  src = fetchurl {
-    url = "https://projects.unbit.it/downloads/${pname}-${version}.tar.gz";
-    sha256 = "1yfz5h07rxzrqf1rdj5fzhk47idgglxj7kqr8zl8lgcpv1kriaw8";
+  src = fetchFromGitHub {
+    owner = "unbit";
+    repo = "uwsgi";
+    rev = version;
+    sha256 = "sha256-TUASYDyG+p1tlhmqi+ivaC7aW6UZBrPTFQUTYys5ICE=";
   };
 
   patches = [
         ./no-ext-session-php_session.h-on-NixOS.patch
         ./additional-php-ldflags.patch
-        ./missing-arginfo-php8.patch # https://github.com/unbit/uwsgi/issues/2356
   ];
 
-  nativeBuildInputs = [ python3 pkg-config ];
+  nativeBuildInputs = [ python3 pkg-config makeWrapper ];
 
   buildInputs =  [ jansson pcre libxcrypt ]
               ++ lib.optional withPAM pam
@@ -126,6 +128,11 @@ stdenv.mkDerivation rec {
     ${lib.concatMapStringsSep "\n" (x: x.install or "") needed}
   '';
 
+  postFixup = lib.optionalString (builtins.any (x: x.name == "php") needed)
+  ''
+    wrapProgram $out/bin/uwsgi --set PHP_INI_SCAN_DIR ${php-embed}/lib
+  '';
+
   meta = with lib; {
     homepage = "https://uwsgi-docs.readthedocs.org/en/latest/";
     description = "A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C";
diff --git a/pkgs/servers/uwsgi/missing-arginfo-php8.patch b/pkgs/servers/uwsgi/missing-arginfo-php8.patch
deleted file mode 100644
index 98a924e402797..0000000000000
--- a/pkgs/servers/uwsgi/missing-arginfo-php8.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c
-index ca0ef6c1..00c39b09 100644
---- a/plugins/php/php_plugin.c
-+++ b/plugins/php/php_plugin.c
-@@ -257,6 +257,9 @@ PHP_MINIT_FUNCTION(uwsgi_php_minit) {
- 	return SUCCESS;
- }
- 
-+ZEND_BEGIN_ARG_INFO_EX(arginfo_void, 0, 0, 0)
-+ZEND_END_ARG_INFO()
-+
- PHP_FUNCTION(uwsgi_version) {
- 	RETURN_STRING(UWSGI_VERSION);
- }
-@@ -488,20 +491,20 @@ PHP_FUNCTION(uwsgi_signal) {
- }
- 
- zend_function_entry uwsgi_php_functions[] = {
--	PHP_FE(uwsgi_version,   NULL)
--	PHP_FE(uwsgi_setprocname,   NULL)
--	PHP_FE(uwsgi_worker_id,   NULL)
--	PHP_FE(uwsgi_masterpid,   NULL)
--	PHP_FE(uwsgi_signal,   NULL)
--
--	PHP_FE(uwsgi_rpc,   NULL)
--
--	PHP_FE(uwsgi_cache_get,   NULL)
--	PHP_FE(uwsgi_cache_set,   NULL)
--	PHP_FE(uwsgi_cache_update,   NULL)
--	PHP_FE(uwsgi_cache_del,   NULL)
--	PHP_FE(uwsgi_cache_clear,   NULL)
--	PHP_FE(uwsgi_cache_exists,   NULL)
-+	PHP_FE(uwsgi_version,   arginfo_void)
-+	PHP_FE(uwsgi_setprocname,   arginfo_void)
-+	PHP_FE(uwsgi_worker_id,   arginfo_void)
-+	PHP_FE(uwsgi_masterpid,   arginfo_void)
-+	PHP_FE(uwsgi_signal,   arginfo_void)
-+
-+	PHP_FE(uwsgi_rpc,   arginfo_void)
-+
-+	PHP_FE(uwsgi_cache_get,   arginfo_void)
-+	PHP_FE(uwsgi_cache_set,   arginfo_void)
-+	PHP_FE(uwsgi_cache_update,   arginfo_void)
-+	PHP_FE(uwsgi_cache_del,   arginfo_void)
-+	PHP_FE(uwsgi_cache_clear,   arginfo_void)
-+	PHP_FE(uwsgi_cache_exists,   arginfo_void)
- 	{ NULL, NULL, NULL},
- };
- 
diff --git a/pkgs/servers/varnish/default.nix b/pkgs/servers/varnish/default.nix
index 26ab8ac6d8d39..68d43313db244 100644
--- a/pkgs/servers/varnish/default.nix
+++ b/pkgs/servers/varnish/default.nix
@@ -53,17 +53,12 @@ in
 {
   # EOL TBA
   varnish60 = common {
-    version = "6.0.10";
-    hash = "sha256-a4W/dI7jeaoI43UE+G6tS6fgzEDqsXI8CUv+Wh4HJus=";
-  };
-  # EOL 2023-03-15. TODO: remove ahead of 22.11 release? if not, remove for 23.05
-  varnish71 = common {
-    version = "7.1.1";
-    hash = "sha256-LK++JZDn1Yp7rIrZm+kuRA/k04raaBbdiDbyL6UToZA=";
+    version = "6.0.11";
+    hash = "sha256-UVkA2+tH/9MOs5BlyuAzFnmD7Pm9A6lDWic2B+HRKNs=";
   };
   # EOL 2023-09-15
   varnish72 = common {
-    version = "7.2.0";
-    hash = "sha256-HaipftX3t9TV4E/FyW/JqFyzog0HbrorGJUfSzBsloY=";
+    version = "7.2.1";
+    hash = "sha256-TZN9FyCo7BnFM/ly2TA6HJiJt7/KdDeJOuXCfPIEqUA=";
   };
 }
diff --git a/pkgs/servers/varnish/packages.nix b/pkgs/servers/varnish/packages.nix
index fa5ec507d406a..71a7af2426f5d 100644
--- a/pkgs/servers/varnish/packages.nix
+++ b/pkgs/servers/varnish/packages.nix
@@ -1,4 +1,4 @@
-{ callPackages, callPackage, varnish60, varnish71, varnish72, fetchFromGitHub }: {
+{ callPackages, callPackage, varnish60, varnish72, fetchFromGitHub }: {
   varnish60Packages = rec {
     varnish = varnish60;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules15;
@@ -13,20 +13,6 @@
       sha256 = "1n94slrm6vn3hpymfkla03gw9603jajclg84bjhwb8kxsk3rxpmk";
     };
   };
-  varnish71Packages = rec {
-    varnish = varnish71;
-    modules = (callPackages ./modules.nix { inherit varnish; }).modules20;
-    digest  = callPackage ./digest.nix {
-      inherit varnish;
-      version = "6.6";
-      sha256 = "0n33g8ml4bsyvcvl5lk7yng1ikvmcv8dd6bc1mv2lj4729pp97nn";
-    };
-    dynamic = callPackage ./dynamic.nix  {
-      inherit varnish;
-      version = "2.4.0";
-      sha256 = "1g53zblyxi1jivwppmpdqhi5xnzapsfib453sxyqbc5dfs7fijxr";
-    };
-  };
   varnish72Packages = rec {
     varnish = varnish72;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules20;
diff --git a/pkgs/servers/web-apps/wiki-js/default.nix b/pkgs/servers/web-apps/wiki-js/default.nix
index 5bb14577bd732..16c60fa8e73fb 100644
--- a/pkgs/servers/web-apps/wiki-js/default.nix
+++ b/pkgs/servers/web-apps/wiki-js/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wiki-js";
-  version = "2.5.290";
+  version = "2.5.291";
 
   src = fetchurl {
     url = "https://github.com/Requarks/wiki/releases/download/v${version}/${pname}.tar.gz";
-    sha256 = "sha256-5vr8rD4gGeMoSPAQnIGzKLu63S9Latw5n4Dz0sD81is=";
+    sha256 = "sha256-6calNW0IVjL484BssHAu+QwVUdQ7dTvcoSgk8jqckwk=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/shells/nushell/default.nix b/pkgs/shells/nushell/default.nix
index c8645262b20ea..4da72442edc9a 100644
--- a/pkgs/shells/nushell/default.nix
+++ b/pkgs/shells/nushell/default.nix
@@ -24,16 +24,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nushell";
-  version = "0.70.0";
+  version = "0.71.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-krsycaqT+MmpWEVNVqQQO2zrO9ymZIskgGgrzEMFP1s=";
+    sha256 = "sha256-81vyW5GovBnH3tLr77V2uLIkigymF+nOZ0F/J4eEu9Q=";
   };
 
-  cargoSha256 = "sha256-Etw8F5alUNMlH0cvREPk2LdBQKl70dj6JklFZWInvow=";
+  cargoSha256 = "sha256-A7MvyAQpd05uSkTw2fgQAN45dqku1RWYag5LIkS6GnY=";
 
   # enable pkg-config feature of zstd
   cargoPatches = [ ./zstd-pkg-config.patch ];
diff --git a/pkgs/tools/admin/bubblewrap/default.nix b/pkgs/tools/admin/bubblewrap/default.nix
index 92a188b0cb61b..e02162b1f5489 100644
--- a/pkgs/tools/admin/bubblewrap/default.nix
+++ b/pkgs/tools/admin/bubblewrap/default.nix
@@ -50,5 +50,6 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ dotlambda ];
     platforms = platforms.linux;
+    mainProgram = "bwrap";
   };
 }
diff --git a/pkgs/tools/admin/turbovnc/default.nix b/pkgs/tools/admin/turbovnc/default.nix
index af833487c8224..9204d54ab129e 100644
--- a/pkgs/tools/admin/turbovnc/default.nix
+++ b/pkgs/tools/admin/turbovnc/default.nix
@@ -137,5 +137,6 @@ stdenv.mkDerivation rec {
     description = "High-speed version of VNC derived from TightVNC";
     maintainers = with lib.maintainers; [ nh2 ];
     platforms = with lib.platforms; linux;
+    changelog = "https://github.com/TurboVNC/turbovnc/blob/${version}/ChangeLog.md";
   };
 }
diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix
index 3be3865ccd071..54ed84f7a81e6 100644
--- a/pkgs/tools/filesystems/squashfs/default.nix
+++ b/pkgs/tools/filesystems/squashfs/default.nix
@@ -66,5 +66,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ruuda ];
+    mainProgram = "mksquashfs";
   };
 }
diff --git a/pkgs/tools/graphics/zbar/default.nix b/pkgs/tools/graphics/zbar/default.nix
index b75df56e43277..d3c4003741e3e 100644
--- a/pkgs/tools/graphics/zbar/default.nix
+++ b/pkgs/tools/graphics/zbar/default.nix
@@ -98,5 +98,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     license = licenses.lgpl21;
     homepage = "https://github.com/mchehab/zbar";
+    mainProgram = "zbarimg";
   };
 }
diff --git a/pkgs/tools/misc/ddccontrol/default.nix b/pkgs/tools/misc/ddccontrol/default.nix
index f89626c55ffd9..0f45361e3db68 100644
--- a/pkgs/tools/misc/ddccontrol/default.nix
+++ b/pkgs/tools/misc/ddccontrol/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ddccontrol";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "ddccontrol";
     repo = "ddccontrol";
     rev = version;
-    sha256 = "00pmnzvd4l3w6chzw41mrf1pd7lrcwi1n7320bnq20rn8hsnbnxk";
+    sha256 = "sha256-En2e0FDKLpMjuxa2aXuvI6h7d+D1D5x1dDg96924/qM=";
   };
 
   nativeBuildInputs = [
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
 
     substituteInPlace src/ddcpci/Makefile.am    \
        --replace "chmod 4711" "chmod 0711"
-  '' + lib.optionalString (lib.versionAtLeast "0.6.0" version) ''
+  '' + lib.optionalString (lib.versionAtLeast "0.6.1" version) ''
     # Upstream PR: https://github.com/ddccontrol/ddccontrol/pull/115
     substituteInPlace src/lib/Makefile.am       \
       --replace "/etc/" "\$""{sysconfdir}/"
diff --git a/pkgs/tools/misc/ddcutil/default.nix b/pkgs/tools/misc/ddcutil/default.nix
index b61f396dc4df7..7bf751652d4ec 100644
--- a/pkgs/tools/misc/ddcutil/default.nix
+++ b/pkgs/tools/misc/ddcutil/default.nix
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ rnhmjoj ];
+    changelog = "https://github.com/rockowitz/ddcutil/blob/v${version}/CHANGELOG.md";
   };
 }
 
diff --git a/pkgs/tools/misc/ethminer/add-global-context.patch b/pkgs/tools/misc/ethminer/add-global-context.patch
deleted file mode 100644
index f0891e5a27588..0000000000000
--- a/pkgs/tools/misc/ethminer/add-global-context.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/libethcore/CMakeLists.txt b/libethcore/CMakeLists.txt
-index 1a53de8..832e926 100644
---- a/libethcore/CMakeLists.txt
-+++ b/libethcore/CMakeLists.txt
-@@ -7,7 +7,7 @@ set(SOURCES
- include_directories(BEFORE ..)
- 
- add_library(ethcore ${SOURCES})
--target_link_libraries(ethcore PUBLIC devcore ethash::ethash PRIVATE hwmon)
-+target_link_libraries(ethcore PUBLIC devcore ethash::ethash ethash-global-context PRIVATE hwmon)
- 
- if(ETHASHCL)
- 	target_link_libraries(ethcore PRIVATE ethash-cl)
-diff --git a/libethcore/EthashAux.h b/libethcore/EthashAux.h
-index d9aadc7..fe5c6cf 100644
---- a/libethcore/EthashAux.h
-+++ b/libethcore/EthashAux.h
-@@ -22,6 +22,7 @@
- #include <libdevcore/Worker.h>
- 
- #include <ethash/ethash.hpp>
-+#include <ethash/global_context.hpp>
- 
- namespace dev
- {
diff --git a/pkgs/tools/misc/ethminer/default.nix b/pkgs/tools/misc/ethminer/default.nix
deleted file mode 100644
index 32d1c5500b806..0000000000000
--- a/pkgs/tools/misc/ethminer/default.nix
+++ /dev/null
@@ -1,94 +0,0 @@
-{
-  lib,
-  stdenv,
-  fetchpatch,
-  fetchFromGitHub,
-  opencl-headers,
-  cmake,
-  jsoncpp,
-  boost16x,
-  makeWrapper,
-  cudatoolkit,
-  cudaSupport,
-  mesa,
-  ethash,
-  opencl-info,
-  ocl-icd,
-  openssl,
-  pkg-config,
-  cli11
-}:
-
-stdenv.mkDerivation rec {
-  pname = "ethminer";
-  version = "0.19.0";
-
-  src =
-    fetchFromGitHub {
-      owner = "ethereum-mining";
-      repo = "ethminer";
-      rev = "v${version}";
-      sha256 = "1kyff3vx2r4hjpqah9qk99z6dwz7nsnbnhhl6a76mdhjmgp1q646";
-      fetchSubmodules = true;
-    };
-
-  patches = [
-    # global context library is separated from libethash
-    ./add-global-context.patch
-
-    # CUDA 11 no longer support SM30
-    (fetchpatch {
-      url = "https://github.com/ethereum-mining/ethminer/commit/dae359dff28f376d4ce7ddfbd651dcd34d6dad8f.patch";
-      hash = "sha256-CJGKc0rXOcKDX1u5VBzc8gyBi1Me9CNATfQzKViqtAA=";
-    })
-  ];
-
-  postPatch = ''
-    sed -i 's/_lib_static//' libpoolprotocols/CMakeLists.txt
-  '';
-
-  # NOTE: dbus is broken
-  cmakeFlags = [
-    "-DHUNTER_ENABLED=OFF"
-    "-DETHASHCUDA=ON"
-    "-DAPICORE=ON"
-    "-DETHDBUS=OFF"
-    "-DCMAKE_BUILD_TYPE=Release"
-  ] ++ (if cudaSupport then [
-    "-DCUDA_PROPAGATE_HOST_FLAGS=off"
-  ] else [
-    "-DETHASHCUDA=OFF" # on by default
-  ]);
-
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-    makeWrapper
-  ];
-
-  buildInputs = [
-    cli11
-    boost16x # 1.7x support is broken, see https://github.com/ethereum-mining/ethminer/issues/2393
-    opencl-headers
-    mesa
-    ethash
-    opencl-info
-    ocl-icd
-    openssl
-    jsoncpp
-  ] ++ lib.optionals cudaSupport [
-    cudatoolkit
-  ];
-
-  postInstall = ''
-    wrapProgram $out/bin/ethminer --prefix LD_LIBRARY_PATH : /run/opengl-driver/lib
-  '';
-
-  meta = with lib; {
-    description = "Ethereum miner with OpenCL${lib.optionalString cudaSupport ", CUDA"} and stratum support";
-    homepage = "https://github.com/ethereum-mining/ethminer";
-    platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ atemu ];
-    license = licenses.gpl3Only;
-  };
-}
diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix
index 5c0059881763e..919099e8e41fa 100644
--- a/pkgs/tools/misc/skim/default.nix
+++ b/pkgs/tools/misc/skim/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "skim";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-gC4/oQpK9m6/p1DY2Kabk5l7vsS9iafW3E5dgO723B8=";
+    sha256 = "sha256-LkPkwYsaSLfaZktHF23Fgaks+fDlbB1S6SRgXtJRBqQ=";
   };
 
   outputs = [ "out" "vim" ];
 
-  cargoSha256 = "sha256-aNEfKHpNWDHebioUkEq6D0aL3Jf9NQXBuoWvpB7uO5U=";
+  cargoSha256 = "sha256-lG26dgvjqCZ/4KgzurMrlhl+JKec+xLt/5uA6XcsSPk=";
 
   postPatch = ''
     sed -i -e "s|expand('<sfile>:h:h')|'$out'|" plugin/skim.vim
diff --git a/pkgs/tools/misc/tldr/default.nix b/pkgs/tools/misc/tldr/default.nix
index bd521238ca8c1..33e1cda1df587 100644
--- a/pkgs/tools/misc/tldr/default.nix
+++ b/pkgs/tools/misc/tldr/default.nix
@@ -28,7 +28,8 @@ stdenv.mkDerivation rec {
       tldr pages gives common use cases for commands, so you don't need to hunt
       through a man page for the correct flags.
     '';
-    homepage = "http://tldr-pages.github.io";
+    homepage = "https://tldr-pages.github.io";
+    changelog = "https://github.com/tldr-pages/tldr-c-client/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ taeer carlosdagos ];
     platforms = platforms.all;
diff --git a/pkgs/tools/misc/tremor-rs/default.nix b/pkgs/tools/misc/tremor-rs/default.nix
index 3277036d068b7..f626afb70cc41 100644
--- a/pkgs/tools/misc/tremor-rs/default.nix
+++ b/pkgs/tools/misc/tremor-rs/default.nix
@@ -1,18 +1,29 @@
-{ lib, rustPlatform, pkg-config, cmake, llvmPackages, openssl, fetchFromGitHub
-, installShellFiles, stdenv, Security, libiconv }:
+{ lib
+, rustPlatform
+, pkg-config
+, cmake
+, llvmPackages
+, openssl
+, fetchFromGitHub
+, installShellFiles
+, stdenv
+, Security
+, libiconv
+, protobuf
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "tremor";
-  version = "0.11.6";
+  version = "0.12.4";
 
   src = fetchFromGitHub {
     owner = "tremor-rs";
     repo = "tremor-runtime";
     rev = "v${version}";
-    sha256 = "1ldqa4q7q9afrbjh7adinav21zsh26pqqvrd6q9542r90mxnygmx";
+    sha256 = "sha256-+cN+nMDMX4rxjs1VQnSgjBvCsjxxAd13otp9qd21SYo=";
   };
 
-  cargoSha256 = "0ivxd5mhvcpzv9wf859vwyiq1s0bbd9vdk6fy6m81bn5ykihx7ar";
+  cargoSha256 = "sha256-MthdQXZPIOOd5A2bJO4p49e74s76M1HruLxLWbvog4I=";
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles ];
 
@@ -35,14 +46,32 @@ rustPlatform.buildRustPackage rec {
   # OPENSSL_NO_VENDOR - If set, always find OpenSSL in the system, even if the vendored feature is enabled.
   OPENSSL_NO_VENDOR = 1;
 
+  # needed for internal protobuf c wrapper library
+  PROTOC = "${protobuf}/bin/protoc";
+  PROTOC_INCLUDE = "${protobuf}/include";
+
+  checkFlags = [
+    # all try to make a network access
+    "--skip=connectors::tests::http::server::https_server_test"
+    "--skip=connectors::tests::tcp::client::tls_client"
+    "--skip=connectors::tests::udp::udp_no_bind"
+    "--skip=connectors::tests::ws::ws_client_bad_config"
+    "--skip=connectors::tests::ws::wss_server_binary_routing"
+    "--skip=connectors::tests::ws::wss_server_text_routing"
+    "--skip=connectors::utils::tls::tests::client_config"
+  ];
+
   cargoBuildFlags = [ "-p tremor-cli" ];
 
   meta = with lib; {
     broken = stdenv.isDarwin;
-    description = "Early stage event processing system for unstructured data with rich support for structural pattern matching, filtering and transformation";
+    description = ''
+      Early stage event processing system for unstructured data with rich
+      support for structural pattern matching, filtering and transformation
+    '';
     homepage = "https://www.tremor.rs/";
     license = licenses.asl20;
     platforms = platforms.x86_64;
-    maintainers = with maintainers; [ humancalico ];
+    maintainers = with maintainers; [ humancalico happysalada ];
   };
 }
diff --git a/pkgs/tools/networking/lychee/default.nix b/pkgs/tools/networking/lychee/default.nix
index c27bb2a9ba314..0064c8e5870ed 100644
--- a/pkgs/tools/networking/lychee/default.nix
+++ b/pkgs/tools/networking/lychee/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lychee";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "lycheeverse";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2osBY7hO0v6fnKrOCYTbO45Ja0UHMoaXZeR1QIp2fT8=";
+    sha256 = "sha256-GePP4BvOxaLOyF+UNXqcbCtKWeeIcXYIs6zLi+7efVY=";
   };
 
-  cargoSha256 = "sha256-j+Pykcg9ezLJl4wH31tiLqmAkvQd9go+6wyUmBRTgTs=";
+  cargoSha256 = "sha256-QZDoZNY1ZyWRTeIxRdbTNg5NVDzBtEKGroTzaYRWt1w=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/networking/mozillavpn/default.nix b/pkgs/tools/networking/mozillavpn/default.nix
index 4b7f63855bb23..d8641cb29d947 100644
--- a/pkgs/tools/networking/mozillavpn/default.nix
+++ b/pkgs/tools/networking/mozillavpn/default.nix
@@ -21,26 +21,38 @@
 
 let
   pname = "mozillavpn";
-  version = "2.9.0";
+  version = "2.10.1";
   src = fetchFromGitHub {
     owner = "mozilla-mobile";
     repo = "mozilla-vpn-client";
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-arz8hTgQfPFSZesSddcnZoyLfoLQsQT8LIsl+3ZfA0M=";
+    hash = "sha256-am2acceDig7tjhkO5GiWfvkq0Mabyxedbc8mR49SXBU=";
   };
 
   netfilter-go-modules = (buildGoModule {
     inherit pname version src;
-    vendorSha256 = "KFYMim5U8WlJHValvIBQgEN+17SDv0JVbH03IiyfDc0=";
     modRoot = "linux/netfilter";
+    vendorHash = "sha256-Cmo0wnl0z5r1paaEf1MhCPbInWeoMhGjnxCxGh0cyO8=";
   }).go-modules;
 
-  cargoRoot = "extension/bridge";
+  extensionBridgeDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}-extension-bridge";
+    preBuild = "cd extension/bridge";
+    hash = "sha256-sw6iylh3SgCDA1z/xvwNGWrCU2xr7IVPUL4fdOi43lc=";
+  };
+
+  signatureDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}-signature";
+    preBuild = "cd signature";
+    hash = "sha256-gBJIzTTo6i415aHwUsBriokUt2K/r55QCpC6Tv8GXh4=";
+  };
 
 in
 stdenv.mkDerivation {
-  inherit pname version src cargoRoot;
+  inherit pname version src;
 
   buildInputs = [
     polkit
@@ -65,12 +77,18 @@ stdenv.mkDerivation {
     wrapQtAppsHook
   ];
 
-  cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src;
-    name = "${pname}-${version}";
-    preBuild = "cd ${cargoRoot}";
-    hash = "sha256-lJfDLyoVDSFiZyWcBTI085MorWHPcNW4i7ua1+Ip3rA=";
-  };
+  postUnpack = ''
+    pushd source/extension/bridge
+    cargoDeps='${extensionBridgeDeps}' cargoSetupPostUnpackHook
+    extensionBridgeDepsCopy="$cargoDepsCopy"
+    popd
+
+    pushd source/signature
+    cargoDeps='${signatureDeps}' cargoSetupPostUnpackHook
+    signatureDepsCopy="$cargoDepsCopy"
+    popd
+  '';
+  dontCargoSetupPostUnpack = true;
 
   postPatch = ''
     for file in linux/*.service linux/extra/*.desktop src/platforms/linux/daemon/*.service; do
@@ -82,12 +100,28 @@ stdenv.mkDerivation {
       --replace 'rcc = os.path.join(qtbinpath, rcc_bin)' 'rcc = "${qtbase.dev}/libexec/rcc"'
 
     substituteInPlace src/cmake/linux.cmake \
+      --replace '/etc/xdg/autostart' "$out/etc/xdg/autostart" \
+      --replace '${"$"}{POLKIT_POLICY_DIR}' "$out/share/polkit-1/actions" \
+      --replace '/usr/share/dbus-1' "$out/share/dbus-1" \
       --replace '${"$"}{SYSTEMD_UNIT_DIR}' "$out/lib/systemd/system"
 
+    substituteInPlace extension/CMakeLists.txt \
+      --replace '/etc' "$out/etc"
+
     substituteInPlace src/connectionbenchmark/benchmarktaskdownload.cpp \
       --replace 'QT_VERSION >= 0x060400' 'false'
 
     ln -s '${netfilter-go-modules}' linux/netfilter/vendor
+
+    pushd extension/bridge
+    cargoDepsCopy="$extensionBridgeDepsCopy" cargoSetupPostPatchHook
+    popd
+
+    pushd signature
+    cargoDepsCopy="$signatureDepsCopy" cargoSetupPostPatchHook
+    popd
+
+    cargoSetupPostPatchHook() { true; }
   '';
 
   cmakeFlags = [
@@ -95,6 +129,7 @@ stdenv.mkDerivation {
     "-DQT_LUPDATE_EXECUTABLE=${qttools.dev}/bin/lupdate"
     "-DQT_LRELEASE_EXECUTABLE=${qttools.dev}/bin/lrelease"
   ];
+  dontFixCmake = true;
 
   qtWrapperArgs =
     [ "--prefix" "PATH" ":" (lib.makeBinPath [ wireguard-tools ]) ];
diff --git a/pkgs/tools/security/b2sum/default.nix b/pkgs/tools/security/b2sum/default.nix
index c915361ff2097..c209fa82edb62 100644
--- a/pkgs/tools/security/b2sum/default.nix
+++ b/pkgs/tools/security/b2sum/default.nix
@@ -2,15 +2,15 @@
 
 with lib;
 
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs: {
   pname = "b2sum";
-  version = "unstable-2018-06-11";
+  version = "20190724";
 
   src = fetchFromGitHub {
     owner = "BLAKE2";
     repo = "BLAKE2";
-    rev = "320c325437539ae91091ce62efec1913cd8093c2";
-    sha256 = "E60M9oP/Sdfg/L3ZxUcDtUXhFz9oP72IybdtVUJh9Sk=";
+    rev = finalAttrs.version;
+    sha256 = "sha256-6BVl3Rh+CRPQq3QxcUlk5ArvjIj/IcPCA2/Ok0Zu7UI=";
   };
 
   # Use the generic C implementation rather than the SSE optimised version on non-x86 platforms
@@ -34,4 +34,4 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ kirelagin ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/tools/system/nvtop/default.nix b/pkgs/tools/system/nvtop/default.nix
index 2240d72235ff8..621d51a4a55c8 100644
--- a/pkgs/tools/system/nvtop/default.nix
+++ b/pkgs/tools/system/nvtop/default.nix
@@ -63,5 +63,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ willibutz gbtb ];
+    mainProgram = "nvtop";
   };
 }
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index b778cc11bab01..3ced5f6e26d53 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -601,6 +601,7 @@ mapAliases ({
   hardlink = throw "hardlink was merged into util-linux since 2019-06-14."; # Added 2022-08-12
   inherit (harePackages) hare harec; # Added 2022-08-10
   hawkthorne = throw "hawkthorne has been removed because it depended on a broken version of love"; # Added 2022-01-15
+  hdr-plus = throw "hdr-plus has been removed because it is unmaintained, often breaks and no longer consumed as a dependency"; # Added 2022-11-08
   heapster = throw "Heapster is now retired. See https://github.com/kubernetes-retired/heapster/blob/master/docs/deprecation.md"; # Added 2022-04-05
   heimdalFull = throw "'heimdalFull' has been renamed to/replaced by 'heimdal'"; # Converted to throw 2022-02-22
   heme = throw "heme has been removed: upstream is gone"; # added 2022-02-06
@@ -1527,6 +1528,7 @@ mapAliases ({
   varnish63 = throw "varnish63 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release"; # Added 2021-07-26
   varnish65 = throw "varnish65 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release"; # Added 2021-09-15
   varnish70 = throw "varnish70 was removed from nixpkgs, because it was superseded upstream. Please switch to a different release"; # Added 2022-03-17
+  varnish71 = throw "varnish71 was removed from nixpkgs, because it was superseded upstream. Please switch to a different release"; # Added 2022-11-08
   vdirsyncerStable  = vdirsyncer; # Added 2020-11-08, see https://github.com/NixOS/nixpkgs/issues/103026#issuecomment-723428168
   venus = throw "venus has been removed from nixpkgs, as it's unmaintained"; # Added 2021-02-05
   vgo2nix = throw "vgo2nix has been removed, because it was deprecated. Consider using gomod2nix instead"; # added 2022-08-24
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2a98d12919884..582e53e03f668 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1285,7 +1285,9 @@ with pkgs;
 
   asleap = callPackage ../tools/networking/asleap { };
 
-  butler = callPackage ../games/itch/butler.nix { };
+  butler = callPackage ../games/itch/butler.nix {
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
+  };
 
   cf-vault = callPackage ../tools/admin/cf-vault { };
 
@@ -5389,10 +5391,6 @@ with pkgs;
 
   ethash = callPackage ../development/libraries/ethash { };
 
-  ethminer = callPackage ../tools/misc/ethminer { cudaSupport = config.cudaSupport or true; };
-  ethminer-cuda = ethminer.override { cudaSupport = true; };
-  ethminer-free = ethminer.override { cudaSupport = false; };
-
   cuetools = callPackage ../tools/cd-dvd/cuetools { };
 
   u3-tool = callPackage ../tools/filesystems/u3-tool { };
@@ -8792,6 +8790,14 @@ with pkgs;
   nodejs_latest = nodejs-19_x;
   nodejs-slim_latest = nodejs-slim-19_x;
 
+  buildNpmPackage = callPackage ../build-support/node/build-npm-package { };
+
+  npmHooks = callPackage ../build-support/node/build-npm-package/hooks { };
+
+  inherit (callPackage ../build-support/node/fetch-npm-deps {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  }) fetchNpmDeps prefetch-npm-deps;
+
   nodePackages_latest = dontRecurseIntoAttrs nodejs_latest.pkgs;
 
   nodePackages = dontRecurseIntoAttrs nodejs.pkgs;
@@ -12832,11 +12838,11 @@ with pkgs;
   valum = callPackage ../development/web/valum { };
 
   inherit (callPackages ../servers/varnish { })
-    varnish60 varnish71 varnish72;
+    varnish60 varnish72;
   inherit (callPackages ../servers/varnish/packages.nix { })
-    varnish60Packages varnish71Packages varnish72Packages;
+    varnish60Packages varnish72Packages;
 
-  varnishPackages = varnish71Packages;
+  varnishPackages = varnish72Packages;
   varnish = varnishPackages.varnish;
 
   hitch = callPackage ../servers/hitch { };
@@ -15980,6 +15986,8 @@ with pkgs;
 
   sparkleshare = callPackage ../applications/version-management/sparkleshare { };
 
+  spark2014 = callPackage ../development/libraries/ada/spark2014 { };
+
   spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix {
     inherit (darwin) libobjc;
   };
@@ -20273,7 +20281,10 @@ with pkgs;
     inherit (darwin) libobjc;
   };
 
-  libftdi = callPackage ../development/libraries/libftdi { };
+  libftdi = callPackage ../development/libraries/libftdi {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
 
   libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { };
 
@@ -20408,9 +20419,7 @@ with pkgs;
 
   libmysofa = callPackage ../development/libraries/audio/libmysofa { };
 
-  libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp {
-    openssl = openssl_1_1;
-  };
+  libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp {};
 
   libnatpmp = callPackage ../development/libraries/libnatpmp { };
 
@@ -27258,6 +27267,7 @@ with pkgs;
 
   aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { };
 
+  ardour_6 = callPackage ../applications/audio/ardour/6.nix { };
   ardour = callPackage ../applications/audio/ardour { };
 
   arelle = with python3Packages; toPythonApplication arelle;
@@ -29099,10 +29109,6 @@ with pkgs;
 
   hdhomerun-config-gui = callPackage ../applications/video/hdhomerun-config-gui { };
 
-  hdr-plus = callPackage ../applications/graphics/hdr-plus {
-    stdenv = clangStdenv;
-  };
-
   hedgedoc-cli = callPackage ../tools/admin/hedgedoc-cli { };
 
   heimer = libsForQt5.callPackage ../applications/misc/heimer { };
diff --git a/pkgs/top-level/impure.nix b/pkgs/top-level/impure.nix
index 242596d28c6b0..4d847e280f4b9 100644
--- a/pkgs/top-level/impure.nix
+++ b/pkgs/top-level/impure.nix
@@ -47,7 +47,12 @@ in
           # it's a directory, so the set of overlays from the directory, ordered lexicographically
           let content = builtins.readDir path; in
           map (n: import (path + ("/" + n)))
-            (builtins.filter (n: builtins.match ".*\\.nix" n != null || builtins.pathExists (path + ("/" + n + "/default.nix")))
+            (builtins.filter
+              (n:
+                (builtins.match ".*\\.nix" n != null &&
+                 # ignore Emacs lock files (.#foo.nix)
+                 builtins.match "\\.#.*" n == null) ||
+                builtins.pathExists (path + ("/" + n + "/default.nix")))
               (builtins.attrNames content))
         else
           # it's a file, so the result is the contents of the file itself