about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/accessibility/contrast/default.nix17
-rw-r--r--pkgs/applications/audio/airwindows-lv2/default.nix4
-rw-r--r--pkgs/applications/audio/artyFX/default.nix7
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix4
-rw-r--r--pkgs/applications/audio/easyeffects/default.nix4
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/go-musicfox/default.nix4
-rw-r--r--pkgs/applications/audio/mbrola/default.nix90
-rw-r--r--pkgs/applications/audio/musikcube/default.nix8
-rw-r--r--pkgs/applications/audio/mympd/default.nix4
-rw-r--r--pkgs/applications/audio/ncmpc/default.nix4
-rw-r--r--pkgs/applications/audio/rhythmbox/default.nix9
-rw-r--r--pkgs/applications/audio/spotify/darwin.nix37
-rw-r--r--pkgs/applications/audio/spotify/default.nix178
-rw-r--r--pkgs/applications/audio/spotify/linux.nix177
-rwxr-xr-xpkgs/applications/audio/spotify/update.sh2
-rw-r--r--pkgs/applications/audio/tageditor/default.nix4
-rw-r--r--pkgs/applications/audio/tap-plugins/default.nix2
-rw-r--r--pkgs/applications/audio/vgmplay-libvgm/default.nix6
-rw-r--r--pkgs/applications/backup/ludusavi/default.nix6
-rw-r--r--pkgs/applications/backup/pika-backup/default.nix6
-rw-r--r--pkgs/applications/backup/vorta/default.nix10
-rw-r--r--pkgs/applications/blockchains/ergo/default.nix4
-rw-r--r--pkgs/applications/blockchains/exodus/default.nix4
-rw-r--r--pkgs/applications/blockchains/fulcrum/default.nix4
-rw-r--r--pkgs/applications/blockchains/polkadot/Cargo.lock557
-rw-r--r--pkgs/applications/blockchains/polkadot/default.nix6
-rw-r--r--pkgs/applications/blockchains/sparrow/default.nix16
-rw-r--r--pkgs/applications/blockchains/sparrow/fhsenv.nix4
-rwxr-xr-xpkgs/applications/blockchains/sparrow/update.sh2
-rw-r--r--pkgs/applications/editors/android-studio/common.nix4
-rw-r--r--pkgs/applications/editors/android-studio/default.nix4
-rw-r--r--pkgs/applications/editors/cudatext/default.nix4
-rw-r--r--pkgs/applications/editors/cudatext/deps.json12
-rw-r--r--pkgs/applications/editors/eclipse/build-eclipse.nix9
-rw-r--r--pkgs/applications/editors/eclipse/default.nix51
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix6
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix8
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages/ebuild-mode/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix30
-rw-r--r--pkgs/applications/editors/featherpad/default.nix4
-rw-r--r--pkgs/applications/editors/ghostwriter/default.nix43
-rwxr-xr-xpkgs/applications/editors/kakoune/plugins/update.py5
-rw-r--r--pkgs/applications/editors/moe/default.nix4
-rw-r--r--pkgs/applications/editors/notepad-next/default.nix4
-rw-r--r--pkgs/applications/editors/orbiton/default.nix4
-rw-r--r--pkgs/applications/editors/pulsar/default.nix26
-rwxr-xr-xpkgs/applications/editors/pulsar/update.mjs8
-rw-r--r--pkgs/applications/editors/quartus-prime/default.nix6
-rw-r--r--pkgs/applications/editors/setzer/default.nix10
-rw-r--r--pkgs/applications/editors/texmaker/default.nix10
-rw-r--r--pkgs/applications/editors/texworks/0001-fix-build-with-qt-6.5.patch26
-rw-r--r--pkgs/applications/editors/texworks/default.nix2
-rw-r--r--pkgs/applications/editors/vim/plugins/generated.nix972
-rw-r--r--pkgs/applications/editors/vim/plugins/get-plugins.nix19
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix120
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix44
-rw-r--r--pkgs/applications/editors/vim/plugins/overrides.nix11
-rwxr-xr-xpkgs/applications/editors/vim/plugins/update.py63
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-plugin-names5
-rw-r--r--pkgs/applications/editors/vscode/extensions/contextmapper.context-mapper-vscode-extension/default.nix36
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix24
-rw-r--r--pkgs/applications/editors/vscode/extensions/rust-lang.rust-analyzer/default.nix2
-rw-r--r--pkgs/applications/editors/vscode/generic.nix6
-rw-r--r--pkgs/applications/editors/vscode/vscodium.nix12
-rw-r--r--pkgs/applications/emulators/cemu/default.nix4
-rw-r--r--pkgs/applications/emulators/dolphin-emu/default.nix2
-rw-r--r--pkgs/applications/emulators/dosbox-staging/default.nix29
-rw-r--r--pkgs/applications/emulators/duckstation/default.nix6
-rw-r--r--pkgs/applications/emulators/ppsspp/default.nix6
-rw-r--r--pkgs/applications/emulators/rpcemu/default.nix4
-rw-r--r--pkgs/applications/emulators/xemu/default.nix8
-rw-r--r--pkgs/applications/emulators/yapesdl/default.nix4
-rw-r--r--pkgs/applications/file-managers/nnn/default.nix4
-rw-r--r--pkgs/applications/file-managers/worker/default.nix4
-rw-r--r--pkgs/applications/gis/saga/default.nix4
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix4
-rw-r--r--pkgs/applications/graphics/artem/default.nix6
-rw-r--r--pkgs/applications/graphics/brlcad/default.nix4
-rw-r--r--pkgs/applications/graphics/emblem/Cargo.lock948
-rw-r--r--pkgs/applications/graphics/emblem/default.nix36
-rw-r--r--pkgs/applications/graphics/epeg/default.nix4
-rw-r--r--pkgs/applications/graphics/feh/default.nix4
-rw-r--r--pkgs/applications/graphics/gscan2pdf/default.nix6
-rw-r--r--pkgs/applications/graphics/ipe/default.nix33
-rw-r--r--pkgs/applications/graphics/ipe/headers-lookup.patch13
-rw-r--r--pkgs/applications/graphics/komikku/default.nix16
-rw-r--r--pkgs/applications/graphics/mangareader/default.nix4
-rw-r--r--pkgs/applications/graphics/unigine-superposition/default.nix6
-rw-r--r--pkgs/applications/graphics/yed/default.nix4
-rw-r--r--pkgs/applications/kde/akonadi-calendar.nix4
-rw-r--r--pkgs/applications/kde/akonadi-contacts.nix4
-rw-r--r--pkgs/applications/kde/akonadi-mime.nix4
-rw-r--r--pkgs/applications/kde/akonadi-notes.nix4
-rw-r--r--pkgs/applications/kde/akonadi-search.nix4
-rw-r--r--pkgs/applications/kde/akonadi/0003-akonadi-revert-make-relocatable.patch12
-rw-r--r--pkgs/applications/kde/akonadi/default.nix6
-rw-r--r--pkgs/applications/kde/alligator.nix (renamed from pkgs/applications/plasma-mobile/alligator.nix)0
-rw-r--r--pkgs/applications/kde/angelfish.nix (renamed from pkgs/applications/plasma-mobile/angelfish.nix)8
-rw-r--r--pkgs/applications/kde/audiotube.nix (renamed from pkgs/applications/plasma-mobile/audiotube.nix)4
-rw-r--r--pkgs/applications/kde/calendarsupport.nix4
-rw-r--r--pkgs/applications/kde/calindori.nix (renamed from pkgs/applications/plasma-mobile/calindori.nix)0
-rw-r--r--pkgs/applications/kde/colord-kde.nix8
-rw-r--r--pkgs/applications/kde/default.nix23
-rw-r--r--pkgs/applications/kde/dolphin.nix4
-rw-r--r--pkgs/applications/kde/eventviews.nix4
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/ghostwriter.nix41
-rw-r--r--pkgs/applications/kde/grantleetheme/default.nix4
-rw-r--r--pkgs/applications/kde/gwenview.nix4
-rw-r--r--pkgs/applications/kde/incidenceeditor.nix4
-rw-r--r--pkgs/applications/kde/kaccounts-integration.nix3
-rw-r--r--pkgs/applications/kde/kalk.nix (renamed from pkgs/applications/plasma-mobile/kalk.nix)0
-rw-r--r--pkgs/applications/kde/kasts.nix (renamed from pkgs/applications/plasma-mobile/kasts.nix)0
-rw-r--r--pkgs/applications/kde/kate.nix6
-rw-r--r--pkgs/applications/kde/kcalutils.nix4
-rw-r--r--pkgs/applications/kde/kclock.nix (renamed from pkgs/applications/plasma-mobile/kclock.nix)0
-rw-r--r--pkgs/applications/kde/kde-inotify-survey.nix30
-rw-r--r--pkgs/applications/kde/kdebugsettings.nix4
-rw-r--r--pkgs/applications/kde/kdeconnect-kde.nix4
-rw-r--r--pkgs/applications/kde/kdenetwork-filesharing.nix4
-rw-r--r--pkgs/applications/kde/keysmith.nix (renamed from pkgs/applications/plasma-mobile/keysmith.nix)0
-rw-r--r--pkgs/applications/kde/kidentitymanagement.nix4
-rw-r--r--pkgs/applications/kde/kimap.nix8
-rw-r--r--pkgs/applications/kde/kio-admin.nix16
-rw-r--r--pkgs/applications/kde/kitinerary.nix8
-rw-r--r--pkgs/applications/kde/kldap.nix4
-rw-r--r--pkgs/applications/kde/kleopatra.nix4
-rw-r--r--pkgs/applications/kde/kmailtransport.nix4
-rw-r--r--pkgs/applications/kde/kmbox.nix4
-rw-r--r--pkgs/applications/kde/kmime.nix4
-rw-r--r--pkgs/applications/kde/koko.nix (renamed from pkgs/applications/plasma-mobile/koko.nix)0
-rw-r--r--pkgs/applications/kde/kongress.nix36
-rw-r--r--pkgs/applications/kde/konsole.nix4
-rw-r--r--pkgs/applications/kde/kontactinterface.nix9
-rw-r--r--pkgs/applications/kde/kpimtextedit.nix4
-rw-r--r--pkgs/applications/kde/kpublictransport.nix9
-rw-r--r--pkgs/applications/kde/krecorder.nix (renamed from pkgs/applications/plasma-mobile/krecorder.nix)0
-rw-r--r--pkgs/applications/kde/krfb.nix4
-rw-r--r--pkgs/applications/kde/ksmtp/0001-Use-KDE_INSTALL_TARGETS_DEFAULT_ARGS-when-installing.patch25
-rw-r--r--pkgs/applications/kde/ksmtp/default.nix5
-rw-r--r--pkgs/applications/kde/ktnef.nix4
-rw-r--r--pkgs/applications/kde/ktrip.nix (renamed from pkgs/applications/plasma-mobile/ktrip.nix)0
-rw-r--r--pkgs/applications/kde/kweather.nix (renamed from pkgs/applications/plasma-mobile/kweather.nix)0
-rw-r--r--pkgs/applications/kde/libgravatar.nix4
-rw-r--r--pkgs/applications/kde/libkcddb.nix4
-rw-r--r--pkgs/applications/kde/libkdepim.nix4
-rw-r--r--pkgs/applications/kde/libkleo.nix4
-rw-r--r--pkgs/applications/kde/mailcommon.nix4
-rw-r--r--pkgs/applications/kde/mailimporter.nix4
-rw-r--r--pkgs/applications/kde/messagelib.nix4
-rw-r--r--pkgs/applications/kde/neochat.nix (renamed from pkgs/applications/plasma-mobile/neochat.nix)7
-rw-r--r--pkgs/applications/kde/okular.nix4
-rw-r--r--pkgs/applications/kde/pimcommon.nix4
-rw-r--r--pkgs/applications/kde/plasmatube/default.nix (renamed from pkgs/applications/plasma-mobile/plasmatube/default.nix)10
-rw-r--r--pkgs/applications/kde/qmlkonsole.nix (renamed from pkgs/applications/plasma-mobile/qmlkonsole.nix)0
-rw-r--r--pkgs/applications/kde/spectacle.nix14
-rw-r--r--pkgs/applications/kde/srcs.nix2048
-rw-r--r--pkgs/applications/kde/telly-skout.nix24
-rw-r--r--pkgs/applications/kde/tokodon.nix (renamed from pkgs/applications/plasma-mobile/tokodon.nix)21
-rw-r--r--pkgs/applications/maui/default.nix2
-rw-r--r--pkgs/applications/maui/mauikit-calendar/add-akonadi-calendar.patch10
-rw-r--r--pkgs/applications/maui/mauikit-calendar/default.nix (renamed from pkgs/applications/maui/mauikit-calendar.nix)4
-rw-r--r--pkgs/applications/misc/1password-gui/default.nix18
-rwxr-xr-xpkgs/applications/misc/1password-gui/update.sh12
-rw-r--r--pkgs/applications/misc/authenticator/default.nix14
-rw-r--r--pkgs/applications/misc/blender/default.nix2
-rw-r--r--pkgs/applications/misc/bottles/default.nix12
-rw-r--r--pkgs/applications/misc/bottles/fhsenv.nix6
-rw-r--r--pkgs/applications/misc/calibre/default.nix8
-rw-r--r--pkgs/applications/misc/chatblade/default.nix47
-rw-r--r--pkgs/applications/misc/copyq/default.nix6
-rw-r--r--pkgs/applications/misc/cpu-x/default.nix4
-rw-r--r--pkgs/applications/misc/crow-translate/default.nix4
-rw-r--r--pkgs/applications/misc/diffuse/default.nix4
-rw-r--r--pkgs/applications/misc/elastic/default.nix58
-rw-r--r--pkgs/applications/misc/eos-installer/default.nix34
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--pkgs/applications/misc/geoipupdate/default.nix6
-rw-r--r--pkgs/applications/misc/girara/default.nix2
-rw-r--r--pkgs/applications/misc/haunt/default.nix7
-rw-r--r--pkgs/applications/misc/holochain-launcher/default.nix4
-rw-r--r--pkgs/applications/misc/houdini/default.nix4
-rw-r--r--pkgs/applications/misc/hstr/default.nix4
-rw-r--r--pkgs/applications/misc/joplin-desktop/default.nix5
-rw-r--r--pkgs/applications/misc/kickoff/default.nix43
-rw-r--r--pkgs/applications/misc/klipper-estimator/default.nix3
-rw-r--r--pkgs/applications/misc/logseq/default.nix4
-rw-r--r--pkgs/applications/misc/lutris/fhsenv.nix4
-rw-r--r--pkgs/applications/misc/mediaelch/default.nix10
-rw-r--r--pkgs/applications/misc/mob/default.nix6
-rw-r--r--pkgs/applications/misc/navi/default.nix6
-rw-r--r--pkgs/applications/misc/octoprint/default.nix6
-rw-r--r--pkgs/applications/misc/octoprint/plugins.nix119
-rw-r--r--pkgs/applications/misc/oxker/default.nix6
-rw-r--r--pkgs/applications/misc/pdfstudio/common.nix6
-rw-r--r--pkgs/applications/misc/pdfstudio/default.nix4
-rw-r--r--pkgs/applications/misc/qcad/default.nix4
-rw-r--r--pkgs/applications/misc/rofi-emoji/default.nix4
-rw-r--r--pkgs/applications/misc/shavee/default.nix39
-rw-r--r--pkgs/applications/misc/sidequest/default.nix4
-rw-r--r--pkgs/applications/misc/snapmaker-luban/default.nix4
-rw-r--r--pkgs/applications/misc/spicetify-cli/default.nix4
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix15
-rw-r--r--pkgs/applications/misc/todoist/default.nix6
-rw-r--r--pkgs/applications/misc/wthrr/default.nix47
-rw-r--r--pkgs/applications/misc/xmrig/moneroocean.nix4
-rw-r--r--pkgs/applications/networking/avalanchego/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json42
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix810
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix810
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix802
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix11
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix12
-rw-r--r--pkgs/applications/networking/browsers/firefox/wrapper.nix3
-rw-r--r--pkgs/applications/networking/browsers/ladybird/default.nix11
-rw-r--r--pkgs/applications/networking/browsers/librewolf/src.json10
-rw-r--r--pkgs/applications/networking/browsers/mullvad-browser/default.nix235
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix1
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix33
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/yandex-browser/default.nix9
-rw-r--r--pkgs/applications/networking/cisco-packet-tracer/7.nix4
-rw-r--r--pkgs/applications/networking/cisco-packet-tracer/8.nix4
-rw-r--r--pkgs/applications/networking/clash-verge/default.nix4
-rw-r--r--pkgs/applications/networking/cloudflared/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/arkade/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/bosh-cli/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/civo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/click/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/cmctl/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/fn-cli/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/gatekeeper/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/glooctl/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix4
-rw-r--r--pkgs/applications/networking/cluster/helmfile/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/hubble/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_26/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/kaniko/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/ktop/default.nix33
-rw-r--r--pkgs/applications/networking/cluster/ktunnel/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubeconform/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/linkerd/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nerdctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nomad-driver-podman/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nova/default.nix30
-rw-r--r--pkgs/applications/networking/cluster/odo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/openlens/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/pachyderm/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/pluto/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/rke/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/stern/default.nix17
-rw-r--r--pkgs/applications/networking/cluster/talosctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/tektoncd-cli/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json192
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/werf/default.nix6
-rw-r--r--pkgs/applications/networking/coreth/default.nix6
-rw-r--r--pkgs/applications/networking/dnscontrol/default.nix13
-rw-r--r--pkgs/applications/networking/dropbox/default.nix4
-rw-r--r--pkgs/applications/networking/dyndns/cfdyndns/default.nix4
-rw-r--r--pkgs/applications/networking/expressvpn/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/feed2imap-go/default.nix27
-rw-r--r--pkgs/applications/networking/feedreaders/newsboat/default.nix6
-rw-r--r--pkgs/applications/networking/firewalld/default.nix4
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/hydroxide/default.nix4
-rw-r--r--pkgs/applications/networking/ids/suricata/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/Cargo.lock40
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/linux.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/element/pin.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/ferdium/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/fluffychat/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/franz/generic.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/iamb/default.nix32
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/0001-fix-annotations-in-bin-dbus-cx.ring.Ring.CallManager.patch52
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/qq/default.nix17
-rw-r--r--pkgs/applications/networking/instant-messengers/revolt-desktop/default.nix61
-rw-r--r--pkgs/applications/networking/instant-messengers/session-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/teams-for-linux/screensharing-wayland-hack-fix.patch28
-rw-r--r--pkgs/applications/networking/instant-messengers/twitch-tui/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/webcord/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix12
-rw-r--r--pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/evolution/evolution-ews/hardcode-gsettings.patch24
-rw-r--r--pkgs/applications/networking/mailreaders/evolution/evolution/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix6
-rw-r--r--pkgs/applications/networking/mullvad-vpn/default.nix4
-rw-r--r--pkgs/applications/networking/netmaker/default.nix6
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix4
-rw-r--r--pkgs/applications/networking/nextcloud-client/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/torrential/default.nix20
-rw-r--r--pkgs/applications/networking/pcloud/default.nix2
-rw-r--r--pkgs/applications/networking/pjsip/default.nix29
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--pkgs/applications/networking/remote/vmware-horizon-client/default.nix10
-rw-r--r--pkgs/applications/networking/seaweedfs/default.nix6
-rw-r--r--pkgs/applications/networking/sniffnet/default.nix6
-rw-r--r--pkgs/applications/networking/warp/Cargo.lock3476
-rw-r--r--pkgs/applications/networking/warp/default.nix13
-rw-r--r--pkgs/applications/office/PageEdit/default.nix19
-rw-r--r--pkgs/applications/office/abiword/default.nix3
-rw-r--r--pkgs/applications/office/micropad/default.nix6
-rw-r--r--pkgs/applications/office/micropad/package.json8
-rw-r--r--pkgs/applications/office/micropad/yarn.lock423
-rw-r--r--pkgs/applications/office/micropad/yarn.nix440
-rw-r--r--pkgs/applications/office/portfolio/default.nix4
-rw-r--r--pkgs/applications/office/qnotero/default.nix12
-rw-r--r--pkgs/applications/office/qownnotes/default.nix6
-rw-r--r--pkgs/applications/office/super-productivity/default.nix4
-rw-r--r--pkgs/applications/office/treesheets/default.nix6
-rw-r--r--pkgs/applications/office/trilium/desktop.nix6
-rw-r--r--pkgs/applications/office/trilium/server.nix4
-rw-r--r--pkgs/applications/office/zotero/default.nix4
-rw-r--r--pkgs/applications/plasma-mobile/default.nix16
-rw-r--r--pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch25
-rw-r--r--pkgs/applications/radio/chirp/default.nix11
-rw-r--r--pkgs/applications/radio/gnss-sdr/default.nix7
-rw-r--r--pkgs/applications/radio/gnuradio/3.8.nix6
-rw-r--r--pkgs/applications/radio/gnuradio/3.9.nix10
-rw-r--r--pkgs/applications/radio/gnuradio/default.nix11
-rw-r--r--pkgs/applications/radio/gqrx/default.nix18
-rw-r--r--pkgs/applications/radio/qradiolink/default.nix2
-rw-r--r--pkgs/applications/radio/sdrangel/default.nix16
-rw-r--r--pkgs/applications/radio/uhd/default.nix24
-rw-r--r--pkgs/applications/radio/uhd/neon.patch19
-rw-r--r--pkgs/applications/science/astronomy/kstars/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix22
-rw-r--r--pkgs/applications/science/biology/blast/bin.nix2
-rw-r--r--pkgs/applications/science/biology/dssp/default.nix19
-rw-r--r--pkgs/applications/science/biology/subread/default.nix4
-rw-r--r--pkgs/applications/science/biology/tandem-aligner/default.nix9
-rw-r--r--pkgs/applications/science/biology/truvari/default.nix59
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/electronics/bitscope/common.nix4
-rw-r--r--pkgs/applications/science/electronics/dataexplorer/default.nix8
-rw-r--r--pkgs/applications/science/electronics/gerbv/default.nix19
-rw-r--r--pkgs/applications/science/electronics/gtkwave/default.nix4
-rw-r--r--pkgs/applications/science/electronics/kicad/base.nix3
-rw-r--r--pkgs/applications/science/electronics/kicad/versions.nix44
-rw-r--r--pkgs/applications/science/electronics/nvc/default.nix17
-rw-r--r--pkgs/applications/science/logic/sad/default.nix41
-rw-r--r--pkgs/applications/science/logic/sad/monoid.patch51
-rw-r--r--pkgs/applications/science/logic/sad/patch.patch200
-rw-r--r--pkgs/applications/science/logic/tlaplus/default.nix4
-rw-r--r--pkgs/applications/science/logic/z3/default.nix4
-rwxr-xr-xpkgs/applications/science/machine-learning/streamlit/default.nix4
-rw-r--r--pkgs/applications/science/math/form/default.nix6
-rw-r--r--pkgs/applications/science/math/glsurf/default.nix1
-rw-r--r--pkgs/applications/science/math/jags/default.nix4
-rw-r--r--pkgs/applications/science/math/nasc/default.nix3
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix4
-rw-r--r--pkgs/applications/science/math/qalculate-qt/default.nix4
-rw-r--r--pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch13
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix17
-rw-r--r--pkgs/applications/science/misc/foldingathome/client.nix4
-rw-r--r--pkgs/applications/science/misc/root/default.nix2
-rw-r--r--pkgs/applications/science/misc/sasview/default.nix6
-rw-r--r--pkgs/applications/terminal-emulators/havoc/default.nix7
-rw-r--r--pkgs/applications/terminal-emulators/kitty/default.nix40
-rw-r--r--pkgs/applications/terminal-emulators/mlterm/default.nix172
-rw-r--r--pkgs/applications/terminal-emulators/wezterm/Cargo.lock665
-rw-r--r--pkgs/applications/terminal-emulators/wezterm/default.nix7
-rw-r--r--pkgs/applications/version-management/forgejo/default.nix4
-rw-r--r--pkgs/applications/version-management/ghorg/default.nix6
-rw-r--r--pkgs/applications/version-management/ghq/default.nix6
-rw-r--r--pkgs/applications/version-management/git-dive/default.nix6
-rw-r--r--pkgs/applications/version-management/git-ignore/default.nix35
-rw-r--r--pkgs/applications/version-management/git-machete/default.nix4
-rw-r--r--pkgs/applications/version-management/git-stack/default.nix6
-rw-r--r--pkgs/applications/version-management/glab/default.nix6
-rw-r--r--pkgs/applications/version-management/hut/default.nix6
-rw-r--r--pkgs/applications/version-management/lefthook/default.nix6
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix26
-rw-r--r--pkgs/applications/version-management/radicle-cli/default.nix3
-rw-r--r--pkgs/applications/version-management/sapling/Cargo.lock935
-rw-r--r--pkgs/applications/version-management/sapling/default.nix13
-rw-r--r--pkgs/applications/version-management/sapling/deps.json4
-rw-r--r--pkgs/applications/version-management/scriv/default.nix4
-rw-r--r--pkgs/applications/version-management/srvc/default.nix6
-rw-r--r--pkgs/applications/video/davinci-resolve/default.nix4
-rw-r--r--pkgs/applications/video/filebot/default.nix23
-rw-r--r--pkgs/applications/video/jellyfin-media-player/default.nix14
-rw-r--r--pkgs/applications/video/jellyfin-media-player/fix-osx-resources.patch15
-rw-r--r--pkgs/applications/video/jellyfin-media-player/fix-web-path.patch28
-rw-r--r--pkgs/applications/video/kodi/addons/certifi/default.nix17
-rw-r--r--pkgs/applications/video/kodi/addons/certifi/env.patch86
-rw-r--r--pkgs/applications/video/kodi/addons/pvr-hts/default.nix4
-rw-r--r--pkgs/applications/video/lightworks/default.nix4
-rw-r--r--pkgs/applications/video/mpv/default.nix6
-rw-r--r--pkgs/applications/video/mpv/scripts/mpvacious.nix4
-rw-r--r--pkgs/applications/video/mpv/scripts/uosc.nix4
-rw-r--r--pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix10
-rw-r--r--pkgs/applications/video/qmplay2/default.nix6
-rw-r--r--pkgs/applications/video/ustreamer/default.nix4
-rw-r--r--pkgs/applications/video/vlc/default.nix11
-rw-r--r--pkgs/applications/video/vokoscreen-ng/default.nix4
-rw-r--r--pkgs/applications/video/webtorrent_desktop/default.nix4
-rw-r--r--pkgs/applications/virtualization/OVMF/default.nix2
-rw-r--r--pkgs/applications/virtualization/cloud-hypervisor/Cargo.lock5
-rw-r--r--pkgs/applications/virtualization/cloud-hypervisor/default.nix5
-rw-r--r--pkgs/applications/virtualization/cri-o/wrapper.nix2
-rw-r--r--pkgs/applications/virtualization/crun/default.nix4
-rw-r--r--pkgs/applications/virtualization/ecs-agent/default.nix4
-rw-r--r--pkgs/applications/virtualization/nixpacks/default.nix6
-rw-r--r--pkgs/applications/virtualization/podman-compose/default.nix4
-rw-r--r--pkgs/applications/virtualization/podman-desktop/default.nix10
-rw-r--r--pkgs/applications/virtualization/podman/default.nix6
-rw-r--r--pkgs/applications/virtualization/pods/Cargo.lock811
-rw-r--r--pkgs/applications/virtualization/pods/default.nix8
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix35
-rw-r--r--pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch25
-rw-r--r--pkgs/applications/virtualization/rvvm/default.nix27
-rw-r--r--pkgs/applications/virtualization/sail-riscv/default.nix12
-rw-r--r--pkgs/applications/virtualization/singularity/generic.nix36
-rw-r--r--pkgs/applications/virtualization/singularity/packages.nix12
-rwxr-xr-xpkgs/applications/virtualization/vmware-workstation/default.nix4
-rw-r--r--pkgs/applications/window-managers/dwl/default.nix6
-rw-r--r--pkgs/applications/window-managers/hyprwm/hypr/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/lock-fancy-rapid.nix14
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix4
-rw-r--r--pkgs/applications/window-managers/katriawm/default.nix6
-rw-r--r--pkgs/applications/window-managers/labwc/default.nix6
-rw-r--r--pkgs/applications/window-managers/owl/default.nix87
-rw-r--r--pkgs/applications/window-managers/owl/mac/MainMenu.nibbin0 -> 6088 bytes
-rw-r--r--pkgs/applications/window-managers/owl/mac/OwlPreferences.nibbin0 -> 2806 bytes
-rw-r--r--pkgs/applications/window-managers/pekwm/default.nix6
-rw-r--r--pkgs/applications/window-managers/sway/fx.nix29
443 files changed, 8929 insertions, 10597 deletions
diff --git a/pkgs/applications/accessibility/contrast/default.nix b/pkgs/applications/accessibility/contrast/default.nix
index d72c1043a9754..9d3d568be2f65 100644
--- a/pkgs/applications/accessibility/contrast/default.nix
+++ b/pkgs/applications/accessibility/contrast/default.nix
@@ -11,14 +11,13 @@
 , ninja
 , pango
 , pkg-config
-, python3
 , rustPlatform
 , wrapGAppsHook4
 }:
 
 stdenv.mkDerivation rec {
   pname = "contrast";
-  version = "0.0.5";
+  version = "0.0.7";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -26,13 +25,13 @@ stdenv.mkDerivation rec {
     owner = "design";
     repo = "contrast";
     rev = version;
-    sha256 = "cypSbqLwSmauOoWOuppWpF3hvrxiqmkLspxAWzvlUC0=";
+    hash = "sha256-waoXv8dzqynkpfEPZSgZnS6fyo9+9+3Q2oy2fMtEsoE=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-W4FyqwJpimf0isQRCq9TegpTQPQfsumx40AFQCFG5VQ=";
+    hash = "sha256-94QwPSiGjjPuskg5w6QfM5FuChFno7f9dh0Xr2wWKCI=";
   };
 
   nativeBuildInputs = [
@@ -41,12 +40,10 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    python3
     rustPlatform.rust.cargo
     rustPlatform.cargoSetupHook
     rustPlatform.rust.rustc
     wrapGAppsHook4
-    glib # for glib-compile-resources
   ];
 
   buildInputs = [
@@ -57,13 +54,6 @@ stdenv.mkDerivation rec {
     pango
   ];
 
-  postPatch = ''
-    patchShebangs build-aux/meson_post_install.py
-    # https://gitlab.gnome.org/World/design/contrast/-/merge_requests/23
-    substituteInPlace build-aux/meson_post_install.py \
-      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
-  '';
-
   meta = with lib; {
     description = "Checks whether the contrast between two colors meet the WCAG requirements";
     homepage = "https://gitlab.gnome.org/World/design/contrast";
@@ -74,4 +64,3 @@ stdenv.mkDerivation rec {
     broken = stdenv.isDarwin;
   };
 }
-
diff --git a/pkgs/applications/audio/airwindows-lv2/default.nix b/pkgs/applications/audio/airwindows-lv2/default.nix
index 15db4c1cf03d9..36d9ea7fb8b4c 100644
--- a/pkgs/applications/audio/airwindows-lv2/default.nix
+++ b/pkgs/applications/audio/airwindows-lv2/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "airwindows-lv2";
-  version = "16.0";
+  version = "18.0";
   src = fetchFromGitHub {
     owner = "hannesbraun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-jdeJ/VAJTDeiR9pyYps82F2Ty16r+a/FK+XV5L3rWco=";
+    sha256 = "sha256-06mfTvt0BXHUGZG2rnEbuOPIP+jD76mQZTo+m4b4lo4=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
diff --git a/pkgs/applications/audio/artyFX/default.nix b/pkgs/applications/audio/artyFX/default.nix
index 2bf6b2a8046f4..f68c6fa5c7dc4 100644
--- a/pkgs/applications/audio/artyFX/default.nix
+++ b/pkgs/applications/audio/artyFX/default.nix
@@ -2,14 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "artyFX";
-  # Fix build with lv2 1.18: https://github.com/openAVproductions/openAV-ArtyFX/pull/41/commits/492587461b50d140455aa3c98d915eb8673bebf0
-  version = "unstable-2020-04-28";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "openAVproductions";
     repo = "openAV-ArtyFX";
-    rev = "8c542627d936a01b1d97825e7f26a8e95633f7aa";
-    sha256 = "0wwg8ivnpyy0235bapjy4g0ij85zq355jwi6c1nkrac79p4z9ail";
+    rev = "release-${version}";
+    hash = "sha256-GD9nwXdXSJX5OvAMxEAnngkvRW+E1jrNfWXK122bsTM=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
index e6b0bea5d4e6c..9d4da64074616 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
@@ -24,11 +24,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bitwig-studio";
-  version = "4.4.8";
+  version = "4.4.10";
 
   src = fetchurl {
     url = "https://downloads.bitwig.com/stable/${version}/${pname}-${version}.deb";
-    sha256 = "sha256-qdqRvCmp6Q7lcTdOIEHeQKAAOLtJxs867gapopyeHuc=";
+    sha256 = "sha256-gtQ1mhXk0AqGidZk5TCzSR58pD1JJoELMBmELtqyb4U=";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
diff --git a/pkgs/applications/audio/easyeffects/default.nix b/pkgs/applications/audio/easyeffects/default.nix
index 62c5962b5399f..e45627162e563 100644
--- a/pkgs/applications/audio/easyeffects/default.nix
+++ b/pkgs/applications/audio/easyeffects/default.nix
@@ -37,13 +37,13 @@
 
 stdenv.mkDerivation rec {
   pname = "easyeffects";
-  version = "7.0.1";
+  version = "7.0.3";
 
   src = fetchFromGitHub {
     owner = "wwmm";
     repo = "easyeffects";
     rev = "v${version}";
-    sha256 = "sha256-PI29TJSYa/dARlSHe4mO4ejV+muhGFhwVvhA10jziTA=";
+    sha256 = "sha256-vHswNRu4JrW95nZaEBs95exUqslO0dyIr41E1gJhHow=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index e5d132ac6a69b..814dbed3d8a4d 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.65";
+  version = "1.66";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    sha256 = "sha256-Jo1qs0d8/o9FWR7jboWCJ7ntawBGTlm7yPzxxUnZLsI=";
+    sha256 = "sha256-glLgjZFWvz/bJe9R8KTDu4+778dueC9tw3nVKF3xcps=";
   };
 
   # Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
diff --git a/pkgs/applications/audio/go-musicfox/default.nix b/pkgs/applications/audio/go-musicfox/default.nix
index e6d409db40d3d..a1bb5bcef5c4e 100644
--- a/pkgs/applications/audio/go-musicfox/default.nix
+++ b/pkgs/applications/audio/go-musicfox/default.nix
@@ -10,13 +10,13 @@
 # gcc only supports objc on darwin
 buildGoModule.override { stdenv = clangStdenv; } rec {
   pname = "go-musicfox";
-  version = "4.0.1";
+  version = "4.0.4";
 
   src = fetchFromGitHub {
     owner = "anhoder";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-eOcQWw5wXU59/EzDLk028mV/Ro6Ii0DYcp4wdDedhrA=";
+    hash = "sha256-EPORD8jDmTnCm/ON1Vz2R7DpFVyAR8q7r2KZyKTiGr4=";
   };
 
   deleteVendor = true;
diff --git a/pkgs/applications/audio/mbrola/default.nix b/pkgs/applications/audio/mbrola/default.nix
index befa0ac206c3b..a21495027c865 100644
--- a/pkgs/applications/audio/mbrola/default.nix
+++ b/pkgs/applications/audio/mbrola/default.nix
@@ -1,42 +1,72 @@
-{ stdenv, lib, fetchFromGitHub }:
+{ stdenv, stdenvNoCC, lib, symlinkJoin, fetchFromGitHub }:
 
 let
-  voices = fetchFromGitHub {
-    owner = "numediart";
-    repo = "MBROLA-voices";
-    rev = "fe05a0ccef6a941207fd6aaad0b31294a1f93a51";  # using latest commit
-    sha256 = "1w0y2xjp9rndwdjagp2wxh656mdm3d6w9cs411g27rjyfy1205a0";
-  };
-in
-stdenv.mkDerivation rec {
   pname = "mbrola";
   version = "3.3";
 
-  src = fetchFromGitHub {
-    owner = "numediart";
-    repo = "MBROLA";
-    rev = version;
-    sha256 = "1w86gv6zs2cbr0731n49z8v6xxw0g8b0hzyv2iqb9mqcfh38l8zy";
+  meta = with lib; {
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ davidak ];
+    platforms = platforms.linux;
+    description = "Speech synthesizer based on the concatenation of diphones";
+    homepage = "https://github.com/numediart/MBROLA";
   };
 
-  # required for cross compilation
-  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+  voices = stdenvNoCC.mkDerivation {
+    pname = "${pname}-voices";
+    inherit version;
 
-  installPhase = ''
-    runHook preInstall
-    install -D Bin/mbrola $out/bin/mbrola
+    src = fetchFromGitHub {
+      owner = "numediart";
+      repo = "MBROLA-voices";
+      rev = "fe05a0ccef6a941207fd6aaad0b31294a1f93a51";  # using latest commit
+      sha256 = "1w0y2xjp9rndwdjagp2wxh656mdm3d6w9cs411g27rjyfy1205a0";
+    };
 
-    # TODO: package separately because it's very big
-    install -d $out/share/mbrola/voices
-    cp -R ${voices}/data/* $out/share/mbrola/voices/
-    runHook postInstall
-  '';
+    dontBuild = true;
+    installPhase = ''
+      runHook preInstall
+      install -d $out/share/mbrola/voices
+      cp -R $src/data/* $out/share/mbrola/voices/
+      runHook postInstall
+    '';
+    dontFixup = true;
 
-  meta = with lib; {
-    description = "Speech synthesizer based on the concatenation of diphones";
-    homepage = "https://github.com/numediart/MBROLA";
-    license = licenses.agpl3Plus;
-    maintainers = with maintainers; [ davidak ];
-    platforms = platforms.linux;
+    meta = meta // {
+      description = "Speech synthesizer based on the concatenation of diphones (voice files)";
+      homepage = "https://github.com/numediart/MBROLA-voices";
+    };
   };
+
+  bin = stdenv.mkDerivation {
+    pname = "${pname}-bin";
+    inherit version;
+
+    src = fetchFromGitHub {
+      owner = "numediart";
+      repo = "MBROLA";
+      rev = version;
+      sha256 = "1w86gv6zs2cbr0731n49z8v6xxw0g8b0hzyv2iqb9mqcfh38l8zy";
+    };
+
+    # required for cross compilation
+    makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
+    installPhase = ''
+      runHook preInstall
+      install -D Bin/mbrola $out/bin/mbrola
+      rm -rf $out/share/mbrola/voices/*
+      runHook postInstall
+    '';
+
+    meta = meta // {
+      description = "Speech synthesizer based on the concatenation of diphones (binary only)";
+    };
+  };
+
+in
+symlinkJoin {
+  inherit pname version meta;
+  name = "${pname}-${version}";
+  paths = [ bin voices ];
 }
diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix
index 1a7b1e2f879d1..92b12140c47bf 100644
--- a/pkgs/applications/audio/musikcube/default.nix
+++ b/pkgs/applications/audio/musikcube/default.nix
@@ -32,13 +32,13 @@
 
 stdenv.mkDerivation rec {
   pname = "musikcube";
-  version = "0.99.7";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "clangen";
     repo = pname;
     rev = version;
-    sha256 = "sha256-bsvq48zTNafsQGFXVApCEWIL8H2RXiowalEu/W3DUu0=";
+    hash = "sha512-W+Zug1SiOGJ+o6FBf2jeDGHFj87vudR4drtjyXiOzdoM8fUCnCj4pp7+70eZGilg6CvBi7CYkbVn53LXJf5qWA==";
   };
 
   outputs = [ "out" "dev" ];
@@ -86,9 +86,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "A fully functional terminal-based music player, library, and streaming audio server";
+    description = "Terminal-based music player, library, and streaming audio server";
     homepage = "https://musikcube.com/";
-    maintainers = with maintainers; [ aanderse srapenne ];
+    maintainers = with maintainers; [ aanderse srapenne afh ];
     license = licenses.bsd3;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/audio/mympd/default.nix b/pkgs/applications/audio/mympd/default.nix
index fed0e1c663a87..5c4c0045e7828 100644
--- a/pkgs/applications/audio/mympd/default.nix
+++ b/pkgs/applications/audio/mympd/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mympd";
-  version = "10.2.6";
+  version = "10.3.0";
 
   src = fetchFromGitHub {
     owner = "jcorporation";
     repo = "myMPD";
     rev = "v${version}";
-    sha256 = "sha256-a/HjuBeq7ySDUcEcR6KKnwlvzUInjWmio/zI59sNsak=";
+    sha256 = "sha256-iO/Ogh3G67GYoputrxAiA1i0fAon2NDrgPCMYxxn/o4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/ncmpc/default.nix b/pkgs/applications/audio/ncmpc/default.nix
index 870691ae1c3f3..0333f95710e4b 100644
--- a/pkgs/applications/audio/ncmpc/default.nix
+++ b/pkgs/applications/audio/ncmpc/default.nix
@@ -16,13 +16,13 @@ assert pcreSupport -> pcre != null;
 
 stdenv.mkDerivation rec {
   pname = "ncmpc";
-  version = "0.47";
+  version = "0.48";
 
   src = fetchFromGitHub {
     owner  = "MusicPlayerDaemon";
     repo   = "ncmpc";
     rev    = "v${version}";
-    sha256 = "sha256-7vywLMiIUfRx9/fCmUH1AGUB63bT8z7wabgm3CuLLUs=";
+    sha256 = "sha256-89hBaWFwMPBqSWDmsXND0PEc1a9Fte+p1ho5tWuZFlY=";
   };
 
   buildInputs = [ glib ncurses libmpdclient boost ]
diff --git a/pkgs/applications/audio/rhythmbox/default.nix b/pkgs/applications/audio/rhythmbox/default.nix
index fe9f4a835c84c..9cd6b0d9ae052 100644
--- a/pkgs/applications/audio/rhythmbox/default.nix
+++ b/pkgs/applications/audio/rhythmbox/default.nix
@@ -10,7 +10,7 @@
 , glib
 , gtk3
 , libpeas
-, libsoup
+, libsoup_3
 , libxml2
 , libsecret
 , libnotify
@@ -36,11 +36,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rhythmbox";
-  version = "3.4.6";
+  version = "3.4.7";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "+VaCEM5V5BHpKcj7leERohHb0ZzEf1ePKRxdMZtesDQ=";
+    sha256 = "L21WwT/BpkxTT1AHiPtIKTbOVHs0PtkMZ94fK84M+n4=";
   };
 
   nativeBuildInputs = [
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     python3
-    libsoup
+    libsoup_3
     libxml2
     tdb
     json-glib
@@ -92,6 +92,7 @@ stdenv.mkDerivation rec {
   ];
 
   mesonFlags = [
+    "-Ddaap=enabled"
     "-Dtests=disabled"
   ];
 
diff --git a/pkgs/applications/audio/spotify/darwin.nix b/pkgs/applications/audio/spotify/darwin.nix
new file mode 100644
index 0000000000000..7fcb3aad71672
--- /dev/null
+++ b/pkgs/applications/audio/spotify/darwin.nix
@@ -0,0 +1,37 @@
+{ stdenv
+, pname
+, meta
+, fetchurl
+, undmg
+, lib
+}:
+
+stdenv.mkDerivation {
+  inherit pname;
+
+  version = "1.1.97.962.g24733a46";
+
+  src = if stdenv.isAarch64 then (
+    fetchurl {
+      url = "https://web.archive.org/web/20221101120432/https://download.scdn.co/SpotifyARM64.dmg";
+      sha256 = "sha256-8WDeVRgaZXuUa95PNa15Cuul95ynklBaZpuq+U1eGTU=";
+    })
+  else (
+    fetchurl {
+      url = "https://web.archive.org/web/20221101120647/https://download.scdn.co/Spotify.dmg";
+      sha256 = "sha256-uPpD8Hv70FlaSjtt9rq5ntI64agxG8+/LNEvRe4ocJ4=";
+    });
+
+  nativeBuildInputs = [ undmg ];
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    mkdir -p $out/Applications
+    cp -r *.app $out/Applications
+  '';
+
+  meta = meta // {
+    maintainers = with lib.maintainers; [ Enzime ];
+  };
+}
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index b615cf0f2c0aa..cc12846a93f5b 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -1,182 +1,16 @@
-{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeShellWrapper, wrapGAppsHook, openssl, freetype
-, glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss, libpng, libnotify
-, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg, curlWithGnuTls, zlib, gnome
-, at-spi2-atk, at-spi2-core, libpulseaudio, libdrm, mesa, libxkbcommon
-  # High-DPI support: Spotify's --force-device-scale-factor argument
-  # not added if `null`, otherwise, should be a number.
-, deviceScaleFactor ? null
-}:
+{ lib, stdenv, callPackage }:
 
 let
-  # TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
-  # "rev" decides what is actually being downloaded
-  # If an update breaks things, one of those might have valuable info:
-  # https://aur.archlinux.org/packages/spotify/
-  # https://community.spotify.com/t5/Desktop-Linux
-  version = "1.1.99.878.g1e4ccc6e";
-  # To get the latest stable revision:
-  # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
-  # To get general information:
-  # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
-  # More examples of api usage:
-  # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
-  rev = "62";
-
-  deps = [
-    alsa-lib
-    at-spi2-atk
-    at-spi2-core
-    atk
-    cairo
-    cups
-    curlWithGnuTls
-    dbus
-    expat
-    ffmpeg
-    fontconfig
-    freetype
-    gdk-pixbuf
-    glib
-    gtk3
-    libdrm
-    libgcrypt
-    libnotify
-    libpng
-    libpulseaudio
-    libxkbcommon
-    mesa
-    nss
-    pango
-    stdenv.cc.cc
-    systemd
-    xorg.libICE
-    xorg.libSM
-    xorg.libX11
-    xorg.libxcb
-    xorg.libXcomposite
-    xorg.libXcursor
-    xorg.libXdamage
-    xorg.libXext
-    xorg.libXfixes
-    xorg.libXi
-    xorg.libXrandr
-    xorg.libXrender
-    xorg.libXScrnSaver
-    xorg.libxshmfence
-    xorg.libXtst
-    zlib
-  ];
-
-in
-
-stdenv.mkDerivation {
   pname = "spotify";
-  inherit version;
-
-  # fetch from snapcraft instead of the debian repository most repos fetch from.
-  # That is a bit more cumbersome. But the debian repository only keeps the last
-  # two versions, while snapcraft should provide versions indefinitely:
-  # https://forum.snapcraft.io/t/how-can-a-developer-remove-her-his-app-from-snap-store/512
-
-  # This is the next-best thing, since we're not allowed to re-distribute
-  # spotify ourselves:
-  # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
-  src = fetchurl {
-    url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
-    sha512 = "339r2q13nnpwi7gjd1axc6z2gycfm9gwz3x9dnqyaqd1g3rw7nk6nfbp6bmpkr68lfq1jfgvqwnimcgs84rsi7nmgsiabv3cz0673wv";
-  };
-
-  nativeBuildInputs = [ wrapGAppsHook makeShellWrapper squashfsTools ];
-
-  dontStrip = true;
-  dontPatchELF = true;
-
-  unpackPhase = ''
-    runHook preUnpack
-    unsquashfs "$src" '/usr/share/spotify' '/usr/bin/spotify' '/meta/snap.yaml'
-    cd squashfs-root
-    if ! grep -q 'grade: stable' meta/snap.yaml; then
-      # Unfortunately this check is not reliable: At the moment (2018-07-26) the
-      # latest version in the "edge" channel is also marked as stable.
-      echo "The snap package is marked as unstable:"
-      grep 'grade: ' meta/snap.yaml
-      echo "You probably chose the wrong revision."
-      exit 1
-    fi
-    if ! grep -q '${version}' meta/snap.yaml; then
-      echo "Package version differs from version found in snap metadata:"
-      grep 'version: ' meta/snap.yaml
-      echo "While the nix package specifies: ${version}."
-      echo "You probably chose the wrong revision or forgot to update the nix version."
-      exit 1
-    fi
-    runHook postUnpack
-  '';
-
-  # Prevent double wrapping
-  dontWrapGApps = true;
-
-  installPhase =
-    ''
-      runHook preInstall
-
-      libdir=$out/lib/spotify
-      mkdir -p $libdir
-      mv ./usr/* $out/
-
-      cp meta/snap.yaml $out
-
-      # Work around Spotify referring to a specific minor version of
-      # OpenSSL.
-
-      ln -s ${lib.getLib openssl}/lib/libssl.so $libdir/libssl.so.1.0.0
-      ln -s ${lib.getLib openssl}/lib/libcrypto.so $libdir/libcrypto.so.1.0.0
-      ln -s ${nspr.out}/lib/libnspr4.so $libdir/libnspr4.so
-      ln -s ${nspr.out}/lib/libplc4.so $libdir/libplc4.so
-
-      ln -s ${ffmpeg.lib}/lib/libavcodec.so* $libdir
-      ln -s ${ffmpeg.lib}/lib/libavformat.so* $libdir
-
-      rpath="$out/share/spotify:$libdir"
-
-      patchelf \
-        --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath $rpath $out/share/spotify/spotify
-
-      librarypath="${lib.makeLibraryPath deps}:$libdir"
-      wrapProgramShell $out/share/spotify/spotify \
-        ''${gappsWrapperArgs[@]} \
-        ${lib.optionalString (deviceScaleFactor != null) ''
-          --add-flags "--force-device-scale-factor=${toString deviceScaleFactor}" \
-        ''} \
-        --prefix LD_LIBRARY_PATH : "$librarypath" \
-        --prefix PATH : "${gnome.zenity}/bin" \
-        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
-
-      # fix Icon line in the desktop file (#48062)
-      sed -i "s:^Icon=.*:Icon=spotify-client:" "$out/share/spotify/spotify.desktop"
-
-      # Desktop file
-      mkdir -p "$out/share/applications/"
-      cp "$out/share/spotify/spotify.desktop" "$out/share/applications/"
-
-      # Icons
-      for i in 16 22 24 32 48 64 128 256 512; do
-        ixi="$i"x"$i"
-        mkdir -p "$out/share/icons/hicolor/$ixi/apps"
-        ln -s "$out/share/spotify/icons/spotify-linux-$i.png" \
-          "$out/share/icons/hicolor/$ixi/apps/spotify-client.png"
-      done
-
-      runHook postInstall
-    '';
 
   meta = with lib; {
     homepage = "https://www.spotify.com/";
     description = "Play music from the Spotify music service";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.unfree;
-    maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau ma27 ];
-    platforms = [ "x86_64-linux" ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];
   };
-}
+
+in if stdenv.isDarwin
+then callPackage ./darwin.nix { inherit pname meta; }
+else callPackage ./linux.nix { inherit pname meta; }
diff --git a/pkgs/applications/audio/spotify/linux.nix b/pkgs/applications/audio/spotify/linux.nix
new file mode 100644
index 0000000000000..0784bbfe1e16c
--- /dev/null
+++ b/pkgs/applications/audio/spotify/linux.nix
@@ -0,0 +1,177 @@
+{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeShellWrapper, wrapGAppsHook, openssl, freetype
+, glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss, libpng, libnotify
+, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg, curlWithGnuTls, zlib, gnome
+, at-spi2-atk, at-spi2-core, libpulseaudio, libdrm, mesa, libxkbcommon
+, pname, meta
+  # High-DPI support: Spotify's --force-device-scale-factor argument
+  # not added if `null`, otherwise, should be a number.
+, deviceScaleFactor ? null
+}:
+
+let
+  # TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
+  # "rev" decides what is actually being downloaded
+  # If an update breaks things, one of those might have valuable info:
+  # https://aur.archlinux.org/packages/spotify/
+  # https://community.spotify.com/t5/Desktop-Linux
+  version = "1.1.99.878.g1e4ccc6e";
+  # To get the latest stable revision:
+  # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
+  # To get general information:
+  # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
+  # More examples of api usage:
+  # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
+  rev = "62";
+
+  deps = [
+    alsa-lib
+    at-spi2-atk
+    at-spi2-core
+    atk
+    cairo
+    cups
+    curlWithGnuTls
+    dbus
+    expat
+    ffmpeg
+    fontconfig
+    freetype
+    gdk-pixbuf
+    glib
+    gtk3
+    libdrm
+    libgcrypt
+    libnotify
+    libpng
+    libpulseaudio
+    libxkbcommon
+    mesa
+    nss
+    pango
+    stdenv.cc.cc
+    systemd
+    xorg.libICE
+    xorg.libSM
+    xorg.libX11
+    xorg.libxcb
+    xorg.libXcomposite
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXfixes
+    xorg.libXi
+    xorg.libXrandr
+    xorg.libXrender
+    xorg.libXScrnSaver
+    xorg.libxshmfence
+    xorg.libXtst
+    zlib
+  ];
+
+in
+
+stdenv.mkDerivation {
+  inherit pname version;
+
+  # fetch from snapcraft instead of the debian repository most repos fetch from.
+  # That is a bit more cumbersome. But the debian repository only keeps the last
+  # two versions, while snapcraft should provide versions indefinitely:
+  # https://forum.snapcraft.io/t/how-can-a-developer-remove-her-his-app-from-snap-store/512
+
+  # This is the next-best thing, since we're not allowed to re-distribute
+  # spotify ourselves:
+  # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
+  src = fetchurl {
+    url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
+    sha512 = "339r2q13nnpwi7gjd1axc6z2gycfm9gwz3x9dnqyaqd1g3rw7nk6nfbp6bmpkr68lfq1jfgvqwnimcgs84rsi7nmgsiabv3cz0673wv";
+  };
+
+  nativeBuildInputs = [ wrapGAppsHook makeShellWrapper squashfsTools ];
+
+  dontStrip = true;
+  dontPatchELF = true;
+
+  unpackPhase = ''
+    runHook preUnpack
+    unsquashfs "$src" '/usr/share/spotify' '/usr/bin/spotify' '/meta/snap.yaml'
+    cd squashfs-root
+    if ! grep -q 'grade: stable' meta/snap.yaml; then
+      # Unfortunately this check is not reliable: At the moment (2018-07-26) the
+      # latest version in the "edge" channel is also marked as stable.
+      echo "The snap package is marked as unstable:"
+      grep 'grade: ' meta/snap.yaml
+      echo "You probably chose the wrong revision."
+      exit 1
+    fi
+    if ! grep -q '${version}' meta/snap.yaml; then
+      echo "Package version differs from version found in snap metadata:"
+      grep 'version: ' meta/snap.yaml
+      echo "While the nix package specifies: ${version}."
+      echo "You probably chose the wrong revision or forgot to update the nix version."
+      exit 1
+    fi
+    runHook postUnpack
+  '';
+
+  # Prevent double wrapping
+  dontWrapGApps = true;
+
+  installPhase =
+    ''
+      runHook preInstall
+
+      libdir=$out/lib/spotify
+      mkdir -p $libdir
+      mv ./usr/* $out/
+
+      cp meta/snap.yaml $out
+
+      # Work around Spotify referring to a specific minor version of
+      # OpenSSL.
+
+      ln -s ${lib.getLib openssl}/lib/libssl.so $libdir/libssl.so.1.0.0
+      ln -s ${lib.getLib openssl}/lib/libcrypto.so $libdir/libcrypto.so.1.0.0
+      ln -s ${nspr.out}/lib/libnspr4.so $libdir/libnspr4.so
+      ln -s ${nspr.out}/lib/libplc4.so $libdir/libplc4.so
+
+      ln -s ${ffmpeg.lib}/lib/libavcodec.so* $libdir
+      ln -s ${ffmpeg.lib}/lib/libavformat.so* $libdir
+
+      rpath="$out/share/spotify:$libdir"
+
+      patchelf \
+        --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        --set-rpath $rpath $out/share/spotify/spotify
+
+      librarypath="${lib.makeLibraryPath deps}:$libdir"
+      wrapProgramShell $out/share/spotify/spotify \
+        ''${gappsWrapperArgs[@]} \
+        ${lib.optionalString (deviceScaleFactor != null) ''
+          --add-flags "--force-device-scale-factor=${toString deviceScaleFactor}" \
+        ''} \
+        --prefix LD_LIBRARY_PATH : "$librarypath" \
+        --prefix PATH : "${gnome.zenity}/bin" \
+        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
+
+      # fix Icon line in the desktop file (#48062)
+      sed -i "s:^Icon=.*:Icon=spotify-client:" "$out/share/spotify/spotify.desktop"
+
+      # Desktop file
+      mkdir -p "$out/share/applications/"
+      cp "$out/share/spotify/spotify.desktop" "$out/share/applications/"
+
+      # Icons
+      for i in 16 22 24 32 48 64 128 256 512; do
+        ixi="$i"x"$i"
+        mkdir -p "$out/share/icons/hicolor/$ixi/apps"
+        ln -s "$out/share/spotify/icons/spotify-linux-$i.png" \
+          "$out/share/icons/hicolor/$ixi/apps/spotify-client.png"
+      done
+
+      runHook postInstall
+    '';
+
+  meta = meta // {
+    maintainers = with lib.maintainers; [ eelco ftrvxmtrx sheenobu timokau ma27 ];
+  };
+}
diff --git a/pkgs/applications/audio/spotify/update.sh b/pkgs/applications/audio/spotify/update.sh
index 0f19b1e295af1..8c466e836cd2a 100755
--- a/pkgs/applications/audio/spotify/update.sh
+++ b/pkgs/applications/audio/spotify/update.sh
@@ -20,7 +20,7 @@
 
 channel="${1:-stable}" # stable/candidate/edge
 nixpkgs="$(git rev-parse --show-toplevel)"
-spotify_nix="$nixpkgs/pkgs/applications/audio/spotify/default.nix"
+spotify_nix="$nixpkgs/pkgs/applications/audio/spotify/linux.nix"
 
 
 #
diff --git a/pkgs/applications/audio/tageditor/default.nix b/pkgs/applications/audio/tageditor/default.nix
index b79e9c217e51e..efac5170249e4 100644
--- a/pkgs/applications/audio/tageditor/default.nix
+++ b/pkgs/applications/audio/tageditor/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tageditor";
-  version = "3.7.8";
+  version = "3.7.9";
 
   src = fetchFromGitHub {
     owner = "martchus";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/34KS6nxpIsKEklSRpO+AmGAdpJhapoGe24DCCodU38=";
+    hash = "sha256-QQvc9S+9h0Qy/qBROwJMZIALf/Rbj/9my4PZGxQzlnM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/tap-plugins/default.nix b/pkgs/applications/audio/tap-plugins/default.nix
index cde74ae96ca0f..7cd64eb420868 100644
--- a/pkgs/applications/audio/tap-plugins/default.nix
+++ b/pkgs/applications/audio/tap-plugins/default.nix
@@ -4,7 +4,7 @@
 , ladspa-sdk
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "tap-plugins";
   version = "unstable-2020-12-09";
 
diff --git a/pkgs/applications/audio/vgmplay-libvgm/default.nix b/pkgs/applications/audio/vgmplay-libvgm/default.nix
index 9647eef681ac9..199f75ff20273 100644
--- a/pkgs/applications/audio/vgmplay-libvgm/default.nix
+++ b/pkgs/applications/audio/vgmplay-libvgm/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vgmplay-libvgm";
-  version = "unstable-2022-03-17";
+  version = "unstable-2023-04-12";
 
   src = fetchFromGitHub {
     owner = "ValleyBell";
     repo = "vgmplay-libvgm";
-    rev = "a2c21cb134b58043a013ac2efc060144cdecf13d";
-    sha256 = "0g251laqjvvzblyflkg8xac424dbxm1v35ckfazsfchmcqiaqfw4";
+    rev = "813abab549e99bb7e936acbfa1199cf435c237c6";
+    sha256 = "sdQO+xk3a7AFXo3jpbcuNBkd19PjKoBMRhr4IK06oHg=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/applications/backup/ludusavi/default.nix b/pkgs/applications/backup/ludusavi/default.nix
index 44f5c5acfb9b6..eab22b730f65d 100644
--- a/pkgs/applications/backup/ludusavi/default.nix
+++ b/pkgs/applications/backup/ludusavi/default.nix
@@ -18,16 +18,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ludusavi";
-  version = "0.15.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner = "mtkennerly";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-3nh1EhjiH+dUBw3CNeFSg/+Wkxr5AYgVdM1HzVKbqJI=";
+    sha256 = "sha256-LTqorrZ7hp9hFGcQ0rdc/U6st9YraXEftDpH7VEShs8=";
   };
 
-  cargoSha256 = "sha256-l9jYqmKC0GJL9MSRbrNng4rO6/dx4q8EVCxfuin4v6E=";
+  cargoSha256 = "sha256-3SijgvIPb+QBAWZaTivw8P5aYjctGfgnVrFYcGl8PyE=";
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/applications/backup/pika-backup/default.nix b/pkgs/applications/backup/pika-backup/default.nix
index 88b7b9fa5c5ed..ef4ab30eb2c65 100644
--- a/pkgs/applications/backup/pika-backup/default.nix
+++ b/pkgs/applications/backup/pika-backup/default.nix
@@ -19,20 +19,20 @@
 
 stdenv.mkDerivation rec {
   pname = "pika-backup";
-  version = "0.5.2";
+  version = "0.6.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = "pika-backup";
     rev = "v${version}";
-    hash = "sha256-d+VkKY14o1wwINSlVBsvWux8YhyXg77N9i2R61QLGqM=";
+    hash = "sha256-eI2MRrW6MID4dMHR1OjDT83xd/9CgDuhAWpEHmhnMVw=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-3MNwX8kB+bjP9Dz+k+HYmCOI1Naa9tDBe0+GKsEmqnc=";
+    hash = "sha256-hbh4kfQcym0n2cCp2ebljQpizolsxyfZk7ctKOlDybA=";
   };
 
   patches = [
diff --git a/pkgs/applications/backup/vorta/default.nix b/pkgs/applications/backup/vorta/default.nix
index 05d3cc8626357..5229786d72fe3 100644
--- a/pkgs/applications/backup/vorta/default.nix
+++ b/pkgs/applications/backup/vorta/default.nix
@@ -8,19 +8,18 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "vorta";
-  version = "0.8.10";
+  version = "0.8.12";
 
   src = fetchFromGitHub {
     owner = "borgbase";
     repo = "vorta";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-okxZ1kALB5l94ShStAJLfzD37MLhob8MCzhbqfVISkw=";
+    rev = "v${version}";
+    hash = "sha256-nLdLTh1qSKvOR2cE9HWQrIWQ9L+ynX4qF+lTtKn/Ubs=";
   };
 
   nativeBuildInputs = [ wrapQtAppsHook ];
 
   propagatedBuildInputs = with python3Packages; [
-    paramiko
     peewee
     pyqt5
     python-dateutil
@@ -29,6 +28,9 @@ python3Packages.buildPythonApplication rec {
     secretstorage
     appdirs
     setuptools
+    platformdirs
+  ] ++ lib.optionals stdenv.isLinux [
+    qt5.qtwayland
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/blockchains/ergo/default.nix b/pkgs/applications/blockchains/ergo/default.nix
index ae1a60ec1db05..6a78061ced9ed 100644
--- a/pkgs/applications/blockchains/ergo/default.nix
+++ b/pkgs/applications/blockchains/ergo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ergo";
-  version = "5.0.7";
+  version = "5.0.8";
 
   src = fetchurl {
     url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
-    sha256 = "sha256-yxb8cMAokAv0tl9FSjjtdvHkJP/UKlZxLLu/+gx8kyQ=";
+    sha256 = "sha256-ZXLtlxxhM6yOwRRVkzaLk5sLfJbDrodI7kIX6ItOk5I=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/blockchains/exodus/default.nix b/pkgs/applications/blockchains/exodus/default.nix
index 709e20f476b24..d0ba9d2834b08 100644
--- a/pkgs/applications/blockchains/exodus/default.nix
+++ b/pkgs/applications/blockchains/exodus/default.nix
@@ -4,11 +4,11 @@ cups, vivaldi-ffmpeg-codecs, libpulseaudio, at-spi2-core, libxkbcommon, mesa }:
 
 stdenv.mkDerivation rec {
   pname = "exodus";
-  version = "23.3.13";
+  version = "23.4.10";
 
   src = fetchzip {
     url = "https://downloads.exodus.com/releases/${pname}-linux-x64-${version}.zip";
-    sha256 = "sha256-/xCDtR3V++LaZZWTaNpeD3YuP5ZM5BChB1CUBH/xNcU=";
+    sha256 = "sha256-NWUIJCsoCsG8FKZnApicHsBTBwTL2fNb0su1KWd1E1o=";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/blockchains/fulcrum/default.nix b/pkgs/applications/blockchains/fulcrum/default.nix
index 28571a57e1a04..4676eb5b7766a 100644
--- a/pkgs/applications/blockchains/fulcrum/default.nix
+++ b/pkgs/applications/blockchains/fulcrum/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fulcrum";
-  version = "1.9.0";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
     owner = "cculianu";
     repo = "Fulcrum";
     rev = "v${version}";
-    sha256 = "sha256-HAA5YRShLzxVP9aIP1RdDH09cZqjiZhZOxxc2EVGvx8=";
+    sha256 = "sha256-guvOs/HsSuj5QOMTzmKxMaC8iUyTkVgEpp8pQ63aIIQ=";
   };
 
   nativeBuildInputs = [ pkg-config qmake ];
diff --git a/pkgs/applications/blockchains/polkadot/Cargo.lock b/pkgs/applications/blockchains/polkadot/Cargo.lock
index 20e94d1ec9dc6..6721cfec38bce 100644
--- a/pkgs/applications/blockchains/polkadot/Cargo.lock
+++ b/pkgs/applications/blockchains/polkadot/Cargo.lock
@@ -466,7 +466,7 @@ dependencies = [
 [[package]]
 name = "binary-merkle-tree"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "hash-db",
  "log",
@@ -2295,7 +2295,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 [[package]]
 name = "fork-tree"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
 ]
@@ -2318,7 +2318,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
 [[package]]
 name = "frame-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-support-procedural",
@@ -2343,7 +2343,7 @@ dependencies = [
 [[package]]
 name = "frame-benchmarking-cli"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "Inflector",
  "array-bytes",
@@ -2390,7 +2390,7 @@ dependencies = [
 [[package]]
 name = "frame-election-provider-solution-type"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -2401,7 +2401,7 @@ dependencies = [
 [[package]]
 name = "frame-election-provider-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-election-provider-solution-type",
  "frame-support",
@@ -2418,7 +2418,7 @@ dependencies = [
 [[package]]
 name = "frame-executive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2447,7 +2447,7 @@ dependencies = [
 [[package]]
 name = "frame-remote-externalities"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "log",
@@ -2463,7 +2463,7 @@ dependencies = [
 [[package]]
 name = "frame-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "bitflags",
  "environmental",
@@ -2496,7 +2496,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "Inflector",
  "cfg-expr",
@@ -2511,7 +2511,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support-procedural-tools-derive",
  "proc-macro-crate",
@@ -2523,7 +2523,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools-derive"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2533,7 +2533,7 @@ dependencies = [
 [[package]]
 name = "frame-support-test"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -2557,7 +2557,7 @@ dependencies = [
 [[package]]
 name = "frame-support-test-pallet"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2568,7 +2568,7 @@ dependencies = [
 [[package]]
 name = "frame-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "log",
@@ -2586,7 +2586,7 @@ dependencies = [
 [[package]]
 name = "frame-system-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -2601,7 +2601,7 @@ dependencies = [
 [[package]]
 name = "frame-system-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -2610,7 +2610,7 @@ dependencies = [
 [[package]]
 name = "frame-try-runtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
@@ -2792,7 +2792,7 @@ dependencies = [
 [[package]]
 name = "generate-bags"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "chrono",
  "frame-election-provider-support",
@@ -3584,7 +3584,7 @@ checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7"
 
 [[package]]
 name = "kusama-runtime"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -3689,7 +3689,7 @@ dependencies = [
 
 [[package]]
 name = "kusama-runtime-constants"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -4571,7 +4571,7 @@ dependencies = [
 [[package]]
 name = "mmr-gadget"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "log",
@@ -4590,7 +4590,7 @@ dependencies = [
 [[package]]
 name = "mmr-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "anyhow",
  "jsonrpsee",
@@ -5067,9 +5067,9 @@ dependencies = [
 
 [[package]]
 name = "orchestra"
-version = "0.2.0"
+version = "0.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecae97f74ddeb5c6ff00c98ef368423b4ec9a4d5ab48c0d909e84b7594b09718"
+checksum = "227585216d05ba65c7ab0a0450a3cf2cbd81a98862a54c4df8e14d5ac6adb015"
 dependencies = [
  "async-trait",
  "dyn-clonable",
@@ -5084,9 +5084,9 @@ dependencies = [
 
 [[package]]
 name = "orchestra-proc-macro"
-version = "0.2.0"
+version = "0.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08a9846c70b1df02657dbe5b54fadbad0ea3b944623ebf3fcbf7f33ef859dcba"
+checksum = "2871aadd82a2c216ee68a69837a526dfe788ecbe74c4c5038a6acdbff6653066"
 dependencies = [
  "expander 0.0.6",
  "itertools",
@@ -5152,7 +5152,7 @@ dependencies = [
 [[package]]
 name = "pallet-assets"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5167,7 +5167,7 @@ dependencies = [
 [[package]]
 name = "pallet-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5183,7 +5183,7 @@ dependencies = [
 [[package]]
 name = "pallet-authorship"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5197,7 +5197,7 @@ dependencies = [
 [[package]]
 name = "pallet-babe"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5221,7 +5221,7 @@ dependencies = [
 [[package]]
 name = "pallet-bags-list"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5241,7 +5241,7 @@ dependencies = [
 [[package]]
 name = "pallet-bags-list-remote-tests"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-election-provider-support",
  "frame-remote-externalities",
@@ -5260,7 +5260,7 @@ dependencies = [
 [[package]]
 name = "pallet-balances"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5275,7 +5275,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5294,7 +5294,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "binary-merkle-tree",
@@ -5318,7 +5318,7 @@ dependencies = [
 [[package]]
 name = "pallet-bounties"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5336,7 +5336,7 @@ dependencies = [
 [[package]]
 name = "pallet-child-bounties"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5355,7 +5355,7 @@ dependencies = [
 [[package]]
 name = "pallet-collective"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5372,7 +5372,7 @@ dependencies = [
 [[package]]
 name = "pallet-conviction-voting"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "assert_matches",
  "frame-benchmarking",
@@ -5389,7 +5389,7 @@ dependencies = [
 [[package]]
 name = "pallet-democracy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5407,7 +5407,7 @@ dependencies = [
 [[package]]
 name = "pallet-election-provider-multi-phase"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5430,7 +5430,7 @@ dependencies = [
 [[package]]
 name = "pallet-election-provider-support-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5443,7 +5443,7 @@ dependencies = [
 [[package]]
 name = "pallet-elections-phragmen"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5461,7 +5461,7 @@ dependencies = [
 [[package]]
 name = "pallet-fast-unstake"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5479,7 +5479,7 @@ dependencies = [
 [[package]]
 name = "pallet-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5502,7 +5502,7 @@ dependencies = [
 [[package]]
 name = "pallet-identity"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "enumflags2",
  "frame-benchmarking",
@@ -5518,7 +5518,7 @@ dependencies = [
 [[package]]
 name = "pallet-im-online"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5538,7 +5538,7 @@ dependencies = [
 [[package]]
 name = "pallet-indices"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5555,7 +5555,7 @@ dependencies = [
 [[package]]
 name = "pallet-membership"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5572,7 +5572,7 @@ dependencies = [
 [[package]]
 name = "pallet-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5589,7 +5589,7 @@ dependencies = [
 [[package]]
 name = "pallet-multisig"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5605,7 +5605,7 @@ dependencies = [
 [[package]]
 name = "pallet-nis"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5621,7 +5621,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools"
 version = "1.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5638,7 +5638,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools-benchmarking"
 version = "1.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5658,7 +5658,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools-runtime-api"
 version = "1.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "pallet-nomination-pools",
  "parity-scale-codec",
@@ -5669,7 +5669,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5686,7 +5686,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5710,7 +5710,7 @@ dependencies = [
 [[package]]
 name = "pallet-preimage"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5727,7 +5727,7 @@ dependencies = [
 [[package]]
 name = "pallet-proxy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5742,7 +5742,7 @@ dependencies = [
 [[package]]
 name = "pallet-ranked-collective"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5760,7 +5760,7 @@ dependencies = [
 [[package]]
 name = "pallet-recovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5775,7 +5775,7 @@ dependencies = [
 [[package]]
 name = "pallet-referenda"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "assert_matches",
  "frame-benchmarking",
@@ -5794,7 +5794,7 @@ dependencies = [
 [[package]]
 name = "pallet-scheduler"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5811,7 +5811,7 @@ dependencies = [
 [[package]]
 name = "pallet-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5832,7 +5832,7 @@ dependencies = [
 [[package]]
 name = "pallet-session-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5848,7 +5848,7 @@ dependencies = [
 [[package]]
 name = "pallet-society"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5862,7 +5862,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5885,7 +5885,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-curve"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -5896,7 +5896,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-fn"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "log",
  "sp-arithmetic",
@@ -5905,7 +5905,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -5914,7 +5914,7 @@ dependencies = [
 [[package]]
 name = "pallet-state-trie-migration"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5931,7 +5931,7 @@ dependencies = [
 [[package]]
 name = "pallet-sudo"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5945,7 +5945,7 @@ dependencies = [
 [[package]]
 name = "pallet-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5963,7 +5963,7 @@ dependencies = [
 [[package]]
 name = "pallet-tips"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5982,7 +5982,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5998,7 +5998,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "jsonrpsee",
  "pallet-transaction-payment-rpc-runtime-api",
@@ -6014,7 +6014,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "pallet-transaction-payment",
  "parity-scale-codec",
@@ -6026,7 +6026,7 @@ dependencies = [
 [[package]]
 name = "pallet-treasury"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6043,7 +6043,7 @@ dependencies = [
 [[package]]
 name = "pallet-uniques"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6058,7 +6058,7 @@ dependencies = [
 [[package]]
 name = "pallet-utility"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6074,7 +6074,7 @@ dependencies = [
 [[package]]
 name = "pallet-vesting"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6089,7 +6089,7 @@ dependencies = [
 [[package]]
 name = "pallet-whitelist"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6103,7 +6103,7 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bounded-collections",
  "frame-benchmarking",
@@ -6127,7 +6127,7 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm-benchmarks"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6432,7 +6432,7 @@ checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94"
 
 [[package]]
 name = "polkadot"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_cmd",
  "color-eyre",
@@ -6449,7 +6449,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-approval-distribution"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "env_logger 0.9.0",
@@ -6474,7 +6474,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-availability-bitfield-distribution"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "bitvec",
@@ -6499,7 +6499,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-availability-distribution"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "derive_more",
@@ -6528,7 +6528,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-availability-recovery"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "env_logger 0.9.0",
@@ -6557,7 +6557,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-cli"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "clap 4.0.15",
  "frame-benchmarking-cli",
@@ -6585,7 +6585,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-client"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "async-trait",
  "frame-benchmarking",
@@ -6629,7 +6629,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-collator-protocol"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "always-assert",
  "assert_matches",
@@ -6658,7 +6658,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-core-primitives"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -6669,7 +6669,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-dispute-distribution"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -6701,7 +6701,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-erasure-coding"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "criterion",
  "parity-scale-codec",
@@ -6715,7 +6715,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-gossip-support"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -6742,7 +6742,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-network-bridge"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "always-assert",
  "assert_matches",
@@ -6771,7 +6771,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-collation-generation"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "parity-scale-codec",
@@ -6790,7 +6790,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-approval-voting"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -6829,7 +6829,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-av-store"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "bitvec",
@@ -6858,7 +6858,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-backing"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "bitvec",
@@ -6884,7 +6884,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-bitfield-signing"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "polkadot-node-subsystem",
@@ -6900,7 +6900,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-candidate-validation"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -6924,7 +6924,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-chain-api"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "maplit",
@@ -6943,7 +6943,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-chain-selection"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "futures",
@@ -6964,7 +6964,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-dispute-coordinator"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "fatality",
@@ -6992,7 +6992,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-parachains-inherent"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "async-trait",
  "futures",
@@ -7008,7 +7008,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-provisioner"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "fatality",
@@ -7029,7 +7029,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-pvf"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "always-assert",
  "assert_matches",
@@ -7057,6 +7057,7 @@ dependencies = [
  "sp-maybe-compressed-blob",
  "sp-tracing",
  "sp-wasm-interface",
+ "substrate-build-script-utils",
  "tempfile",
  "test-parachain-adder",
  "test-parachain-halt",
@@ -7067,7 +7068,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-pvf-checker"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "futures-timer",
@@ -7090,7 +7091,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-core-runtime-api"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "lru 0.9.0",
@@ -7111,7 +7112,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-jaeger"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "lazy_static",
  "log",
@@ -7128,7 +7129,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-metrics"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_cmd",
  "bs58",
@@ -7155,7 +7156,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-network-protocol"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -7177,7 +7178,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-primitives"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bounded-vec",
  "futures",
@@ -7200,7 +7201,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-subsystem"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "polkadot-node-jaeger",
  "polkadot-node-subsystem-types",
@@ -7209,7 +7210,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-subsystem-test-helpers"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "async-trait",
  "futures",
@@ -7227,7 +7228,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-subsystem-types"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -7249,7 +7250,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-node-subsystem-util"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -7290,7 +7291,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-overseer"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -7316,7 +7317,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-parachain"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bounded-collections",
  "derive_more",
@@ -7332,7 +7333,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-performance-test"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "env_logger 0.9.0",
  "kusama-runtime",
@@ -7347,7 +7348,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-primitives"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "hex-literal",
@@ -7372,7 +7373,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-primitives-test-helpers"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "polkadot-primitives",
  "rand 0.8.5",
@@ -7384,7 +7385,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-rpc"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "jsonrpsee",
  "mmr-rpc",
@@ -7415,7 +7416,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -7512,7 +7513,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-common"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -7562,7 +7563,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-constants"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -7575,7 +7576,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-metrics"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bs58",
  "parity-scale-codec",
@@ -7586,7 +7587,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-parachains"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "bitflags",
@@ -7639,7 +7640,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-service"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -7755,7 +7756,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-statement-distribution"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "arrayvec 0.5.2",
  "assert_matches",
@@ -7786,7 +7787,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-statement-table"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "parity-scale-codec",
  "polkadot-primitives",
@@ -7795,7 +7796,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-test-client"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures",
  "parity-scale-codec",
@@ -7821,7 +7822,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-test-malus"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "async-trait",
@@ -7849,7 +7850,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-test-runtime"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "frame-election-provider-support",
@@ -7914,7 +7915,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-test-service"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-benchmarking",
  "frame-system",
@@ -7968,7 +7969,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-voter-bags"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "clap 4.0.15",
  "generate-bags",
@@ -8108,11 +8109,10 @@ dependencies = [
 
 [[package]]
 name = "prioritized-metered-channel"
-version = "0.4.0"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3caef72a78ca8e77cbdfa87dd516ebb79d4cbe5b42e3b8435b463a8261339ff"
+checksum = "382698e48a268c832d0b181ed438374a6bb708a82a8ca273bb0f61c74cf209c4"
 dependencies = [
- "async-channel",
  "coarsetime",
  "crossbeam-queue",
  "derive_more",
@@ -8446,23 +8446,26 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
 
 [[package]]
 name = "rayon"
-version = "1.7.0"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90"
 dependencies = [
+ "autocfg",
+ "crossbeam-deque",
  "either",
  "rayon-core",
 ]
 
 [[package]]
 name = "rayon-core"
-version = "1.11.0"
+version = "1.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e"
 dependencies = [
  "crossbeam-channel",
  "crossbeam-deque",
  "crossbeam-utils",
+ "lazy_static",
  "num_cpus",
 ]
 
@@ -8595,7 +8598,7 @@ dependencies = [
 
 [[package]]
 name = "remote-ext-tests-bags-list"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "clap 4.0.15",
  "frame-system",
@@ -8706,7 +8709,7 @@ dependencies = [
 
 [[package]]
 name = "rococo-runtime"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "binary-merkle-tree",
  "frame-benchmarking",
@@ -8799,7 +8802,7 @@ dependencies = [
 
 [[package]]
 name = "rococo-runtime-constants"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -9014,7 +9017,7 @@ dependencies = [
 [[package]]
 name = "sc-allocator"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "log",
  "sp-core",
@@ -9025,7 +9028,7 @@ dependencies = [
 [[package]]
 name = "sc-authority-discovery"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -9053,7 +9056,7 @@ dependencies = [
 [[package]]
 name = "sc-basic-authorship"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "futures-timer",
@@ -9076,7 +9079,7 @@ dependencies = [
 [[package]]
 name = "sc-block-builder"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "sc-client-api",
@@ -9091,7 +9094,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "memmap2",
  "sc-chain-spec-derive",
@@ -9110,7 +9113,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec-derive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -9121,7 +9124,7 @@ dependencies = [
 [[package]]
 name = "sc-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "chrono",
@@ -9161,7 +9164,7 @@ dependencies = [
 [[package]]
 name = "sc-client-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "fnv",
  "futures",
@@ -9187,7 +9190,7 @@ dependencies = [
 [[package]]
 name = "sc-client-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "hash-db",
  "kvdb",
@@ -9213,7 +9216,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -9238,7 +9241,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "fork-tree",
@@ -9277,7 +9280,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -9299,7 +9302,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -9334,7 +9337,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-beefy-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -9353,7 +9356,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-epochs"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "fork-tree",
  "parity-scale-codec",
@@ -9366,7 +9369,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-grandpa"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ahash 0.8.2",
  "array-bytes",
@@ -9406,7 +9409,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-grandpa-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "finality-grandpa",
  "futures",
@@ -9426,7 +9429,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -9449,7 +9452,7 @@ dependencies = [
 [[package]]
 name = "sc-executor"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "lru 0.8.1",
  "parity-scale-codec",
@@ -9473,7 +9476,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-common"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "sc-allocator",
  "sp-maybe-compressed-blob",
@@ -9486,7 +9489,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmi"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "log",
  "sc-allocator",
@@ -9499,7 +9502,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "anyhow",
  "cfg-if",
@@ -9517,7 +9520,7 @@ dependencies = [
 [[package]]
 name = "sc-informant"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ansi_term",
  "futures",
@@ -9533,7 +9536,7 @@ dependencies = [
 [[package]]
 name = "sc-keystore"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -9548,7 +9551,7 @@ dependencies = [
 [[package]]
 name = "sc-network"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-channel",
@@ -9592,7 +9595,7 @@ dependencies = [
 [[package]]
 name = "sc-network-bitswap"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "cid",
  "futures",
@@ -9612,7 +9615,7 @@ dependencies = [
 [[package]]
 name = "sc-network-common"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -9640,7 +9643,7 @@ dependencies = [
 [[package]]
 name = "sc-network-gossip"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ahash 0.8.2",
  "futures",
@@ -9659,7 +9662,7 @@ dependencies = [
 [[package]]
 name = "sc-network-light"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "futures",
@@ -9681,7 +9684,7 @@ dependencies = [
 [[package]]
 name = "sc-network-sync"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -9715,7 +9718,7 @@ dependencies = [
 [[package]]
 name = "sc-network-transactions"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "futures",
@@ -9735,7 +9738,7 @@ dependencies = [
 [[package]]
 name = "sc-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "bytes",
@@ -9766,7 +9769,7 @@ dependencies = [
 [[package]]
 name = "sc-peerset"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "libp2p",
@@ -9779,7 +9782,7 @@ dependencies = [
 [[package]]
 name = "sc-proposer-metrics"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "log",
  "substrate-prometheus-endpoint",
@@ -9788,7 +9791,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -9818,7 +9821,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-api"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "jsonrpsee",
  "parity-scale-codec",
@@ -9837,7 +9840,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-server"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "http",
  "jsonrpsee",
@@ -9852,7 +9855,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-spec-v2"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "futures",
@@ -9878,7 +9881,7 @@ dependencies = [
 [[package]]
 name = "sc-service"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "directories",
@@ -9944,7 +9947,7 @@ dependencies = [
 [[package]]
 name = "sc-state-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -9955,7 +9958,7 @@ dependencies = [
 [[package]]
 name = "sc-storage-monitor"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "clap 4.0.15",
  "fs4",
@@ -9971,7 +9974,7 @@ dependencies = [
 [[package]]
 name = "sc-sync-state-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "jsonrpsee",
  "parity-scale-codec",
@@ -9990,7 +9993,7 @@ dependencies = [
 [[package]]
 name = "sc-sysinfo"
 version = "6.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "libc",
@@ -10009,7 +10012,7 @@ dependencies = [
 [[package]]
 name = "sc-telemetry"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "chrono",
  "futures",
@@ -10028,7 +10031,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ansi_term",
  "atty",
@@ -10059,7 +10062,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -10070,7 +10073,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -10097,7 +10100,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -10111,7 +10114,7 @@ dependencies = [
 [[package]]
 name = "sc-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-channel",
  "futures",
@@ -10549,7 +10552,7 @@ checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec"
 
 [[package]]
 name = "slot-range-helper"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "enumn",
  "parity-scale-codec",
@@ -10626,7 +10629,7 @@ dependencies = [
 [[package]]
 name = "sp-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "hash-db",
  "log",
@@ -10644,7 +10647,7 @@ dependencies = [
 [[package]]
 name = "sp-api-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "Inflector",
  "blake2",
@@ -10658,7 +10661,7 @@ dependencies = [
 [[package]]
 name = "sp-application-crypto"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10671,7 +10674,7 @@ dependencies = [
 [[package]]
 name = "sp-arithmetic"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "integer-sqrt",
  "num-traits",
@@ -10685,7 +10688,7 @@ dependencies = [
 [[package]]
 name = "sp-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10698,7 +10701,7 @@ dependencies = [
 [[package]]
 name = "sp-block-builder"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -10710,7 +10713,7 @@ dependencies = [
 [[package]]
 name = "sp-blockchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "log",
@@ -10728,7 +10731,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -10743,7 +10746,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-aura"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -10761,7 +10764,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "merlin",
@@ -10784,7 +10787,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "lazy_static",
  "parity-scale-codec",
@@ -10803,7 +10806,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "finality-grandpa",
  "log",
@@ -10821,7 +10824,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10833,7 +10836,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-vrf"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10846,7 +10849,7 @@ dependencies = [
 [[package]]
 name = "sp-core"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "base58",
@@ -10889,7 +10892,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "blake2b_simd",
  "byteorder",
@@ -10903,7 +10906,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing-proc-macro"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10914,7 +10917,7 @@ dependencies = [
 [[package]]
 name = "sp-database"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "kvdb",
  "parking_lot 0.12.1",
@@ -10923,7 +10926,7 @@ dependencies = [
 [[package]]
 name = "sp-debug-derive"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10933,7 +10936,7 @@ dependencies = [
 [[package]]
 name = "sp-externalities"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "environmental",
  "parity-scale-codec",
@@ -10944,7 +10947,7 @@ dependencies = [
 [[package]]
 name = "sp-inherents"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "impl-trait-for-tuples",
@@ -10959,7 +10962,7 @@ dependencies = [
 [[package]]
 name = "sp-io"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "bytes",
  "ed25519",
@@ -10984,7 +10987,7 @@ dependencies = [
 [[package]]
 name = "sp-keyring"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "lazy_static",
  "sp-core",
@@ -10995,7 +10998,7 @@ dependencies = [
 [[package]]
 name = "sp-keystore"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures",
@@ -11012,7 +11015,7 @@ dependencies = [
 [[package]]
 name = "sp-maybe-compressed-blob"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "thiserror",
  "zstd",
@@ -11021,7 +11024,7 @@ dependencies = [
 [[package]]
 name = "sp-mmr-primitives"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ckb-merkle-mountain-range",
  "log",
@@ -11039,7 +11042,7 @@ dependencies = [
 [[package]]
 name = "sp-npos-elections"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -11053,7 +11056,7 @@ dependencies = [
 [[package]]
 name = "sp-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "sp-api",
  "sp-core",
@@ -11063,7 +11066,7 @@ dependencies = [
 [[package]]
 name = "sp-panic-handler"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "backtrace",
  "lazy_static",
@@ -11073,7 +11076,7 @@ dependencies = [
 [[package]]
 name = "sp-rpc"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "rustc-hash",
  "serde",
@@ -11083,7 +11086,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "either",
  "hash256-std-hasher",
@@ -11105,7 +11108,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "bytes",
  "impl-trait-for-tuples",
@@ -11123,7 +11126,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface-proc-macro"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "Inflector",
  "proc-macro-crate",
@@ -11135,7 +11138,7 @@ dependencies = [
 [[package]]
 name = "sp-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -11149,7 +11152,7 @@ dependencies = [
 [[package]]
 name = "sp-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -11161,7 +11164,7 @@ dependencies = [
 [[package]]
 name = "sp-state-machine"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "hash-db",
  "log",
@@ -11181,12 +11184,12 @@ dependencies = [
 [[package]]
 name = "sp-std"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 
 [[package]]
 name = "sp-storage"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -11199,7 +11202,7 @@ dependencies = [
 [[package]]
 name = "sp-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "futures-timer",
@@ -11214,7 +11217,7 @@ dependencies = [
 [[package]]
 name = "sp-tracing"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "sp-std",
@@ -11226,7 +11229,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "sp-api",
  "sp-runtime",
@@ -11235,7 +11238,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-storage-proof"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "log",
@@ -11251,7 +11254,7 @@ dependencies = [
 [[package]]
 name = "sp-trie"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ahash 0.8.2",
  "hash-db",
@@ -11274,7 +11277,7 @@ dependencies = [
 [[package]]
 name = "sp-version"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -11291,7 +11294,7 @@ dependencies = [
 [[package]]
 name = "sp-version-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "proc-macro2",
@@ -11302,7 +11305,7 @@ dependencies = [
 [[package]]
 name = "sp-wasm-interface"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "anyhow",
  "impl-trait-for-tuples",
@@ -11316,7 +11319,7 @@ dependencies = [
 [[package]]
 name = "sp-weights"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -11367,7 +11370,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
 
 [[package]]
 name = "staking-miner"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_cmd",
  "clap 4.0.15",
@@ -11536,7 +11539,7 @@ dependencies = [
 [[package]]
 name = "substrate-build-script-utils"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "platforms",
 ]
@@ -11544,7 +11547,7 @@ dependencies = [
 [[package]]
 name = "substrate-frame-rpc-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "frame-system-rpc-runtime-api",
  "futures",
@@ -11563,7 +11566,7 @@ dependencies = [
 [[package]]
 name = "substrate-prometheus-endpoint"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "hyper",
  "log",
@@ -11575,7 +11578,7 @@ dependencies = [
 [[package]]
 name = "substrate-rpc-client"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "jsonrpsee",
@@ -11588,7 +11591,7 @@ dependencies = [
 [[package]]
 name = "substrate-state-trie-migration-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "jsonrpsee",
  "log",
@@ -11607,7 +11610,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-client"
 version = "2.0.1"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -11633,7 +11636,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "futures",
  "substrate-test-utils-derive",
@@ -11643,7 +11646,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils-derive"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -11654,7 +11657,7 @@ dependencies = [
 [[package]]
 name = "substrate-wasm-builder"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "ansi_term",
  "build-helper",
@@ -11802,7 +11805,7 @@ checksum = "13a4ec180a2de59b57434704ccfad967f789b12737738798fa08798cd5824c16"
 
 [[package]]
 name = "test-parachain-adder"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "dlmalloc",
  "parity-scale-codec",
@@ -11815,7 +11818,7 @@ dependencies = [
 
 [[package]]
 name = "test-parachain-adder-collator"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "clap 4.0.15",
  "futures",
@@ -11841,14 +11844,14 @@ dependencies = [
 
 [[package]]
 name = "test-parachain-halt"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "substrate-wasm-builder",
 ]
 
 [[package]]
 name = "test-parachain-undying"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "dlmalloc",
  "log",
@@ -11862,7 +11865,7 @@ dependencies = [
 
 [[package]]
 name = "test-parachain-undying-collator"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "clap 4.0.15",
  "futures",
@@ -11888,7 +11891,7 @@ dependencies = [
 
 [[package]]
 name = "test-parachains"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "parity-scale-codec",
  "sp-core",
@@ -11899,7 +11902,7 @@ dependencies = [
 
 [[package]]
 name = "test-runtime-constants"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -12296,7 +12299,7 @@ dependencies = [
 
 [[package]]
 name = "tracing-gum"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "polkadot-node-jaeger",
  "polkadot-primitives",
@@ -12306,7 +12309,7 @@ dependencies = [
 
 [[package]]
 name = "tracing-gum-proc-macro"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "expander 0.0.6",
@@ -12455,7 +12458,7 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
 [[package]]
 name = "try-runtime-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#ba87188cce8c0a11c9542d7363cd5ddd46db2740"
+source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.41#980eb16791bab5d63b47c07657bb9dc198d9307b"
 dependencies = [
  "async-trait",
  "clap 4.0.15",
@@ -13397,7 +13400,7 @@ dependencies = [
 
 [[package]]
 name = "westend-runtime"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -13494,7 +13497,7 @@ dependencies = [
 
 [[package]]
 name = "westend-runtime-constants"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -13794,7 +13797,7 @@ dependencies = [
 
 [[package]]
 name = "xcm"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "bounded-collections",
  "derivative",
@@ -13812,7 +13815,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-builder"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "assert_matches",
  "frame-support",
@@ -13837,7 +13840,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-executor"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "environmental",
  "frame-benchmarking",
@@ -13856,7 +13859,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-executor-integration-tests"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -13876,7 +13879,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-procedural"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "Inflector",
  "proc-macro2",
@@ -13886,7 +13889,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-simulator"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
@@ -13902,7 +13905,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-simulator-example"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -13928,7 +13931,7 @@ dependencies = [
 
 [[package]]
 name = "xcm-simulator-fuzzer"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "arbitrary",
  "frame-support",
@@ -13997,7 +14000,7 @@ dependencies = [
 
 [[package]]
 name = "zombienet-backchannel"
-version = "0.9.40"
+version = "0.9.41"
 dependencies = [
  "futures-util",
  "lazy_static",
diff --git a/pkgs/applications/blockchains/polkadot/default.nix b/pkgs/applications/blockchains/polkadot/default.nix
index 2dd3869f72d13..370695d797cc2 100644
--- a/pkgs/applications/blockchains/polkadot/default.nix
+++ b/pkgs/applications/blockchains/polkadot/default.nix
@@ -9,13 +9,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "polkadot";
-  version = "0.9.40";
+  version = "0.9.41";
 
   src = fetchFromGitHub {
     owner = "paritytech";
     repo = "polkadot";
     rev = "v${version}";
-    hash = "sha256-gwifWhGsStC8vhMxc+LWSvs/av8c04cdWv7iszIQ/k8=";
+    hash = "sha256-wjV/+2n9B617S6MxC48vtpbBBKGCWBEjRj7K6m630Mo=";
 
     # the build process of polkadot requires a .git folder in order to determine
     # the git commit hash that is being built and add it to the version string.
@@ -34,7 +34,7 @@ rustPlatform.buildRustPackage rec {
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "binary-merkle-tree-4.0.0-dev" = "sha256-YxCAFrLWTmGjTFzNkyjE+DNs2cl4IjAlB7qz0KPN1vE=";
+      "binary-merkle-tree-4.0.0-dev" = "sha256-ngtW11MGs+fcuCp9J5NH+dYJeK4YM5vWpRk0OuLYHus=";
       "sub-tokens-0.1.0" = "sha256-GvhgZhOIX39zF+TbQWtTCgahDec4lQjH+NqamLFLUxM=";
     };
   };
diff --git a/pkgs/applications/blockchains/sparrow/default.nix b/pkgs/applications/blockchains/sparrow/default.nix
index d7f1963a3c893..eecc313af6ec4 100644
--- a/pkgs/applications/blockchains/sparrow/default.nix
+++ b/pkgs/applications/blockchains/sparrow/default.nix
@@ -16,15 +16,16 @@
 , openimajgrabber
 , hwi
 , imagemagick
+, gzip
 }:
 
 let
   pname = "sparrow";
-  version = "1.7.3";
+  version = "1.7.6";
 
   src = fetchurl {
     url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-x86_64.tar.gz";
-    sha256 = "sha256-/tKct73v0zWAjY4kTllnb/+SB/8ENgVl8Yh/LErKTxY=";
+    sha256 = "01ksl790i8swvj8nvl2r27bbd8kad80shsbw3di39925841dp8z3";
   };
 
   launcher = writeScript "sparrow" ''
@@ -93,7 +94,7 @@ let
   sparrow-modules = stdenv.mkDerivation {
     pname = "sparrow-modules";
     inherit version src;
-    nativeBuildInputs = [ makeWrapper gnugrep openjdk autoPatchelfHook stdenv.cc.cc.lib zlib ];
+    nativeBuildInputs = [ makeWrapper gzip gnugrep openjdk autoPatchelfHook stdenv.cc.cc.lib zlib ];
 
     buildPhase = ''
       # Extract Sparrow's JIMAGE and generate a list of them.
@@ -143,9 +144,9 @@ let
 
       # Replace the embedded Tor binary (which is in a Tar archive)
       # with one from Nixpkgs.
-      cp ${torWrapper} ./tor
-      tar -cJf tor.tar.xz tor
-      cp tor.tar.xz modules/netlayer.jpms/native/linux/x64/tor.tar.xz
+      gzip -c ${torWrapper}  > tor.gz
+      cp tor.gz modules/kmp.tor.binary.linuxx64/kmptor/linux/x64/tor.gz
+      find modules
     '';
 
     installPhase = ''
@@ -158,7 +159,8 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  inherit pname version src;
+  inherit version src;
+  pname = "sparrow-unwrapped";
   nativeBuildInputs = [ makeWrapper copyDesktopItems ];
 
   desktopItems = [
diff --git a/pkgs/applications/blockchains/sparrow/fhsenv.nix b/pkgs/applications/blockchains/sparrow/fhsenv.nix
index a82b975227c14..ae14e6e4a591e 100644
--- a/pkgs/applications/blockchains/sparrow/fhsenv.nix
+++ b/pkgs/applications/blockchains/sparrow/fhsenv.nix
@@ -1,9 +1,9 @@
 { lib
-, buildFHSUserEnv
+, buildFHSEnv
 , sparrow-unwrapped
 }:
 
-buildFHSUserEnv {
+buildFHSEnv {
   name = "sparrow";
 
   runScript = "${sparrow-unwrapped}/bin/sparrow";
diff --git a/pkgs/applications/blockchains/sparrow/update.sh b/pkgs/applications/blockchains/sparrow/update.sh
index bda8b0765aede..7a520b351aa4a 100755
--- a/pkgs/applications/blockchains/sparrow/update.sh
+++ b/pkgs/applications/blockchains/sparrow/update.sh
@@ -23,4 +23,4 @@ sha256sum -c --ignore-missing manifest.txt
 sha256=$(nix-prefetch-url --type sha256 "file://$PWD/$depname")
 popd
 
-update-source-version sparrow "$version" "$sha256"
+update-source-version sparrow-unwrapped "$version" "$sha256"
diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index 418745ffb4663..7560f5191e8b6 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -2,7 +2,7 @@
 
 { alsa-lib
 , bash
-, buildFHSUserEnv
+, buildFHSEnv
 , cacert
 , coreutils
 , dbus
@@ -178,7 +178,7 @@ let
   # Android Studio downloads prebuilt binaries as part of the SDK. These tools
   # (e.g. `mksdcard`) have `/lib/ld-linux.so.2` set as the interpreter. An FHS
   # environment is used as a work around for that.
-  fhsEnv = buildFHSUserEnv {
+  fhsEnv = buildFHSEnv {
     name = "${drvName}-fhs-env";
     multiPkgs = pkgs: [
       ncurses5
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 664199553ddf9..abadb183b91f1 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -1,4 +1,4 @@
-{ callPackage, makeFontsConf, gnome2, buildFHSUserEnv, tiling_wm ? false }:
+{ callPackage, makeFontsConf, gnome2, buildFHSEnv, tiling_wm ? false }:
 
 let
   mkStudio = opts: callPackage (import ./common.nix opts) {
@@ -6,7 +6,7 @@ let
       fontDirectories = [];
     };
     inherit (gnome2) GConf gnome_vfs;
-    inherit buildFHSUserEnv;
+    inherit buildFHSEnv;
     inherit tiling_wm;
   };
   stableVersion = {
diff --git a/pkgs/applications/editors/cudatext/default.nix b/pkgs/applications/editors/cudatext/default.nix
index ddbf234aee161..46b40abaa1a5c 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.190.1";
+  version = "1.191.0";
 
   src = fetchFromGitHub {
     owner = "Alexey-T";
     repo = "CudaText";
     rev = version;
-    hash = "sha256-JnFvbCSDRkw2/BXoSCB9IcB5hwrhB+hvS1xLj5eAQbs=";
+    hash = "sha256-wn2pSzz4w8tQjVFEIfR3/1ddeTjQBQaKl26SxXbOXG0=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/editors/cudatext/deps.json b/pkgs/applications/editors/cudatext/deps.json
index 6e8086a543e6d..57eecaabb4fd1 100644
--- a/pkgs/applications/editors/cudatext/deps.json
+++ b/pkgs/applications/editors/cudatext/deps.json
@@ -16,8 +16,8 @@
   },
   "ATSynEdit": {
     "owner": "Alexey-T",
-    "rev": "2023.04.08",
-    "hash": "sha256-FBrb/2VwmpM6FCUvHXZTJCsn/a9r3qPNBYVWyN5CS5o="
+    "rev": "2023.04.17",
+    "hash": "sha256-QllXTq9BCKedt/Pv14qOn1UoxZ57qz76OyptnjT92hA="
   },
   "ATSynEdit_Cmp": {
     "owner": "Alexey-T",
@@ -26,13 +26,13 @@
   },
   "EControl": {
     "owner": "Alexey-T",
-    "rev": "2023.04.04",
-    "hash": "sha256-BLj37uTHB4T0ek97u7hYqxbUjW71efGBKGG35CEyLR8="
+    "rev": "2023.04.17",
+    "hash": "sha256-EdtrKYZTP+1MQU5fLO6vYoU3EjS91PaSQnIxtgAs7TI="
   },
   "ATSynEdit_Ex": {
     "owner": "Alexey-T",
-    "rev": "2023.04.04",
-    "hash": "sha256-bqNq1tzZjzwMw3I6G5kuFeh7qp33DGo4gu4BVd4pONk="
+    "rev": "2023.04.17",
+    "hash": "sha256-ZCRoKuwU+DtXEEZEL2QhhwMfewQMhw+/20vVRgHpHf4="
   },
   "Python-for-Lazarus": {
     "owner": "Alexey-T",
diff --git a/pkgs/applications/editors/eclipse/build-eclipse.nix b/pkgs/applications/editors/eclipse/build-eclipse.nix
index 7773c1e75f233..46642d6755f76 100644
--- a/pkgs/applications/editors/eclipse/build-eclipse.nix
+++ b/pkgs/applications/editors/eclipse/build-eclipse.nix
@@ -2,7 +2,7 @@
 , zlib, jdk, glib, glib-networking, gtk, libXtst, libsecret, gsettings-desktop-schemas, webkitgtk
 , makeWrapper, perl, ... }:
 
-{ name, src ? builtins.getAttr stdenv.hostPlatform.system sources, sources ? null, description }:
+{ name, src ? builtins.getAttr stdenv.hostPlatform.system sources, sources ? null, description, productVersion }:
 
 stdenv.mkDerivation rec {
   inherit name src;
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     categories = [ "Development" ];
   };
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper perl ];
   buildInputs = [
     fontconfig freetype glib gsettings-desktop-schemas gtk jdk libX11
     libXrender libXtst libsecret zlib
@@ -38,14 +38,13 @@ stdenv.mkDerivation rec {
     # settings in ~/.eclipse/org.eclipse.platform_<version> rather
     # than ~/.eclipse/org.eclipse.platform_<version>_<number>.
     productId=$(sed 's/id=//; t; d' $out/eclipse/.eclipseproduct)
-    productVersion=$(sed 's/version=//; t; d' $out/eclipse/.eclipseproduct)
 
     makeWrapper $out/eclipse/eclipse $out/bin/eclipse \
       --prefix PATH : ${jdk}/bin \
       --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk libXtst libsecret ] ++ lib.optional (webkitgtk != null) webkitgtk)} \
       --prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
-      --add-flags "-configuration \$HOME/.eclipse/''${productId}_$productVersion/configuration"
+      --add-flags "-configuration \$HOME/.eclipse/''${productId}_${productVersion}/configuration"
 
     # Create desktop item.
     mkdir -p $out/share/applications
@@ -54,7 +53,7 @@ stdenv.mkDerivation rec {
     ln -s $out/eclipse/icon.xpm $out/share/pixmaps/eclipse.xpm
 
     # ensure eclipse.ini does not try to use a justj jvm, as those aren't compatible with nix
-    ${perl}/bin/perl -i -p0e 's|-vm\nplugins/org.eclipse.justj.*/jre/bin\n||' $out/eclipse/eclipse.ini
+    perl -i -p0e 's|-vm\nplugins/org.eclipse.justj.*/jre/bin.*\n||' $out/eclipse/eclipse.ini
   ''; # */
 
   meta = {
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index a0b0fa56de159..686ec3681183b 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -10,15 +10,15 @@
 # find the downloads needed for new versions
 #
 # to test:
-# $ for e in cpp modeling platform sdk java jee committers rcp; do nix build -f default.nix pkgs.eclipses.eclipse-${e} -o eclipse-${e}; done
+# for e in cpp modeling platform sdk java jee committers rcp; do for s in pkgs pkgsCross.aarch64-multiplatform; do echo; echo $s $e; nix build -f default.nix ${s}.eclipses.eclipse-${e} -o eclipse-${s}-${e}; done; done
 
 let
   platform_major = "4";
-  platform_minor = "26";
-  year = "2022";
-  month = "12"; #release month
-  buildmonth = "11"; #sometimes differs from release month
-  timestamp = "${year}${buildmonth}231800";
+  platform_minor = "27";
+  year = "2023";
+  month = "03"; #release month
+  buildmonth = "03"; #sometimes differs from release month
+  timestamp = "${year}${buildmonth}020300";
   gtk = gtk3;
   arch = if stdenv.hostPlatform.isx86_64 then
     "x86_64"
@@ -27,11 +27,13 @@ let
   else throw "don't know what platform suffix for ${stdenv.hostPlatform.system} will be";
 in rec {
 
-  buildEclipse = callPackage ./build-eclipse.nix {
+  # work around https://bugs.eclipse.org/bugs/show_bug.cgi?id=476075#c3
+  buildEclipseUnversioned = callPackage ./build-eclipse.nix {
     inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
             jdk glib gtk libXtst gsettings-desktop-schemas webkitgtk
             makeWrapper;
   };
+  buildEclipse = eclipseData: buildEclipseUnversioned (eclipseData // { productVersion = "${platform_major}.${platform_minor}"; });
 
   ### Eclipse CPP
 
@@ -42,8 +44,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-nqqY4dewq1bjeNoZdWvOez+cBti+f9qXshx1eqJ2lB7sGJva5mcR9e+CZTVD0+EtVJ/U+8viJ+E1Veht1ZnqOw==";
-          aarch64 = "sha512-kmeNH6F8oK72LtrYtiJVLKhy6Q1HwnU+Bh+mpXdXSrfj9KtqzHQkJ0kTnnJkGYLtpi+zyXDwsxzyjh6pPyDRJA==";
+          x86_64 = "sha256-MBng3ETarHMlUUPpVvMIZxVqpe9JW5xNHonnN6CHRcw=";
+          aarch64 = "sha256-7FgpPzp5MY/fB6Q/wvrvi+Lpcm3tmH7bUTLh7q2Rjek=";
         }.${arch};
       };
   };
@@ -57,8 +59,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-WU2BJt6GL3ug3yOUOd5y6/AbGLcr2MkCg+QJiNIMkSXvoU9TF6R6oimoGVc3kPZmazRy6WYoes55T3bWrHnO8Q==";
-          aarch64 = "sha512-F63f2o9u/p7hhrxI+Eu6NiL4sPccIYw876Nnj8mfSZ7bozs1OVNWftZj+xbdLLbr0bVz3WKnt4BHzcLUA6QG7g==";
+          x86_64 = "sha256-BXofrKElgCG3+WUCanpX1sGLhirj2pLi+pi24Z+WjBk=";
+          aarch64 = "sha256-CdePRa6jmWlt3Wismt3RahGzYOm1ZDwQRt82kRVXSdM=";
         }.${arch};
       };
   };
@@ -72,8 +74,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-hmdWGteMDt4HhYq+k9twuftalpTzHtGnVVLphZcpJcw+6vJfersciDMaeLRqbCAeFbzJdgzjYo76bpP6FubySw==";
-          aarch64 = "sha512-BvUkOdCsjwtscPeuBXG7ZpitOr8EQK5JL8nSGpw/RhhBEFz46nsc7W18l0aYjdzRHh2ie55RylS2PEQELkS/hQ==";
+          x86_64 = "sha256-aprXjNv2NMoIDCNkFxwmMKcGUt2ssRonzTZ/hH57Mig=";
+          aarch64 = "sha256-Aq9PDVo/9zTeQ2j6q5bf1aIKjKM7oonIr1mEQ7rX48Y=";
         }.${arch};
       };
   };
@@ -81,9 +83,10 @@ in rec {
   ### Eclipse Scala SDK
 
   eclipse-scala-sdk =
-    (buildEclipse.override { jdk = jdk8; gtk = gtk2; } {
+    (buildEclipseUnversioned.override { jdk = jdk8; gtk = gtk2; } {
       name = "eclipse-scala-sdk-4.7.0";
       description = "Eclipse IDE for Scala Developers";
+      productVersion = "4.7";
       src =
         fetchurl {
           url = "https://downloads.typesafe.com/scalaide-pack/4.7.0-vfinal-oxygen-212-20170929/scala-SDK-4.7.0-vfinal-2.12-linux.gtk.x86_64.tar.gz";
@@ -103,8 +106,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-yH4/K9sBLCUc2EVYwPL0dLql/S3AfaV6fFh7ewAuIb7yHtcsOWMqy/h1hZUlFFg2ykfwDWDDHEK7qfTI0hM7BQ==";
-          aarch64 = "sha512-UYp8t7r2RrN3rKN180cWpJyhyO5LVXL8LrTRKJzttUgB7kM1nroTEI3DesBu+Hw4Ynl7eLiBK397rqcpOAfxJw==";
+          x86_64 = "sha256-39DXU7wIsdxkUpNKnYPT7+qPJ2DrF7G7UJqPfhEDGGs=";
+          aarch64 = "sha256-7GwKGNHWPZ3uOFyzQj1dftFFz/3oa2j8XWkRn0wnllY=";
         }.${arch};
       };
   };
@@ -118,8 +121,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-71mXYVLVnyDjYZbJGBKc0aDPq8sbTxlVZRQq7GlSUDv2fsoNYWYgqYfK7RSED5yoasCfs3HUYr7QowRAKJOnfQ==";
-          aarch64 = "sha512-KOQ6BZuQJeVpbMQVxF67M3F/KXMmDhmZQBNq0yWM+/8+d0DiBRkwJtqPYsnTqrax8FSunn2yy+CzlfyHSoNvpg==";
+          x86_64 = "sha256-zNBzFHmNaxUutzMh/5pOglJiKh5NAvSVwvPYyA6RVr4=";
+          aarch64 = "sha256-RtLXB9kgpLERfhpvDTaJG84qVyN1Puud1PTZtk/WIO0=";
         }.${arch};
       };
   };
@@ -133,8 +136,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-55i9YVOa+vKHt72vHIqy9BmKMkg1KaLqMStjTtfaLTH5yP0ei+NTP2XL8IBHOgu0hCEJqYXTq+3I3RQy476etQ==";
-          aarch64 = "sha512-iaoTB/Pinoj1weiGBBv0plQ4jGNdFs2JiBG7S/icUoAX5O6jTGAgJvOwh7Nzn+0N6YL6+HPWaV24a6lM43y8Og==";
+          x86_64 = "sha256-vpvmKZKVl6ubfq8QMDr0xprXYMWl576hu+ovvREN4ak=";
+          aarch64 = "sha256-5Yqxgl4kkN3Bb7hsTnd9q5TsCpVBVkEVvqPbL5MYEyg=";
         }.${arch};
       };
   };
@@ -148,8 +151,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha512-zGeynifM0dn1214HEVS7OVtv7xa8asjLzOXh5riJK8c/DWvNrRduHn6o6PGnxYOYVIfC9BzNRAjG1STkWu9j+Q==";
-          aarch64 = "sha512-B866dFJcsTkq+h0RZ61CxXE83TWvCf8ZAbGeIC385PpPR3i/gZnRjN2oRrDP22CNR5XXA+PfXKxqvERhJB5ebA==";
+          x86_64 = "sha256-4SAiEZWSUaiK8QO2Hg39FBcj1aYRtbOJkeF1W1AMQBo=";
+          aarch64 = "sha256-+KGDlo6QK3o/n2vSiD0HpIkBwqwIiMXzdFUpfE48gps=";
         }.${arch};
       };
   };
@@ -163,8 +166,8 @@ in rec {
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
         hash = {
-          x86_64 = "sha256-ml76ix0fHuR0KqYWQuTftEBAgq7iaOIyvr8V6WhuzeU=";
-          aarch64 = "sha256-sMB6a3f0fiL6ZentIjJTMi59ZOh7dizXrkMQuIRbds0=";
+          x86_64 = "sha256-bhcpzsS9cci3Y3Pk9DOrtPonKjRg/vzDqDr3Be/xfks=";
+          aarch64 = "sha256-YCb4leFWRtx4VPwK/5vgwwDH3/f0/0OWEy4ueAS7sUw=";
         }.${arch};
       };
   };
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 5ae155f39f9a9..a8a248804b046 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -254,13 +254,13 @@ rec {
 
   cdt = buildEclipseUpdateSite rec {
     name = "cdt-${version}";
-    # find current version at https://www.eclipse.org/cdt/downloads.php
-    version = "11.0.0";
+    # find current version at https://github.com/eclipse-cdt/cdt/releases
+    version = "11.1.1";
 
     src = fetchzip {
       stripRoot = false;
       url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/${lib.versions.majorMinor version}/${name}/${name}.zip";
-      hash = "sha256-2rt9crMqNFevIHFIdOGWDq+j0ZJPVt1a9Z7P9HG58Ks=";
+      hash = "sha256-k78QKPIb3Lr0Wcg2tTlX1abdpcvxspjaxJiP2Hrgb4A=";
     };
 
     meta = with lib; {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
index d1f9dbd3a4a5c..08d96268e7aa7 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
@@ -106,7 +106,9 @@ self: let
         };
       });
 
-      jinx = super.jinx.overrideAttrs (old: {
+      jinx = super.jinx.overrideAttrs (old: let
+        libExt = pkgs.stdenv.targetPlatform.extensions.sharedLibrary;
+      in {
         dontUnpack = false;
 
         nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
@@ -117,12 +119,12 @@ self: let
 
         postBuild = ''
           NIX_CFLAGS_COMPILE="$($PKG_CONFIG --cflags enchant-2) $NIX_CFLAGS_COMPILE"
-          $CC -shared -o jinx-mod.so jinx-mod.c -lenchant-2
+          $CC -shared -o jinx-mod${libExt} jinx-mod.c -lenchant-2
         '';
 
         postInstall = (old.postInstall or "") + "\n" + ''
           outd=$out/share/emacs/site-lisp/elpa/jinx-*
-          install -m444 -t $outd jinx-mod.so
+          install -m444 -t $outd jinx-mod${libExt}
           rm $outd/jinx-mod.c $outd/emacs-module.h
         '';
 
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/ebuild-mode/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/ebuild-mode/default.nix
index 7473a8587929e..894f8b75cc84f 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/ebuild-mode/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/ebuild-mode/default.nix
@@ -2,11 +2,11 @@
 
 trivialBuild rec {
   pname = "ebuild-mode";
-  version = "1.61";
+  version = "1.63";
 
   src = fetchurl {
     url = "https://dev.gentoo.org/~ulm/emacs/${pname}-${version}.tar.xz";
-    sha256 = "sha256-/n3gs99psdiCA1Kjtljfx9T5anGPphtsMIC2nOCv0wk=";
+    sha256 = "sha256-Ar11zz0IVMu0g9+PN9dXvj8yeKnUGi8M+CTJfGP3bd4=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
index 1f37004420a6c..d91a3e7d8edb3 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
@@ -314,7 +314,9 @@ let
 
         ivy-rtags = fix-rtags super.ivy-rtags;
 
-        jinx = super.jinx.overrideAttrs (old: {
+        jinx = super.jinx.overrideAttrs (old: let
+          libExt = pkgs.stdenv.targetPlatform.extensions.sharedLibrary;
+        in {
           nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
             pkgs.pkg-config
           ];
@@ -324,14 +326,14 @@ let
           postBuild = ''
             pushd working/jinx
             NIX_CFLAGS_COMPILE="$($PKG_CONFIG --cflags enchant-2) $NIX_CFLAGS_COMPILE"
-            $CC -shared -o jinx-mod.so jinx-mod.c -lenchant-2
+            $CC -shared -o jinx-mod${libExt} jinx-mod.c -lenchant-2
             popd
           '';
 
           postInstall = (old.postInstall or "") + "\n" + ''
             pushd source
             outd=$(echo $out/share/emacs/site-lisp/elpa/jinx-*)
-            install -m444 --target-directory=$outd jinx-mod.so
+            install -m444 --target-directory=$outd jinx-mod${libExt}
             rm $outd/jinx-mod.c $outd/emacs-module.h
             popd
           '';
@@ -341,6 +343,28 @@ let
           };
         });
 
+        sqlite3 = super.sqlite3.overrideAttrs (old: {
+          buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.sqlite ];
+
+          postBuild = ''
+            pushd working/sqlite3
+            make
+            popd
+          '';
+
+          postInstall = (old.postInstall or "") + "\n" + ''
+            pushd source
+            outd=$out/share/emacs/site-lisp/elpa/sqlite3-*
+            install -m444 -t $outd sqlite3-api.so
+            rm $outd/*.c $outd/*.h
+            popd
+          '';
+
+          meta = old.meta // {
+            maintainers = [ lib.maintainers.DamienCassou ];
+          };
+        });
+
         libgit = super.libgit.overrideAttrs(attrs: {
           nativeBuildInputs = (attrs.nativeBuildInputs or []) ++ [ pkgs.cmake ];
           buildInputs = attrs.buildInputs ++ [ pkgs.libgit2 ];
diff --git a/pkgs/applications/editors/featherpad/default.nix b/pkgs/applications/editors/featherpad/default.nix
index b7cca4ff3ec9c..5edf029e0030d 100644
--- a/pkgs/applications/editors/featherpad/default.nix
+++ b/pkgs/applications/editors/featherpad/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "featherpad";
-  version = "1.3.5";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "tsujan";
     repo = "FeatherPad";
     rev = "V${version}";
-    sha256 = "sha256-deQDLcymci8x9QvVOfNwroZPvifovxV6+jT9Grl3sxA=";
+    sha256 = "sha256-6hu8r38hrQEt0vaO9XA+KaWPuWYcBdydpjEf2V+m5xY=";
   };
 
   nativeBuildInputs = [ cmake pkg-config qttools ];
diff --git a/pkgs/applications/editors/ghostwriter/default.nix b/pkgs/applications/editors/ghostwriter/default.nix
deleted file mode 100644
index bcb7e066bfc64..0000000000000
--- a/pkgs/applications/editors/ghostwriter/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, stdenv
-, mkDerivation
-, fetchFromGitHub
-, qmake
-, pkg-config
-, qttools
-, qtwebengine
-, hunspell
-, cmark
-, multimarkdown
-, pandoc
-}:
-
-mkDerivation rec {
-  pname = "ghostwriter";
-  version = "2.2.0";
-
-  src = fetchFromGitHub {
-    owner = "KDE";
-    repo = pname;
-    rev = version;
-    hash = "sha256-8JtCO5jrkbZ4uEM7SALg64L4HSzdzzh7r1pldxzaXeI=";
-  };
-
-  nativeBuildInputs = [ qmake pkg-config qttools ];
-
-  buildInputs = [ qtwebengine hunspell ];
-
-  qtWrapperArgs = [
-    "--prefix" "PATH" ":" (lib.makeBinPath [ cmark multimarkdown pandoc ])
-  ];
-
-  meta = with lib; {
-    description = "A cross-platform, aesthetic, distraction-free Markdown editor";
-    homepage = "https://kde.github.io/ghostwriter";
-    changelog = "https://github.com/KDE/ghostwriter/blob/${src.rev}/CHANGELOG.md";
-    license = licenses.gpl3Plus;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ dotlambda erictapen ];
-    broken = stdenv.isDarwin;
-  };
-}
diff --git a/pkgs/applications/editors/kakoune/plugins/update.py b/pkgs/applications/editors/kakoune/plugins/update.py
index 49662a0e8e2e2..ab5aa9242839c 100755
--- a/pkgs/applications/editors/kakoune/plugins/update.py
+++ b/pkgs/applications/editors/kakoune/plugins/update.py
@@ -81,10 +81,7 @@ in lib.fix' (lib.extends overrides packages)
 
 def main():
     editor = KakouneEditor("kakoune", ROOT, GET_PLUGINS)
-    parser = editor.create_parser()
-    args = parser.parse_args()
-
-    pluginupdate.update_plugins(editor, args)
+    editor.run()
 
 
 if __name__ == "__main__":
diff --git a/pkgs/applications/editors/moe/default.nix b/pkgs/applications/editors/moe/default.nix
index 197cccd43c3fa..71449a0b8a808 100644
--- a/pkgs/applications/editors/moe/default.nix
+++ b/pkgs/applications/editors/moe/default.nix
@@ -5,12 +5,12 @@
 , ncurses
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "moe";
   version = "1.13";
 
   src = fetchurl {
-    url = "mirror://gnu/moe/moe-${self.version}.tar.lz";
+    url = "mirror://gnu/moe/moe-${finalAttrs.version}.tar.lz";
     hash = "sha256-Q6VXvFEvidbHGOX0ECnP46BVaCYg642+zmMC80omFGs=";
   };
 
diff --git a/pkgs/applications/editors/notepad-next/default.nix b/pkgs/applications/editors/notepad-next/default.nix
index ab9489cd381f5..dcea229e818ab 100644
--- a/pkgs/applications/editors/notepad-next/default.nix
+++ b/pkgs/applications/editors/notepad-next/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "notepad-next";
-  version = "0.6";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "dail8859";
     repo = "NotepadNext";
     rev = "v${version}";
-    sha256 = "sha256-t+TfyhQjUp4xJQ4vihAwm691dpt8ctQwLYDRRAQI7OM=";
+    sha256 = "sha256-4OjthXAzcAVwDA7+oK7sKiOiB7i/cYIdxyrz+9wPvDg=";
     # External dependencies - https://github.com/dail8859/NotepadNext/issues/135
     fetchSubmodules = true;
   };
diff --git a/pkgs/applications/editors/orbiton/default.nix b/pkgs/applications/editors/orbiton/default.nix
index ec8eb24073c21..321bd1358e2fc 100644
--- a/pkgs/applications/editors/orbiton/default.nix
+++ b/pkgs/applications/editors/orbiton/default.nix
@@ -4,13 +4,13 @@
 
 buildGoModule rec {
   pname = "orbiton";
-  version = "2.60.5";
+  version = "2.60.6";
 
   src = fetchFromGitHub {
     owner = "xyproto";
     repo = "orbiton";
     rev = "v${version}";
-    hash = "sha256-gCE4mrZXLFteZKUPDsAc1hS1I/WTns9I9oZE5bAF7fU=";
+    hash = "sha256-uDxdv7HlswGsuM4UewZOO45/P9jIOo4bb0T1RrQqtpg=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/editors/pulsar/default.nix b/pkgs/applications/editors/pulsar/default.nix
index 545cd95f6f551..85b28061e45d3 100644
--- a/pkgs/applications/editors/pulsar/default.nix
+++ b/pkgs/applications/editors/pulsar/default.nix
@@ -17,23 +17,26 @@
 , makeDesktopItem
 , copyDesktopItems
 , makeWrapper
+, nodePackages
+, python3
 }:
 
 let
-  pname = "Pulsar";
-  version = "1.103.0";
+  pname = "pulsar";
+  version = "1.104.0";
 
   sourcesPath = {
     x86_64-linux.tarname = "Linux.${pname}-${version}.tar.gz";
-    x86_64-linux.hash = "sha256-C9La+rMpxyFthNPwPBZfV1goP/F1TiNYYYwmPCSkKdw=";
+    x86_64-linux.hash = "sha256-HEMUQVNPb6qWIXX25N79HwHo7j11MyFiBRsq9otdAL8=";
     aarch64-linux.tarname = "ARM.Linux.${pname}-${version}-arm64.tar.gz";
-    aarch64-linux.hash = "sha256-uVGxDLqFgm5USZT6i7pLYJZq8jFxZviVXXYTL3RVhpw=";
+    aarch64-linux.hash = "sha256-f+s54XtLLdhTFY9caKTKngJF6zLai0F7ur9v37bwuNE=";
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   additionalLibs = lib.makeLibraryPath [
     xorg.libxshmfence
     libxkbcommon
     xorg.libxkbfile
+    stdenv.cc.cc.lib
   ];
   newLibpath = "${atomEnv.libPath}:${additionalLibs}";
 
@@ -57,6 +60,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     wrapGAppsHook
     copyDesktopItems
+    nodePackages.asar
   ];
 
   buildInputs = [
@@ -110,12 +114,26 @@ stdenv.mkDerivation rec {
     ln -s ${git}/bin/git $dugite/git/bin/git
     rm -f $dugite/git/libexec/git-core/git
     ln -s ${git}/bin/git $dugite/git/libexec/git-core/git
+
+    # We have to patch a prebuilt binary in the asar archive
+    # But asar complains because the node_gyp unpacked dependency uses a prebuilt Python3 itself
+
+    rm $opt/resources/app.asar.unpacked/node_modules/tree-sitter-bash/build/node_gyp_bins/python3
+    ln -s ${python3}/bin/python3 $opt/resources/app.asar.unpacked/node_modules/tree-sitter-bash/build/node_gyp_bins/python3
   '' + ''
     # Patch the bundled node executables
     find $opt -name "*.node" -exec patchelf --set-rpath "${newLibpath}:$opt" {} \;
     # Also patch the node executable for apm
     patchelf --set-rpath "${newLibpath}:$opt" $opt/resources/app/ppm/bin/node
 
+    # The pre-packaged ASAR bundle comes with prebuild binaries, expecting libstdc++.so.6
+    asarBundle=$TMPDIR/asarbundle
+    asar e $opt/resources/app.asar $asarBundle
+    find $asarBundle -name "*.node" -exec patchelf --set-rpath "${newLibpath}:$opt" --add-needed libstdc++.so.6 {} \;
+    unlink $asarBundle/node_modules/document-register-element/dre # Self referencing symlink, breaking asar rebundling
+    asar p $asarBundle $opt/resources/app.asar
+    rm -rf $asarBundle
+
     # We have patched the original wrapper, but now it needs the "PULSAR_PATH" env var
     mkdir -p $out/bin
     wrapProgram $opt/resources/pulsar.sh \
diff --git a/pkgs/applications/editors/pulsar/update.mjs b/pkgs/applications/editors/pulsar/update.mjs
index ecddbbbb9b8af..82e86be072d40 100755
--- a/pkgs/applications/editors/pulsar/update.mjs
+++ b/pkgs/applications/editors/pulsar/update.mjs
@@ -4,15 +4,13 @@
 */
 
 import { promises as fs } from 'node:fs';
-import { promisify } from 'node:util';
-import { exec as _exec } from 'node:child_process';
-const exec = promisify(_exec);
 
 const constants = {
     githubUrl: "https://api.github.com/repos/pulsar-edit/pulsar/releases",
     sha256FileURL: (newVersion) => `https://github.com/pulsar-edit/pulsar/releases/download/v${newVersion}/SHA256SUMS.txt`,
     x86_64FileName: (newVersion) => `Linux.pulsar-${newVersion}.tar.gz`,
     aarch64FileName: (newVersion) => `ARM.Linux.pulsar-${newVersion}-arm64.tar.gz`,
+    targetFile: new URL("default.nix", import.meta.url).pathname,
 };
 
 async function getLatestVersion() {
@@ -69,10 +67,10 @@ async function updateFile(newVersion, sha256Sums, currentFile) {
     newFile = newFile.replace(/x86_64-linux\.hash = "(.*)";/, `x86_64-linux.hash = "${sha256Sums.x86_64}";`);
     newFile = newFile.replace(/aarch64-linux\.hash = "(.*)";/, `aarch64-linux.hash = "${sha256Sums.aarch64}";`);
 
-    await fs.writeFile('default.nix', newFile);
+    await fs.writeFile(constants.targetFile, newFile);
 };
 
-let currentFile = await fs.readFile('default.nix', 'utf8');
+let currentFile = await fs.readFile(constants.targetFile, 'utf8');
 let currentVersion = currentFile.match(/version = "(.*)";/)[1];
 const newVersion = await getLatestVersion();
 if (currentVersion === newVersion) {
diff --git a/pkgs/applications/editors/quartus-prime/default.nix b/pkgs/applications/editors/quartus-prime/default.nix
index 50eacf97bf850..a3eee45ed4d04 100644
--- a/pkgs/applications/editors/quartus-prime/default.nix
+++ b/pkgs/applications/editors/quartus-prime/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildFHSUserEnv, callPackage, makeDesktopItem, writeScript
+{ stdenv, lib, buildFHSEnvChroot, callPackage, makeDesktopItem, writeScript
 , supportedDevices ? [ "Arria II" "Cyclone V" "Cyclone IV" "Cyclone 10 LP" "MAX II/V" "MAX 10 FPGA" ]
 , unwrapped ? callPackage ./quartus.nix { inherit supportedDevices; }
 }:
@@ -13,7 +13,7 @@ let
     categories = [ "Development" ];
   };
 # I think modelsim_ase/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
-in buildFHSUserEnv rec {
+in buildFHSEnvChroot rec {
   name = "quartus-prime-lite"; # wrapped
 
   targetPkgs = pkgs: with pkgs; [
@@ -44,7 +44,7 @@ in buildFHSUserEnv rec {
     xorg.libXext
     xorg.libXrender
     libudev0-shim
-    libxcrypt
+    libxcrypt-legacy
   ];
 
   passthru = { inherit unwrapped; };
diff --git a/pkgs/applications/editors/setzer/default.nix b/pkgs/applications/editors/setzer/default.nix
index 193d7a0416d02..4ba505ff78857 100644
--- a/pkgs/applications/editors/setzer/default.nix
+++ b/pkgs/applications/editors/setzer/default.nix
@@ -11,20 +11,21 @@
 , gobject-introspection
 , gtksourceview4
 , gspell
+, libhandy
 , poppler_gi
-, webkitgtk
+, webkitgtk_4_1
 , librsvg
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "setzer";
-  version = "0.4.8";
+  version = "55";
 
   src = fetchFromGitHub {
     owner = "cvfosammmm";
     repo = "Setzer";
     rev = "v${version}";
-    hash = "sha256-7NPyvAof0xObYZws3KFAbdue/GpIRthzdX00jc9GhYs=";
+    hash = "sha256-Mcl9kWeo4w/wW8crR58Yyqoh26w8/SmNrjmHps6DmRA=";
   };
 
   format = "other";
@@ -43,8 +44,9 @@ python3.pkgs.buildPythonApplication rec {
   buildInputs = [
     gtksourceview4
     gspell
+    libhandy
     poppler_gi
-    webkitgtk
+    webkitgtk_4_1
     librsvg
   ];
 
diff --git a/pkgs/applications/editors/texmaker/default.nix b/pkgs/applications/editors/texmaker/default.nix
index d4bfdebd6a552..01c2e8e74ae14 100644
--- a/pkgs/applications/editors/texmaker/default.nix
+++ b/pkgs/applications/editors/texmaker/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkDerivation, fetchurl, qtbase, qtscript, qtwebengine, qmake, zlib, pkg-config, poppler }:
+{ lib, mkDerivation, fetchurl, qtbase, qtscript, qtwebengine, qmake, zlib, pkg-config, poppler, wrapGAppsHook }:
 
 mkDerivation rec {
   pname = "texmaker";
@@ -10,7 +10,7 @@ mkDerivation rec {
   };
 
   buildInputs = [ qtbase qtscript poppler zlib qtwebengine ];
-  nativeBuildInputs = [ pkg-config poppler qmake ];
+  nativeBuildInputs = [ pkg-config poppler qmake wrapGAppsHook ];
   env.NIX_CFLAGS_COMPILE = "-I${poppler.dev}/include/poppler";
 
   qmakeFlags = [
@@ -19,6 +19,12 @@ mkDerivation rec {
     "METAINFODIR=${placeholder "out"}/share/metainfo"
   ];
 
+  dontWrapGApps = true;
+
+  preFixup = ''
+    qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   meta = with lib; {
     description = "TeX and LaTeX editor";
     longDescription=''
diff --git a/pkgs/applications/editors/texworks/0001-fix-build-with-qt-6.5.patch b/pkgs/applications/editors/texworks/0001-fix-build-with-qt-6.5.patch
new file mode 100644
index 0000000000000..8cafd9c3e2e67
--- /dev/null
+++ b/pkgs/applications/editors/texworks/0001-fix-build-with-qt-6.5.patch
@@ -0,0 +1,26 @@
+From b26a91fd0f70e8f0a8f3360a5f371a1eace70002 Mon Sep 17 00:00:00 2001
+From: Nick Cao <nickcao@nichi.co>
+Date: Sun, 16 Apr 2023 22:10:55 +0800
+Subject: [PATCH] fix build with qt 6.5
+
+The fix is borrowed from https://github.com/hluk/CopyQ/pull/2324
+---
+ src/scripting/Script.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/scripting/Script.cpp b/src/scripting/Script.cpp
+index 3437f125..906eefde 100644
+--- a/src/scripting/Script.cpp
++++ b/src/scripting/Script.cpp
+@@ -352,7 +352,7 @@ Script::MethodResult Script::doCallMethod(QObject * obj, const QString& name,
+ 		}
+ 		else if (typeName == QString::fromLatin1("QVariant")) {
+ 			// QMetaType can't construct QVariant objects
+-			retValArg = Q_RETURN_ARG(QVariant, result);
++			retValArg = QGenericReturnArgument("QVariant", static_cast<void*>(result.data()));
+ 		}
+ 		else {
+ 			// Note: These two lines are a hack!
+-- 
+2.39.2
+
diff --git a/pkgs/applications/editors/texworks/default.nix b/pkgs/applications/editors/texworks/default.nix
index 4f1544eeb46a5..72db4262c8773 100644
--- a/pkgs/applications/editors/texworks/default.nix
+++ b/pkgs/applications/editors/texworks/default.nix
@@ -22,6 +22,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-X0VuXNghHoNsNNDfZJXXJ++nfUa5ofjW8rv3CHOUzxQ=";
   };
 
+  patches = [ ./0001-fix-build-with-qt-6.5.patch ];
+
   nativeBuildInputs = [
     cmake
     pkg-config
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index b5a618219ff79..fca149b7f46c8 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -1,4 +1,4 @@
-# This file has been generated by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!
+# GENERATED by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!
 { lib, buildVimPluginFrom2Nix, buildNeovimPluginFrom2Nix, fetchFromGitHub, fetchgit }:
 
 final: prev:
@@ -29,12 +29,12 @@ final: prev:
 
   ChatGPT-nvim = buildVimPluginFrom2Nix {
     pname = "ChatGPT.nvim";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "jackMort";
       repo = "ChatGPT.nvim";
-      rev = "3ff8403136e3298f45ff9d11456f922da5b9fc50";
-      sha256 = "057y17xqs29w06rmiyjnacj3v4pix3a0a088khg3kxv6lnazsyd4";
+      rev = "5a0fdf6c408a53924081aff0b7379e765c7edc1b";
+      sha256 = "06pjcsbg4kmxily4ggnc7sx06kas0v5vqch2jzkazds2icbnpnk3";
     };
     meta.homepage = "https://github.com/jackMort/ChatGPT.nvim/";
   };
@@ -173,12 +173,12 @@ final: prev:
 
   LazyVim = buildVimPluginFrom2Nix {
     pname = "LazyVim";
-    version = "2023-03-31";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "LazyVim";
       repo = "LazyVim";
-      rev = "7ce1b1519a45f48aa4b5f35b7b7a886b42fe56d8";
-      sha256 = "0rvv2rdn5g3x54prrhiv3lq9m1d55kx8myria0xpmckw8rl1i38m";
+      rev = "2f93f69171e6203d79b2aaf1798be71ae1137bda";
+      sha256 = "0qmwixccxjcfi3d6mk1h488y0nkv3d7csspn9m5mnp8qw1m617di";
     };
     meta.homepage = "https://github.com/LazyVim/LazyVim/";
   };
@@ -305,12 +305,12 @@ final: prev:
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2023-04-06";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "a592fbe98959d13014b022ec1b1418498309019c";
-      sha256 = "0adx845p0vwyrzqx3ncl34dsmaac036bh0ydb6ib4kn3j5fq3slq";
+      rev = "bff3297b0c1dba18907c9e5a8eb433e8b2add045";
+      sha256 = "05vzrmylh84wz4248kwn0nfp0q1sw6k69lkx3ssr7w4yxpf92986";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -365,12 +365,12 @@ final: prev:
 
   SpaceVim = buildVimPluginFrom2Nix {
     pname = "SpaceVim";
-    version = "2023-04-07";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "SpaceVim";
       repo = "SpaceVim";
-      rev = "2cf2f0a9875c66c5179dda0c86143af3bc5ae119";
-      sha256 = "0i7fhy0l94x3nd5wmzfmw4aqqrj2aw8vvhb8cdghyh8mqddbqj8n";
+      rev = "07ef56b433dabe259687cb2a2d603aaab82753ed";
+      sha256 = "1n7ycr5wj3ad8i79z4g5l8b5d6qiz5crzvpimj9nzlmi0r2az7yr";
     };
     meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
   };
@@ -437,12 +437,12 @@ final: prev:
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2023-04-06";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "b3e8838ec90d6b017b3b99715fdb2463d2de730f";
-      sha256 = "1yf5h3l273hws5vhfsfigghcva5nb7fxyx3isj0dv5xx8lvgqsdq";
+      rev = "78ba06ef21bfab9835ced9f4ba8ffdac1b975c40";
+      sha256 = "0wr3d5ziwnb2v3fwh5asl1jq9js159qz8q1l8p0y4wx1jbfvryll";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
@@ -486,12 +486,12 @@ final: prev:
 
   aerial-nvim = buildVimPluginFrom2Nix {
     pname = "aerial.nvim";
-    version = "2023-04-04";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "7371322c60120a56bcc833c407de96be42c18172";
-      sha256 = "06m3kgj4r7cys16phihszdqsdpkhkgx2q4xx59jagcjgdijn6dgp";
+      rev = "00cac8e96f932dca8f559849cbea3f0812621d0d";
+      sha256 = "1i57k301va0c1kgxblz4cyq6s38g6z54xzklddyhrvvq4pvn31mi";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
@@ -547,12 +547,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2023-04-07";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "57254db9ef1e0b0bf21466ed2d3ebaf60338768f";
-      sha256 = "01n04zi55y6nrg2dg2jpfacs7a140wa0m8rfkingdvx59n5g3j6j";
+      rev = "fdadaed2ba93432add241bb25f9935dc2ebb4152";
+      sha256 = "08i1fs55b3wqbvn3259c7zwnr45iv0lcyqri7ig7xgppi13hm2x8";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -571,12 +571,12 @@ final: prev:
 
   alpha-nvim = buildVimPluginFrom2Nix {
     pname = "alpha-nvim";
-    version = "2023-03-21";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "goolord";
       repo = "alpha-nvim";
-      rev = "dafa11a6218c2296df044e00f88d9187222ba6b0";
-      sha256 = "0qsm73hjdg82xvd1pdi30splm2031n4s9wk1llmh0pllwz97zllc";
+      rev = "87c204040e3f5d4c1c95067b35905d8f8a2f2545";
+      sha256 = "0g4p18852vl6j9yb1cgqbcmkil90sf30wss85xcfa2zviid0ab6a";
     };
     meta.homepage = "https://github.com/goolord/alpha-nvim/";
   };
@@ -847,36 +847,36 @@ final: prev:
 
   b64-nvim = buildVimPluginFrom2Nix {
     pname = "b64.nvim";
-    version = "2022-08-22";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "taybart";
       repo = "b64.nvim";
-      rev = "12dde6ebc3035f010833f513cfbd9abad92b28b3";
-      sha256 = "0h3ghaddqf00q7gih53ni7mx0iw5k9m616j34yg6hdf6s12zp5qw";
+      rev = "0efc9f2d5baf546298c3ef936434fe5783d7ecb3";
+      sha256 = "1sb24ydihp01qkrvfr1pc2wf5yjl9sb8b893x5hm6l8q8a70pr5h";
     };
     meta.homepage = "https://github.com/taybart/b64.nvim/";
   };
 
   barbar-nvim = buildVimPluginFrom2Nix {
     pname = "barbar.nvim";
-    version = "2023-04-10";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "romgrk";
       repo = "barbar.nvim";
-      rev = "0a21988ddfe4e63ef4d89332b2a6914dbdbf16ac";
-      sha256 = "1iy8pizpx1j6lqhnkfp3iijy9y6c2ja3dqvkmp68wryiffr1bvgh";
+      rev = "8edf23fe94a2486a8bc74cb64efb9211810f7e83";
+      sha256 = "1ja724qvy2g1irgpkm1yihmbzcyzmmkdwlfa5pbbkla1n9wppks4";
     };
     meta.homepage = "https://github.com/romgrk/barbar.nvim/";
   };
 
   barbecue-nvim = buildVimPluginFrom2Nix {
     pname = "barbecue.nvim";
-    version = "2023-04-09";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "utilyre";
       repo = "barbecue.nvim";
-      rev = "0859f1264310e8b5f75e2da1d5254c586fc7e3c8";
-      sha256 = "0h391fy61il5xvdm48h73ddckf27x5x4vqr1x6fbv7zll9qi1q1l";
+      rev = "ac2272e72e4d1960d9cab62f9914e264ba1e6082";
+      sha256 = "1lgnibhqrwl956v3h6rbxljqx87ps582isiwhf98afh541wsk18a";
     };
     meta.homepage = "https://github.com/utilyre/barbecue.nvim/";
   };
@@ -941,6 +941,18 @@ final: prev:
     meta.homepage = "https://github.com/max397574/better-escape.nvim/";
   };
 
+  bigfile-nvim = buildVimPluginFrom2Nix {
+    pname = "bigfile.nvim";
+    version = "2022-12-01";
+    src = fetchFromGitHub {
+      owner = "LunarVim";
+      repo = "bigfile.nvim";
+      rev = "c1bad34ce742b4f360b67ca23c873fef998240fc";
+      sha256 = "1jgjj0knyizwyvbv9ddg36hcpwbscy4p5fsqwzybnsjgxd32602j";
+    };
+    meta.homepage = "https://github.com/LunarVim/bigfile.nvim/";
+  };
+
   bitbake-vim = buildVimPluginFrom2Nix {
     pname = "bitbake.vim";
     version = "2021-02-06";
@@ -1051,12 +1063,12 @@ final: prev:
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2023-04-03";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "ef4fdc5cea3473801dce89b5fdfe633380c80c65";
-      sha256 = "1kxkgz58xi7257f90apmna9nxp77d8x63zkcxygi2g67p745fd78";
+      rev = "8b32447f1ba00f71ec2ebb413249d1d84228d9fb";
+      sha256 = "1i46lgd2w1zwi08zkfs4xfq2gzz7s58hw1mm6s76avbp4fqjrr7q";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
@@ -1111,12 +1123,12 @@ final: prev:
 
   ccc-nvim = buildVimPluginFrom2Nix {
     pname = "ccc.nvim";
-    version = "2023-03-31";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "uga-rosa";
       repo = "ccc.nvim";
-      rev = "3e07b8ffc9dab162cd2940e75601da75ed0cebbe";
-      sha256 = "0rk2gvnksss5w29sij6pw9rw0ah7wgvl5q8h21iby6wyvrzhh32i";
+      rev = "985c4a25ad610c6dc3294f1f8d52384440e2b600";
+      sha256 = "0akwmz8vfa5wy6wdvammq1hrmkxb07d7i9kn3hvhikzld2s82kgy";
     };
     meta.homepage = "https://github.com/uga-rosa/ccc.nvim/";
   };
@@ -1279,12 +1291,12 @@ final: prev:
 
   cmp-cmdline = buildVimPluginFrom2Nix {
     pname = "cmp-cmdline";
-    version = "2023-02-16";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-cmdline";
-      rev = "8fcc934a52af96120fe26358985c10c035984b53";
-      sha256 = "1bhhna3f1xzf6y7q6iq9v2369w0jrgnh0hngnw84wh79pknqsgb3";
+      rev = "af88e700417c6449719fc77f6f3745f88e42d5da";
+      sha256 = "07wkbyzia7b7m99dd96km3qhdl8ndibjnsjix5skzqsvxjv24jib";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-cmdline/";
   };
@@ -1531,24 +1543,24 @@ final: prev:
 
   cmp-nvim-lua = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-lua";
-    version = "2023-01-05";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-nvim-lua";
-      rev = "f3491638d123cfd2c8048aefaf66d246ff250ca6";
-      sha256 = "0qydmgfgarf17hz10i6ffqvppmyrj3q1dm2awksk4l4y6z0cgg7w";
+      rev = "f12408bdb54c39c23e67cab726264c10db33ada8";
+      sha256 = "18qqcqjyxrmzvpj7m7wyjx1313h66vg8992n6y9lwawmb4mwxrg9";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-nvim-lua/";
   };
 
   cmp-nvim-tags = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-tags";
-    version = "2022-09-16";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "quangnguyen30192";
       repo = "cmp-nvim-tags";
-      rev = "de630ce773d249ab5739405a3428a5a29d7e0076";
-      sha256 = "0mxf3phyzkrakkzhirhr2f1jvigzz9gi7in5b31px3m9yxfhaymw";
+      rev = "28542c9adb9fed45a895b7091591f03c80e4c40a";
+      sha256 = "16fgf2s6r56byfr00ypwyg80pvpmv4n7dzdpysvjp6sf5v6q4d14";
     };
     meta.homepage = "https://github.com/quangnguyen30192/cmp-nvim-tags/";
   };
@@ -1651,12 +1663,12 @@ final: prev:
 
   cmp-tabnine = buildVimPluginFrom2Nix {
     pname = "cmp-tabnine";
-    version = "2023-03-21";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "cmp-tabnine";
-      rev = "4c8a0db92e75c848fb066edd280072389db80d24";
-      sha256 = "19ypgjd3hfiw3qvjzx543x9i3pk09qj0wr89w2rbngsj4sypfm4h";
+      rev = "380a11420752ac1c2d8fbb344454ff7f955b912c";
+      sha256 = "0dn7cm1zxincy2m83irlc979ci9wlgvic66j1mqps2a2g0aan1zj";
     };
     meta.homepage = "https://github.com/tzachar/cmp-tabnine/";
   };
@@ -1927,12 +1939,12 @@ final: prev:
 
   comment-nvim = buildVimPluginFrom2Nix {
     pname = "comment.nvim";
-    version = "2023-04-11";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "numtostr";
       repo = "comment.nvim";
-      rev = "ab62084fa992ed7ee3c19bbb5227ce2c4234612b";
-      sha256 = "02hsh3addjmdinhh3irh0hsbyqvl4mhkd5msa6c4ddaxf6zbwclq";
+      rev = "a89339ffbee677ab0521a483b6dac7e2e67c907e";
+      sha256 = "0q2882md4c42v255y7pfhqiv1vvi0h76wh4i8n2a00958vkmzg36";
     };
     meta.homepage = "https://github.com/numtostr/comment.nvim/";
   };
@@ -1999,12 +2011,12 @@ final: prev:
 
   compiler-explorer-nvim = buildVimPluginFrom2Nix {
     pname = "compiler-explorer.nvim";
-    version = "2023-03-31";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "krady21";
       repo = "compiler-explorer.nvim";
-      rev = "c086828f149728ccf934d966908674f26fb59339";
-      sha256 = "1s1dk9x4hmsg0p6l6r5ays8bqcg1rwn94873g72c0z9nf6f5yaab";
+      rev = "6708947a47479bc922847432f0909cbeb19ee557";
+      sha256 = "1ky0pqjkjhxxgllzk0rml9xnpjwv83rvsrz2f9vqjn7wn9k4rkpr";
     };
     meta.homepage = "https://github.com/krady21/compiler-explorer.nvim/";
   };
@@ -2131,12 +2143,12 @@ final: prev:
 
   copilot-lua = buildVimPluginFrom2Nix {
     pname = "copilot.lua";
-    version = "2023-04-11";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "zbirenbaum";
       repo = "copilot.lua";
-      rev = "a4a37dda9e48986e5d2a90d6a3cbc88fca241dbb";
-      sha256 = "1f5jzjih3bq7nlhvlrw8ndzvknmaaih4z10m0hzsjd4gdqnpvldn";
+      rev = "decc8d43bcd73a288fa689690c20faf0485da217";
+      sha256 = "18wsjan43mj8iwm2g5l3bkzcrwxcsinpwlwvbsylsfj5yxqjmvyy";
     };
     meta.homepage = "https://github.com/zbirenbaum/copilot.lua/";
   };
@@ -2155,24 +2167,24 @@ final: prev:
 
   coq-artifacts = buildVimPluginFrom2Nix {
     pname = "coq.artifacts";
-    version = "2023-04-09";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.artifacts";
-      rev = "be72c7ad5d8dfe942fd5aec89505805c2e474b93";
-      sha256 = "1q7hz1pj7rs1d2d53rk624qqmz0cglqxlh578b4ik9k87i0bfpzx";
+      rev = "551ee8e34fe4d24252ee0c20f51357b78a52d3c7";
+      sha256 = "13c8m6y9329k61flkam9vd85dwaw7641h1hlaa2d9jvq06f19fgi";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
   };
 
   coq-thirdparty = buildVimPluginFrom2Nix {
     pname = "coq.thirdparty";
-    version = "2023-04-09";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.thirdparty";
-      rev = "ee47eb595100b311ebd81d7285304d58bf28db29";
-      sha256 = "14i9mz2m4zq80ak2f9x71wc86r6kaf93kc7lc7jkhjllfpr537i8";
+      rev = "4ff6cd4ca34876e231743db480aef699a3ebea98";
+      sha256 = "0mqj667kq4hmicysvmj89w4s18kdsl82ah879njv4jvq7s205vgn";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
   };
@@ -2191,12 +2203,12 @@ final: prev:
 
   coq_nvim = buildVimPluginFrom2Nix {
     pname = "coq_nvim";
-    version = "2023-04-09";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "4c764a092b0a64ad45d69273fde35224cfb89861";
-      sha256 = "064qcl093hv2hpfkxh34a53v2ww5hmgvcwarvgn2zs7r0r9wrqyk";
+      rev = "d9eaa12329b4f48a5e6c29ed6a0b9217ebf67f23";
+      sha256 = "0xrj6qrw0vpiybnqjnhhg60gcihkzgxl80dgfijdx669ivvs72vh";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
@@ -2335,12 +2347,12 @@ final: prev:
 
   dashboard-nvim = buildVimPluginFrom2Nix {
     pname = "dashboard-nvim";
-    version = "2023-04-07";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "nvimdev";
       repo = "dashboard-nvim";
-      rev = "6f65affd9904ed96a7c7a3edc55486f7f517931d";
-      sha256 = "1jqxl2hsygmsq4bm3461qmancszh6ddr713g3zlzb1a17fyrivpk";
+      rev = "275e7c8579858c3ee06f32c16bdc687153ca7204";
+      sha256 = "1wsy39swlpw06lm8gq9vzgqd50dj4indr0b7k4h4d41ggfpn647d";
     };
     meta.homepage = "https://github.com/nvimdev/dashboard-nvim/";
   };
@@ -2721,12 +2733,12 @@ final: prev:
 
   diffview-nvim = buildVimPluginFrom2Nix {
     pname = "diffview.nvim";
-    version = "2023-04-06";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "sindrets";
       repo = "diffview.nvim";
-      rev = "6bebefbc4c90e6d2b8c65e65b055d284475d89f8";
-      sha256 = "0rpfy4cc6wb443y73gncb4l6iq82mka1gmblagknycrk64ycinaw";
+      rev = "f9ddbe798cb92854a383e2377482a49139a52c3d";
+      sha256 = "05a0a4521vba35aa9gy1j3r70y3pqy0rirq7cnzmla654n0d7ddl";
     };
     meta.homepage = "https://github.com/sindrets/diffview.nvim/";
   };
@@ -2769,24 +2781,24 @@ final: prev:
 
   dracula-nvim = buildVimPluginFrom2Nix {
     pname = "dracula.nvim";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "Mofiqul";
       repo = "dracula.nvim";
-      rev = "ce99c0b68edca27caa1701c0e79cf461b484d501";
-      sha256 = "00rnxjz7cvlcbs1zld04fxnk8y5vjvikcz078bs7ap3l4pg1zy5p";
+      rev = "26d04c8ced02f02207e7aec1d5730c3a9ebadeeb";
+      sha256 = "16z6rzay9sn011pl1ljjqs2f2k7igzzyqg9k6dyzzxjb3k1037rl";
     };
     meta.homepage = "https://github.com/Mofiqul/dracula.nvim/";
   };
 
   dressing-nvim = buildVimPluginFrom2Nix {
     pname = "dressing.nvim";
-    version = "2023-04-07";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "dressing.nvim";
-      rev = "91b9ba8a9474d2c4156dc2f3e858e07ae8faecf0";
-      sha256 = "09cwg5vfccacxqm5y6k28f3kvmx80mczd1c7j4srdi824mqj9ffa";
+      rev = "0e3e1eba147fee6e638ac1ac28f0495bcde17319";
+      sha256 = "0yndy9n5hl1vv53nflixrqng11mpf5qj7afk9x137bpi847b2x7h";
     };
     meta.homepage = "https://github.com/stevearc/dressing.nvim/";
   };
@@ -2805,12 +2817,12 @@ final: prev:
 
   edge = buildVimPluginFrom2Nix {
     pname = "edge";
-    version = "2023-04-11";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "cda4ae057cc6c0f6e15865772b64d2474f4dd5c2";
-      sha256 = "0skrfnq6ch41blb2v8pw7pi6mkjkv6kjgfi9nkx29zgfqs0lv12d";
+      rev = "35396c36580e329d5b3717b397431499a661e99b";
+      sha256 = "0ph229jg8bc1g7fln2bkbbjyic8kbc634znffwkvicjk7i81yi3z";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
@@ -2840,6 +2852,18 @@ final: prev:
     meta.homepage = "https://github.com/gpanders/editorconfig.nvim/";
   };
 
+  elixir-tools-nvim = buildVimPluginFrom2Nix {
+    pname = "elixir-tools.nvim";
+    version = "2023-04-21";
+    src = fetchFromGitHub {
+      owner = "elixir-tools";
+      repo = "elixir-tools.nvim";
+      rev = "a9bb505891b2d6eda659b33f69f5e65c9849785d";
+      sha256 = "0ks90kvssckqpd2aifp5bg6xlvb4jjiy6aq4xwjiriln3npgd477";
+    };
+    meta.homepage = "https://github.com/elixir-tools/elixir-tools.nvim/";
+  };
+
   elm-vim = buildVimPluginFrom2Nix {
     pname = "elm-vim";
     version = "2020-09-23";
@@ -2891,12 +2915,12 @@ final: prev:
 
   everforest = buildVimPluginFrom2Nix {
     pname = "everforest";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "everforest";
-      rev = "8ab6ce701e2d042eabded36f5d8cf7072b896b46";
-      sha256 = "0j6x3iiv9lkrm8prkax7pvk3kr71a7xwzfwcldl15y56jn01va57";
+      rev = "61693d7b90056b90e2f482d36301b485f6c815fa";
+      sha256 = "0s7m7gipc248dka7a6w6v5zsp8660isajnd844swkhsyfzby4010";
     };
     meta.homepage = "https://github.com/sainnhe/everforest/";
   };
@@ -3048,12 +3072,12 @@ final: prev:
 
   flatten-nvim = buildVimPluginFrom2Nix {
     pname = "flatten.nvim";
-    version = "2023-04-09";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "willothy";
       repo = "flatten.nvim";
-      rev = "3508beaa48d316937d8332d17f7ddc1b7d3f9a83";
-      sha256 = "1npwcscw01r109vlgkfk5wziwr31nscz3xv0k7gjhpb09chnrb43";
+      rev = "28db6048a509c9653cb4a4c734e03f412139aa11";
+      sha256 = "0fv7ysb6nl12hhbxr1sm8sjrknpfm6n9z8sr576vpq7cd3ldyzd1";
     };
     meta.homepage = "https://github.com/willothy/flatten.nvim/";
   };
@@ -3120,24 +3144,24 @@ final: prev:
 
   flutter-tools-nvim = buildVimPluginFrom2Nix {
     pname = "flutter-tools.nvim";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "flutter-tools.nvim";
-      rev = "b64892ec95b4454f1080b62fef170338f92fc414";
-      sha256 = "194dmji38vdkykmr8a2mn4zjzq6k9g8bn1mdsnblapcbwk02b0za";
+      rev = "bd82eed8ed710e538fb0752c4c8ec36089d5d239";
+      sha256 = "087am755knhk8jr5kq9cy4i5i0900kdjj844w347iiv55rsvw7d3";
     };
     meta.homepage = "https://github.com/akinsho/flutter-tools.nvim/";
   };
 
   formatter-nvim = buildVimPluginFrom2Nix {
     pname = "formatter.nvim";
-    version = "2023-04-10";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "mhartington";
       repo = "formatter.nvim";
-      rev = "b09b4573b0b6f4bc9e0ae599f7fab7dab34a6acf";
-      sha256 = "17igcjbj51568zz7lnhzfby9xx3i78yv6yw0gnpjng1w97i1n4j2";
+      rev = "9c44c9d80863aef1cef5b5c354c393ed5d74e634";
+      sha256 = "0a2850jvpwqs1irwkgjfgdd4d32g48zdgpsyay00v6kc48v372pj";
     };
     meta.homepage = "https://github.com/mhartington/formatter.nvim/";
   };
@@ -3156,12 +3180,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2023-03-26";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "8d91ba2dc2421a54981115f61b914974f938fa77";
-      sha256 = "0j45scar2frdk3a31lsc536z5vyzwanpg3nn89awp9idzhyviwys";
+      rev = "b1b78a6433268fc172adb5a843e165035e83861e";
+      sha256 = "09zj4m7j9dsmjvfqb2m7k7yv64r8w9z0f27rifdxywfangsa0zi0";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -3264,12 +3288,12 @@ final: prev:
 
   fzf-lua = buildVimPluginFrom2Nix {
     pname = "fzf-lua";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "ibhagwan";
       repo = "fzf-lua";
-      rev = "061a4df40f5238782fdd7b380fe55650fadd9384";
-      sha256 = "0p928iyia6bpzrc4g6926xxagvfw30830air5lfbw492vp4rh2j5";
+      rev = "8cee7f542885cb78abef4e2cb6515470aea78564";
+      sha256 = "18q477avcrgsmb6nndrbrx0aamjbpqp0ws17pa6fj8mgwg3mgg1w";
     };
     meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
   };
@@ -3324,12 +3348,12 @@ final: prev:
 
   ghcid = buildVimPluginFrom2Nix {
     pname = "ghcid";
-    version = "2022-12-12";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "ndmitchell";
       repo = "ghcid";
-      rev = "41dd2cfd805478c5601df229549029b20f930381";
-      sha256 = "1zwrh2wss3igx10bh85zh55hjahhn5nda2w8na8cz8qld0prpc3v";
+      rev = "e2852979aa644c8fed92d46ab529d2c6c1c62b59";
+      sha256 = "0bsjbb6n7ssg411k2xj4f881v392hvb7xln99bq1r3vkg14mqqsd";
     };
     meta.homepage = "https://github.com/ndmitchell/ghcid/";
   };
@@ -3420,12 +3444,12 @@ final: prev:
 
   gitsigns-nvim = buildNeovimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2023-04-04";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "372d5cb485f2062ac74abc5b33054abac21d8b58";
-      sha256 = "0wck04ja0i77g1acidfrb3b44zvd8yiywlqwa64ji0isxl85aicx";
+      rev = "7dfe4be94b4f84a9931098f0f0f618d055e50bd5";
+      sha256 = "1jpiiyv6b2dcswjjd1c8p7d65040ik0cx862kp8f7f21xz0salzb";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -3444,12 +3468,12 @@ final: prev:
 
   glance-nvim = buildVimPluginFrom2Nix {
     pname = "glance.nvim";
-    version = "2023-04-06";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "DNLHC";
       repo = "glance.nvim";
-      rev = "9bf10d6924e342cc7304f4c033f8a207a57b2648";
-      sha256 = "1ps47npdsx6zl5x4vkscgqw754144v5p048ljza1svkkpbyizqvv";
+      rev = "77ebd260c360ce11ddc6aa08efdcea993f40614a";
+      sha256 = "0gkpngmdd568j8bbajpcwb30hqba90d9583pg9farfyl8l3j5vqa";
     };
     meta.homepage = "https://github.com/DNLHC/glance.nvim/";
   };
@@ -3480,12 +3504,12 @@ final: prev:
 
   go-nvim = buildVimPluginFrom2Nix {
     pname = "go.nvim";
-    version = "2023-04-08";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "go.nvim";
-      rev = "8398343f2e161aec2d1a9324cd1c739eb379dd24";
-      sha256 = "07w7zwz87d3ngz34cnp5g6pxg16n7ixaci32gxfvyixlpng43wcb";
+      rev = "e7e914cdc3538a9f4e8843d63310b95641245984";
+      sha256 = "03rkv3kcnll5bx3an20x4sjb7y9bffk602790yv2b6ysgn5a623d";
     };
     meta.homepage = "https://github.com/ray-x/go.nvim/";
   };
@@ -3600,24 +3624,24 @@ final: prev:
 
   gruvbox-material = buildVimPluginFrom2Nix {
     pname = "gruvbox-material";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "gruvbox-material";
-      rev = "b12f46903867939b963c8c20abb27dd507d77054";
-      sha256 = "08plsqi71ijp746ni941l2w18n1r3bqiwyziffyfh7nrjwhk21w8";
+      rev = "9956b910882009e6a70feb66229ae47a8c592d80";
+      sha256 = "1999liw5dr6wcsay31q2hcxn2fjkgcpy5m494glmsc64dia3rdv0";
     };
     meta.homepage = "https://github.com/sainnhe/gruvbox-material/";
   };
 
   gruvbox-nvim = buildVimPluginFrom2Nix {
     pname = "gruvbox.nvim";
-    version = "2023-04-10";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "gruvbox.nvim";
-      rev = "de4e3380575acc1bc9a349d32f028301dea54dcd";
-      sha256 = "10r0vvici824894aj51979vyszwdzw2g2dyfzfr5d57365sc8bgb";
+      rev = "487598d979868224aff92cf8818195c1a60e5dfe";
+      sha256 = "11imfkvxk84r63h7rp5w71131anr83difwab3y5jrv9cprijl20j";
     };
     meta.homepage = "https://github.com/ellisonleao/gruvbox.nvim/";
   };
@@ -3683,12 +3707,12 @@ final: prev:
 
   haskell-tools-nvim = buildNeovimPluginFrom2Nix {
     pname = "haskell-tools.nvim";
-    version = "2023-04-09";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "haskell-tools.nvim";
-      rev = "bf43d7ba6f27be7dcbdb8df8d79de07e3112a244";
-      sha256 = "0gnzsbbj16p7ckbc19wvdllx4z0bnqw6wlgkyk3wgxg2g1gn389n";
+      rev = "53c5a037db61288a760a058f34c41c00849c754f";
+      sha256 = "1xy8sj5wykc1n30jxk789rymkrk4gqyhvwfgwaccq6kc07jqazkp";
     };
     meta.homepage = "https://github.com/MrcJkb/haskell-tools.nvim/";
   };
@@ -3731,12 +3755,12 @@ final: prev:
 
   heirline-nvim = buildVimPluginFrom2Nix {
     pname = "heirline.nvim";
-    version = "2023-04-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "heirline.nvim";
-      rev = "d860874eef6088109b5cb102871d76307280f052";
-      sha256 = "0gh4jc45zvgmgx3bg4iyqa4smjl2bqalkwylpq74izzn4bxjd4yz";
+      rev = "2aed06a3a04c877dc64834e9b9dabf6ad3491bc8";
+      sha256 = "1sqhnhc749hm1bpy6s49w8jb3zpzj2azpj2hszn13ml1g1ps5iv7";
     };
     meta.homepage = "https://github.com/rebelot/heirline.nvim/";
   };
@@ -4175,12 +4199,12 @@ final: prev:
 
   kanagawa-nvim = buildVimPluginFrom2Nix {
     pname = "kanagawa.nvim";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "kanagawa.nvim";
-      rev = "22adef57f08a3cd07978b65966ce68da42501f68";
-      sha256 = "15v5p1kj97nhnibnki03a1y0lm2v6k5r2s0fwxz6ynij4sz6bshn";
+      rev = "963824e979f33bf2b39838d9ea7a59467d34ec9b";
+      sha256 = "1mkm7klmn5qsj3mznhvndvsv03vy8fbzfd3bf27xmi7hk5z8ibmn";
     };
     meta.homepage = "https://github.com/rebelot/kanagawa.nvim/";
   };
@@ -4271,12 +4295,12 @@ final: prev:
 
   lazy-nvim = buildVimPluginFrom2Nix {
     pname = "lazy.nvim";
-    version = "2023-03-25";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "lazy.nvim";
-      rev = "57cce98dfdb2f2dd05a0567d89811e6d0505e13b";
-      sha256 = "10ayiikd4sxm61rm2689cgbk2byh48si9h5pz5dbz2rwm40k5kig";
+      rev = "5c89dc52f42e5058a46b0912d7d9042f564e44e0";
+      sha256 = "1wn2r05rxxsi64ssnaryby7v293maf5k986bkngaki45lag3ghp8";
     };
     meta.homepage = "https://github.com/folke/lazy.nvim/";
   };
@@ -4331,24 +4355,24 @@ final: prev:
 
   leap-nvim = buildVimPluginFrom2Nix {
     pname = "leap.nvim";
-    version = "2023-04-09";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "ggandor";
       repo = "leap.nvim";
-      rev = "98a72ad93c629c49bd7127d342960cc1b159b620";
-      sha256 = "1zb0k6d57z8pp4nzmqvk041gqhpsswxz642jj8398hf44r05lcq8";
+      rev = "0eb3611593e135150e2f7880ec67568ccb51c17a";
+      sha256 = "1kz843qj8d766x43ys3q9bi6ahjcyw1c063x1kj6dhv3c85l911q";
     };
     meta.homepage = "https://github.com/ggandor/leap.nvim/";
   };
 
   legendary-nvim = buildVimPluginFrom2Nix {
     pname = "legendary.nvim";
-    version = "2023-04-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "legendary.nvim";
-      rev = "69e7b9b56e6507760049c78a15116e1c0540423c";
-      sha256 = "0m5ngwaz9hw79gwv7mpbc3i63m3i18sykvmm67gr9182k505xqpc";
+      rev = "4fc7d11d03df874ecd7a8cfa6055d7a4ce2cff87";
+      sha256 = "0y4wgla8w2b8yc7bynchaiq1vcv9i9yvvzgia1zdfky7ph47r1jk";
     };
     meta.homepage = "https://github.com/mrjones2014/legendary.nvim/";
   };
@@ -4643,12 +4667,12 @@ final: prev:
 
   lsp-overloads-nvim = buildVimPluginFrom2Nix {
     pname = "lsp-overloads.nvim";
-    version = "2023-04-10";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "Issafalcon";
       repo = "lsp-overloads.nvim";
-      rev = "c63692f0b31ca0114bf2573d8d99fed5fd47dad9";
-      sha256 = "1yh1k1px4lxfqcdirpdwammc9rjf8bpk2qs6vvkiixx2wkh4xsdf";
+      rev = "939bf42421a31dfe021a47720763602d54e1b165";
+      sha256 = "1gs96pc2hyvrnzax0lisi1n05ws3vf13fjr6lm1jz76s0gawqx1z";
     };
     meta.homepage = "https://github.com/Issafalcon/lsp-overloads.nvim/";
   };
@@ -4679,12 +4703,12 @@ final: prev:
 
   lsp-zero-nvim = buildVimPluginFrom2Nix {
     pname = "lsp-zero.nvim";
-    version = "2023-04-10";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "VonHeikemen";
       repo = "lsp-zero.nvim";
-      rev = "48d5f891b57291550a7e32792abae4d0774942e3";
-      sha256 = "16lw176flzpgdm209q5gxaqdhk4jqyk2jbkqk22s6y29g2lzv16w";
+      rev = "8f7436b5df998515d9e15073b16f1bd142c406f9";
+      sha256 = "06jdi7qg9nhqjb2isldndjkbn4z3jminhn7rp036bc2rp3r6l3iw";
     };
     meta.homepage = "https://github.com/VonHeikemen/lsp-zero.nvim/";
   };
@@ -4714,12 +4738,12 @@ final: prev:
 
   lsp_signature-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_signature.nvim";
-    version = "2023-04-08";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "lsp_signature.nvim";
-      rev = "775c0cdf5be5adcc08f27c9058edb00b5b517520";
-      sha256 = "1b3pq2l2qilqvkvd051wv32myjp200wqcns00qgdx10frracvlvr";
+      rev = "72b0d4ece23338fe2d03fc7b6fd8c8bace6bb441";
+      sha256 = "0ids2xfw7c3i4kjxz2bjbh03zsbp4h3576sxlwfnyc9jdfrwdy6g";
     };
     meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/";
   };
@@ -4762,12 +4786,12 @@ final: prev:
 
   ltex_extra-nvim = buildVimPluginFrom2Nix {
     pname = "ltex_extra.nvim";
-    version = "2023-01-29";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "barreiroleo";
       repo = "ltex_extra.nvim";
-      rev = "1d2f288ceedc70d5a9c00f55c0d0cc788b5164f2";
-      sha256 = "1vknp3y3s1pavk9f4n4kb6nnymvcs7pbrnb8ckw18jyk02mfnjfs";
+      rev = "918915211dbdbdae29a16e0b85d415e10e732af3";
+      sha256 = "0730sq9g3jq56a19d6dbzzx7xyb5sp6ys156gxdk39z0xghkzpq4";
     };
     meta.homepage = "https://github.com/barreiroleo/ltex_extra.nvim/";
   };
@@ -4798,12 +4822,12 @@ final: prev:
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2023-04-11";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "dc2e307287e9a9eabc18f0e3984c7e8cb164bb38";
-      sha256 = "10gyij1glisb1zqqdrb2wy772kz3nwf0mjn9npzzfcyrpvvwfra4";
+      rev = "8d6c0a93dec34900577ba725e91c44b8d3ca1f45";
+      sha256 = "1lrfmzhmxizjk265bk991apfxc74wlaxqwizrg63clbks5nx6av5";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
@@ -4895,12 +4919,12 @@ final: prev:
 
   mason-lspconfig-nvim = buildVimPluginFrom2Nix {
     pname = "mason-lspconfig.nvim";
-    version = "2023-04-08";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "williamboman";
       repo = "mason-lspconfig.nvim";
-      rev = "a8d5db8f227b9b236d1c54a9c6234bc033825ce7";
-      sha256 = "1c8w86yxmyay2b3c7ifl4qxcibgi27sf6pmx5b43j21ixjv5455n";
+      rev = "7034065099c1665143091c7282b3b1b8f0b23783";
+      sha256 = "1ahw156adi9frh3isad37r48zwy8j7llhyq307c3kxnh3r98iiaa";
     };
     meta.homepage = "https://github.com/williamboman/mason-lspconfig.nvim/";
   };
@@ -4919,12 +4943,12 @@ final: prev:
 
   mason-nvim = buildVimPluginFrom2Nix {
     pname = "mason.nvim";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "williamboman";
       repo = "mason.nvim";
-      rev = "3fb2be48864b7850a26c54c04cedb54e95dcdf3f";
-      sha256 = "11i931xsxbsw7arbglv8k4gl53klw2jv0r69a00m0fddyiz4avq8";
+      rev = "7f364a3c9b3f77ead3dc5316cf6918d944fc3621";
+      sha256 = "18a8bljq3yqgdvgmdrqbiw8rmgrlx4wn9rzv69hwap4i2rf8lw97";
     };
     meta.homepage = "https://github.com/williamboman/mason.nvim/";
   };
@@ -4991,24 +5015,24 @@ final: prev:
 
   mini-nvim = buildVimPluginFrom2Nix {
     pname = "mini.nvim";
-    version = "2023-04-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "d42d1e5b5394f1a34763dc630f70dffe2470ef84";
-      sha256 = "01hp2aqz0fj84s0b9kysy22mx8ms9v4pwng9b4xi5skbdli2vcsb";
+      rev = "590ac69a6c249ee94c390ab4b46147480409b646";
+      sha256 = "1vkjh7jzj8c4pfwwi3qbkpwc1mssiqgyvbral489ls94j9fncad4";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
 
   minimap-vim = buildVimPluginFrom2Nix {
     pname = "minimap.vim";
-    version = "2023-04-11";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "wfxr";
       repo = "minimap.vim";
-      rev = "868a809302f9f5d4c408ef8aef7eb9bd5893f801";
-      sha256 = "1j7p33did6c0xnxq96541fw07fq25ss9784sf33ak6by8xhmpqdw";
+      rev = "726746ed02eab2eef137a7ecceda7214fbeeec41";
+      sha256 = "1p8bpa7g349zhx7z78gyxrhfrhibihd9v7p4224qzddk0pd4ibkz";
     };
     meta.homepage = "https://github.com/wfxr/minimap.vim/";
   };
@@ -5039,12 +5063,12 @@ final: prev:
 
   mkdx = buildVimPluginFrom2Nix {
     pname = "mkdx";
-    version = "2023-04-04";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "SidOfc";
       repo = "mkdx";
-      rev = "1ddfff8118b6c3eb000dfc7c3c6eea5a314344b8";
-      sha256 = "0jjrn0br2sl7flr0bjx367j8f94m7cyqsmaaq3ind9i42vjfahkv";
+      rev = "2881f23d06da8544ecfcb75cd3b6c061d7392414";
+      sha256 = "06d08mbzc3ri9x8ar9a5f05b7g9vz76cbygna8hqkpmzhq1rq817";
     };
     meta.homepage = "https://github.com/SidOfc/mkdx/";
   };
@@ -5327,12 +5351,12 @@ final: prev:
 
   neo-tree-nvim = buildVimPluginFrom2Nix {
     pname = "neo-tree.nvim";
-    version = "2023-03-31";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "nvim-neo-tree";
       repo = "neo-tree.nvim";
-      rev = "2b2f74828eeb02cf29d6b21aa32eedadadc94ca7";
-      sha256 = "03c6glvdf7vdws7vvm8y3xh6443bjyk75vq505dmnadgkcwn28ga";
+      rev = "7a6b0d43d70636edfec183fb49c02f725765da73";
+      sha256 = "0icsairxll0anffwh1q39p9mlwwvbf5krp7v7388kilsd57lhjdi";
     };
     meta.homepage = "https://github.com/nvim-neo-tree/neo-tree.nvim/";
   };
@@ -5351,12 +5375,12 @@ final: prev:
 
   neoconf-nvim = buildVimPluginFrom2Nix {
     pname = "neoconf.nvim";
-    version = "2023-04-03";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "neoconf.nvim";
-      rev = "6aaeb48336b369d7ed8ef243bfd0d76ec79362cd";
-      sha256 = "1jw6wlkvs4agqx0mf95m6ddzvy93v76fgm7ipc05p2hw4qlplpjq";
+      rev = "62c8d706fafed90c95aa6b5846f296d3b28db75a";
+      sha256 = "1i5r1j3sbqmijvhla1mldrmpki5ymvi1h2qcs63gypmxj4xpy6hz";
     };
     meta.homepage = "https://github.com/folke/neoconf.nvim/";
   };
@@ -5375,24 +5399,24 @@ final: prev:
 
   neodev-nvim = buildVimPluginFrom2Nix {
     pname = "neodev.nvim";
-    version = "2023-04-05";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "neodev.nvim";
-      rev = "864b35006d3de24c60e44b566de8018f919b13e6";
-      sha256 = "01xsqdbpwy9mj9rixadmlgbnb2nr2ssjgqhb2qsrxfxc2mk3dcvp";
+      rev = "e812f3d0e62e21a164b70f90f642cf30129503e4";
+      sha256 = "17w17gpk85w8zkqpkvrr2kg90p39wz2l57czphc52ybzirkpij30";
     };
     meta.homepage = "https://github.com/folke/neodev.nvim/";
   };
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2023-03-31";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "e18e0cc2641dd78f0cdb0ddd575843045d672dde";
-      sha256 = "0vprb47wcpwnsij6iyxzirfkcbzr4jaj2cc8flb41d42lsjr0mnj";
+      rev = "aca320ad601338c93eca50ab4c86fca964a18d96";
+      sha256 = "17wcvqwddw4nlcpfvlaxxkcyl93axb1hqdcn73xb4c1yr8fdwaxi";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
@@ -5411,12 +5435,12 @@ final: prev:
 
   neogit = buildVimPluginFrom2Nix {
     pname = "neogit";
-    version = "2023-03-20";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "TimUntersberger";
       repo = "neogit";
-      rev = "039ff3212ec43cc4d3332956dfb54e263c8d5033";
-      sha256 = "17a6lpqv99b89g7kakbzw97hpkqmw729if4j8gq8svza3fjcq2pg";
+      rev = "69a6ca7c41b023ebf9cad70778e227b3209b40c4";
+      sha256 = "1r5dii9510hb4qd63g32hrrrn8m3dmhwlp8l2ilig2vzcpics6mq";
     };
     meta.homepage = "https://github.com/TimUntersberger/neogit/";
   };
@@ -5471,12 +5495,12 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2023-04-11";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "32c03d5a320235469050757ec890d8eb11c3135c";
-      sha256 = "0fk3b6kpbjd59v3smbvmfn1lcx3aac30v25mc5ni4sq3328cwlvq";
+      rev = "f742e90d6d8ec831f0bce939c37a3c04407c0e9f";
+      sha256 = "11nc74vpx7ws733x5ksymd6jdry3vj04jx08wi6gdwsikhvz8jhq";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
@@ -5531,12 +5555,12 @@ final: prev:
 
   neotest = buildVimPluginFrom2Nix {
     pname = "neotest";
-    version = "2023-04-10";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "neotest";
-      rev = "28724010861dbf294f09b9ee1948d2da2823604b";
-      sha256 = "0n4g735i9kndnv5790bkggsl3dm0jckwxa0n83j4mikrrfg0zi66";
+      rev = "8d279ac31542553461f5377db1596ae52e042d00";
+      sha256 = "0mfh332nh1c5g0abywcjng23wz4z1571dgxyc4f6nlvyikziaghc";
     };
     meta.homepage = "https://github.com/nvim-neotest/neotest/";
   };
@@ -5567,12 +5591,12 @@ final: prev:
 
   neotest-dotnet = buildVimPluginFrom2Nix {
     pname = "neotest-dotnet";
-    version = "2023-04-10";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "Issafalcon";
       repo = "neotest-dotnet";
-      rev = "cb0e6f580e4877034a76a02c3e8aed75dcbc8c48";
-      sha256 = "0x0msjris2mpfgadkrgk1gqb00cck26lqlazjqqdf1516lvyvlm2";
+      rev = "85ffa30ec8a1feb1126f3057361850edf7d94e3f";
+      sha256 = "0f31rwn93qkigx47444lmkp9fmappzbm62rgnxjwjz3gkipm0vca";
     };
     meta.homepage = "https://github.com/Issafalcon/neotest-dotnet/";
   };
@@ -5591,38 +5615,38 @@ final: prev:
 
   neotest-go = buildVimPluginFrom2Nix {
     pname = "neotest-go";
-    version = "2023-03-28";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "neotest-go";
-      rev = "756edf3dddcb3b430110f9582e10b7e730428341";
-      sha256 = "03ldff1cf1j4skj2swhqphna08xkpm33xzmlm87ln5jg7h5izjii";
+      rev = "2148ad794e7a5c30c7385a3281f4be91e6b113c4";
+      sha256 = "0z9yam6v82a6aymsmrr5rly20gq6pv90lwjgwwnz3r88nhyq11v6";
     };
     meta.homepage = "https://github.com/nvim-neotest/neotest-go/";
   };
 
   neotest-haskell = buildVimPluginFrom2Nix {
     pname = "neotest-haskell";
-    version = "2023-03-31";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "neotest-haskell";
-      rev = "0bd879195b08ee6ca9fdff6b4782f73546c28743";
-      sha256 = "1x9fd36zfw6q5sasrh93xr1nr4rn5v7va7czpij0kb9ri7s2by6c";
+      rev = "ea123371271cabcfae8de34095956c75f7e705b6";
+      sha256 = "13yskn5dja2lbx20351ajgfqxz8lnnzg3pplcfgrnhfd6xbmxqdy";
     };
     meta.homepage = "https://github.com/MrcJkb/neotest-haskell/";
   };
 
   neotest-jest = buildVimPluginFrom2Nix {
     pname = "neotest-jest";
-    version = "2023-01-26";
+    version = "2023-04-16";
     src = fetchFromGitHub {
-      owner = "haydenmeade";
+      owner = "nvim-neotest";
       repo = "neotest-jest";
-      rev = "821bb227e31259307db30c88671a1c3724f78637";
-      sha256 = "0zhia9flpzac17rc9l1ybv1x7zfvhmws65i8sq53dp1mlfvimzkp";
+      rev = "22b1050dda3ebd401780ec4b8e193cf52523a4da";
+      sha256 = "0vg433x68c9h0nzws6lwb4xcgqzm8ss5dkmi8df4fa55m2ll8iaw";
     };
-    meta.homepage = "https://github.com/haydenmeade/neotest-jest/";
+    meta.homepage = "https://github.com/nvim-neotest/neotest-jest/";
   };
 
   neotest-pest = buildVimPluginFrom2Nix {
@@ -5639,24 +5663,24 @@ final: prev:
 
   neotest-phpunit = buildVimPluginFrom2Nix {
     pname = "neotest-phpunit";
-    version = "2023-04-10";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "neotest-phpunit";
-      rev = "bf414a6dd2ddbe69f6c7b96e345cfe28afd577db";
-      sha256 = "0ss6qlh6cs1bidn7j2m7565pnx2sfclqik1x123dw6ibmasc9zrb";
+      rev = "6c4f1def7d4d0ff5d410022b71078468ab96273b";
+      sha256 = "1hx5c99b57s1z9hf1f45l4fgvvc5ndh300s347xpi9zbw19ym8fl";
     };
     meta.homepage = "https://github.com/olimorris/neotest-phpunit/";
   };
 
   neotest-plenary = buildVimPluginFrom2Nix {
     pname = "neotest-plenary";
-    version = "2022-12-30";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "neotest-plenary";
-      rev = "d49bfd9470f791e7c29149e75d56b6f925bb391b";
-      sha256 = "055k0q1zgi42hf8lcgi2fmfbs3yc4fhbfjy34p3p2k90i1izxy5q";
+      rev = "65f57c41ffb7bf1c34938b61683fe833ad3be8fb";
+      sha256 = "0m4hhl4rcbkvpfs9azaarya9zyfbcxhrsc2ij797myfggiz5s28v";
     };
     meta.homepage = "https://github.com/nvim-neotest/neotest-plenary/";
   };
@@ -5675,24 +5699,24 @@ final: prev:
 
   neotest-rspec = buildVimPluginFrom2Nix {
     pname = "neotest-rspec";
-    version = "2023-04-10";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "neotest-rspec";
-      rev = "0843dbd82f953c2d7a4a50160c07c3cb6600879c";
-      sha256 = "1aky5dhhflilvsazzh6ix75fl3618zyss1dyy3dpws3mk16fn5cf";
+      rev = "68b4b195603e89b69dcbe587116eee7e78d186ce";
+      sha256 = "0h3qiyd91hrg481fdplyac17yaplmgn41jlhsqnbi18274c1ipjk";
     };
     meta.homepage = "https://github.com/olimorris/neotest-rspec/";
   };
 
   neotest-rust = buildVimPluginFrom2Nix {
     pname = "neotest-rust";
-    version = "2023-04-03";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "rouge8";
       repo = "neotest-rust";
-      rev = "5bb78ad3c1c11a28a2c48af59056455841e6546f";
-      sha256 = "0wrb7nqqr9glsycqrfak6xi2l5pvb0ax48vr1jlcpg83ya2ljj3g";
+      rev = "e375bdb26d2ce1c099d17c8adc4d18768d501ff7";
+      sha256 = "0zfxr2261ls0k754f4qcd012fl4jhqywpjmr6cc1q5m6bx74p2ms";
     };
     meta.homepage = "https://github.com/rouge8/neotest-rust/";
   };
@@ -5723,24 +5747,24 @@ final: prev:
 
   neotest-vitest = buildVimPluginFrom2Nix {
     pname = "neotest-vitest";
-    version = "2023-02-27";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "marilari88";
       repo = "neotest-vitest";
-      rev = "643d1fb7a3e874b82f51693bf6d37c427ab54c75";
-      sha256 = "0lshr7w1j2rnaw74kvm72pz9fi6xx2s88s3by56wg82n8hzlnb7h";
+      rev = "f9efe9524ccba1284d5f4e41d0dc6ff91951cfcc";
+      sha256 = "09bhg1g2r4nc0jr41v5j07wgfcqgfnjw4nbmhz8pizshiyqq0rah";
     };
     meta.homepage = "https://github.com/marilari88/neotest-vitest/";
   };
 
   neovim-ayu = buildVimPluginFrom2Nix {
     pname = "neovim-ayu";
-    version = "2023-04-11";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "Shatur";
       repo = "neovim-ayu";
-      rev = "7ee99986e4a478ce0fa78c35e4afddd00476e551";
-      sha256 = "05mfrlj8cw32z0xnp3mhqz3li30rfg2zv2b1lp0akkl1csgbivf8";
+      rev = "762ff24bd429fbb1c1e20b13043b4c8f0266bcf1";
+      sha256 = "0qwaxnk2ywdfi04c0dgx438w765vq9df7g4dicb73626jfdvy141";
     };
     meta.homepage = "https://github.com/Shatur/neovim-ayu/";
   };
@@ -5783,12 +5807,12 @@ final: prev:
 
   nerdcommenter = buildVimPluginFrom2Nix {
     pname = "nerdcommenter";
-    version = "2023-02-05";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdcommenter";
-      rev = "d069f7fb562fb9eb6911fe23cda7aca2a387043e";
-      sha256 = "0ir2cghjcz3wr1sp1fzvdjnwqrjy82n3zlhrcz7cs41n8f2wich7";
+      rev = "91499c76a7358b10945c50173fa8c64dc3c909c8";
+      sha256 = "1xv2nb0jpxmmgchjh2j7dpam0xzrslc4qfbv02fdhmj1f7ybf018";
     };
     meta.homepage = "https://github.com/preservim/nerdcommenter/";
   };
@@ -5819,12 +5843,12 @@ final: prev:
 
   netman-nvim = buildVimPluginFrom2Nix {
     pname = "netman.nvim";
-    version = "2023-03-23";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "miversen33";
       repo = "netman.nvim";
-      rev = "0992ecede84db9591c59ee2131f39443f4a44f3c";
-      sha256 = "0nmm6yp1q99f7c26h0ymwd237vv7b9652ffaffbm2ym4ahcmg8xr";
+      rev = "cd5b2c4802d2014df1bc1d07c37aa2271e6ba725";
+      sha256 = "1kwxy0ccwjji4gc76n0lv7zd4maldxddhrahmfwxana1aqwyc8sc";
     };
     meta.homepage = "https://github.com/miversen33/netman.nvim/";
   };
@@ -5867,12 +5891,12 @@ final: prev:
 
   nightfox-nvim = buildVimPluginFrom2Nix {
     pname = "nightfox.nvim";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "fbc610f3d3771e330b0dbefc8aab3112679554a6";
-      sha256 = "1a5mmjhiq3dpbillrmyh0f2j4p2cki6707j0qdbak1swrk30hwqp";
+      rev = "e54427a1bfea55c9ab0c21ac7e9d07b22156d0f0";
+      sha256 = "0fwn5hhw9fy9g0h62zqlx5iiar77m5ryd8mvahybhdjk8ygjkmg4";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -5903,12 +5927,12 @@ final: prev:
 
   nlsp-settings-nvim = buildVimPluginFrom2Nix {
     pname = "nlsp-settings.nvim";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "tamago324";
       repo = "nlsp-settings.nvim";
-      rev = "fd5ca6e4c2b01f97309e6b515b9957e7454587e1";
-      sha256 = "047911rgg1a9vrg1f6yaifsc54wgg6xjpgv198iaz80dhn5mr913";
+      rev = "32f39128c96baf5482c6a775f437be116d0adf4f";
+      sha256 = "00l8akyihpimvkxy8yxdvwc3iafjkyyx66scfqj9drm4flsbbqc8";
     };
     meta.homepage = "https://github.com/tamago324/nlsp-settings.nvim/";
   };
@@ -5951,12 +5975,12 @@ final: prev:
 
   noice-nvim = buildVimPluginFrom2Nix {
     pname = "noice.nvim";
-    version = "2023-03-26";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "noice.nvim";
-      rev = "1da4edfba3e9278e98fc9723d7235d9ab3889744";
-      sha256 = "18y314k7da239w05rkxz6nqjljjx24mx9kx5020bkkx80q1z57yk";
+      rev = "7bd435a48a2d2b3f028c633126e3f669ae6b902f";
+      sha256 = "003pbngbf7wvac91lpy717sp3blkxv869f17brshwhciq2zzfxjm";
     };
     meta.homepage = "https://github.com/folke/noice.nvim/";
   };
@@ -5999,12 +6023,12 @@ final: prev:
 
   nui-nvim = buildVimPluginFrom2Nix {
     pname = "nui.nvim";
-    version = "2023-04-10";
+    version = "2023-04-11";
     src = fetchFromGitHub {
       owner = "MunifTanjim";
       repo = "nui.nvim";
-      rev = "bf5900f1b60bf6499755ac92315181a24a87a577";
-      sha256 = "0rs8i095ppkllvk6hacgvwsbmmiwaj2m57xwg5jd7mxyvy40zr4j";
+      rev = "ecd9def93891b9260b15b5fcef542eaabf4145c9";
+      sha256 = "133qxi97km61kg0y465jbwwzrby1v5h663igvrqlj1n2syvwwmi2";
     };
     meta.homepage = "https://github.com/MunifTanjim/nui.nvim/";
   };
@@ -6047,12 +6071,12 @@ final: prev:
 
   nvim-FeMaco-lua = buildVimPluginFrom2Nix {
     pname = "nvim-FeMaco.lua";
-    version = "2022-10-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "AckslD";
       repo = "nvim-FeMaco.lua";
-      rev = "469465fc1adf8bddc2c9bbe549d38304de95e9f7";
-      sha256 = "1rv3ppjfndi27dbg7dsapxacbal1mj2a9dx2vq0yvi2v1gb97b3x";
+      rev = "7f18adaa2e62dcfdce3cce9677eeb9371e584f85";
+      sha256 = "0ramhcrn1crbsj29c9dx0fx2kp97wzvp1i0h8shjzzsa9pyqd8h4";
     };
     meta.homepage = "https://github.com/AckslD/nvim-FeMaco.lua/";
   };
@@ -6071,12 +6095,12 @@ final: prev:
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2023-04-09";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "7470af886ffb3df32800e5ef9c072a6cd825770d";
-      sha256 = "10mpzlikr2yx7ky25001jjcdcy0rprm6n81lwxg46xbim3mbxnb7";
+      rev = "7566a86f44bb72ba2b1a609f528a27d93241502d";
+      sha256 = "0hxaqhvqd4446zvwbfs2l6akqbki2sag2vlxqfxbn1a9pdin1329";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
@@ -6119,12 +6143,12 @@ final: prev:
 
   nvim-bufdel = buildVimPluginFrom2Nix {
     pname = "nvim-bufdel";
-    version = "2023-02-27";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "ojroques";
       repo = "nvim-bufdel";
-      rev = "9f1ed6ef6594df9a74762a86f469d12036584976";
-      sha256 = "0fcvhxsr6nfi1sg5cy46dyy20rzc7g25y7ha0bhl2cprvz3frph1";
+      rev = "96c4f7ab053ddab0025bebe5f7c71e4795430e47";
+      sha256 = "01m8pgwsfplmknwf0a0ynwn7nflhsxfz1vmx4h3y92p0gs5shwwy";
     };
     meta.homepage = "https://github.com/ojroques/nvim-bufdel/";
   };
@@ -6251,12 +6275,12 @@ final: prev:
 
   nvim-dap = buildVimPluginFrom2Nix {
     pname = "nvim-dap";
-    version = "2023-04-07";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "debd7c2f80eaf20c5f5df25db8d8c1b9b18f4421";
-      sha256 = "0h4vcdy7zrbrx29r2bw5nk01q1y983ffh59sl35rq5aa9xdwr4zf";
+      rev = "6cedcb527e264c8f25e86afa8dae74c6692dee51";
+      sha256 = "1vapds2p17k3h4llh0p6mxk4qrdik8sjp09l7fnl1mwnybl0k6wp";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
@@ -6371,12 +6395,12 @@ final: prev:
 
   nvim-highlight-colors = buildVimPluginFrom2Nix {
     pname = "nvim-highlight-colors";
-    version = "2023-03-26";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "brenoprata10";
       repo = "nvim-highlight-colors";
-      rev = "14670d94c7813bfe929ed2ca2d3875f4f468173e";
-      sha256 = "0igiam19m1kw9ir41zkpfq78n67yypwvmmw2j3p04qnbwj0x3nxb";
+      rev = "8d7e7fe540b404ec06a248d6e5797eaf3362420c";
+      sha256 = "1saabc855b0pqhfvhph9lgir090126f1nh4hpv57d44fn8n0cwgh";
     };
     meta.homepage = "https://github.com/brenoprata10/nvim-highlight-colors/";
   };
@@ -6419,12 +6443,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2023-04-03";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "ffb8f63689197b845c2388f0df5f0d1bd21c968f";
-      sha256 = "0pxz9050522vlglvwm67s43dniwxygynvi0f8qdd8dhb5zm9x65q";
+      rev = "aa04fc0e4d8acbfa43efc6a6f7162b01987257a1";
+      sha256 = "1jng1y8rwc90k3060rivbipd99d0q2s16dlwm2hgpy8yk3q6ngmk";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -6455,12 +6479,12 @@ final: prev:
 
   nvim-lightbulb = buildVimPluginFrom2Nix {
     pname = "nvim-lightbulb";
-    version = "2022-08-26";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "kosayoda";
       repo = "nvim-lightbulb";
-      rev = "56b9ce31ec9d09d560fe8787c0920f76bc208297";
-      sha256 = "0xi9bgfcn2dlwp06lkfvr6nddspjbaaprsxrl5mpfx5qskyqf3lz";
+      rev = "ca5b44a8efffb5fec1963ccd21f25ec04cc778b7";
+      sha256 = "0885z0fv3q77jbn9zfzfng2s9l8k4x8y8l49dd9rrlfwvkl6bhdw";
     };
     meta.homepage = "https://github.com/kosayoda/nvim-lightbulb/";
   };
@@ -6479,12 +6503,12 @@ final: prev:
 
   nvim-lint = buildVimPluginFrom2Nix {
     pname = "nvim-lint";
-    version = "2023-04-05";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "2a9969a09d8456104d7954b67ee6667d6645c71a";
-      sha256 = "0yy9kwl2xkg38xl7rsjz9yz3w99md2ywj2w3whlv7hwk0w0pirb4";
+      rev = "f27ba536d9363d216dcf1996f42d55756e977522";
+      sha256 = "1km9ch467q613pf50xa1bhrp9zd47c21g990aqczw4s6787fk2fb";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
@@ -6503,12 +6527,12 @@ final: prev:
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2023-04-10";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "10fa01d553ce10646350461ac5ddc71f189e9d1a";
-      sha256 = "1v5zqf5z9fl23f62cgchsyhg54wpw364k6bpn9gi6py5mfpig49c";
+      rev = "eddaef928c1e1dd79a96f5db45f2fd7f2efe7ea0";
+      sha256 = "1gpkmywjlyyx8zmvyxqsrrfyrxsvs42gd442k05nhfv75z077dcf";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -6575,12 +6599,12 @@ final: prev:
 
   nvim-navic = buildVimPluginFrom2Nix {
     pname = "nvim-navic";
-    version = "2023-04-02";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "smiteshp";
       repo = "nvim-navic";
-      rev = "27124a773d362628b114cd12016e743dab4ccf3e";
-      sha256 = "0xv2y9kw60cjk5n8h91s679rc101lhaal9ds5fmxgj4sl19jf5fn";
+      rev = "63a5d2d6af20d7818b94b4bdc2133107a88107e2";
+      sha256 = "1gj28wiimizgxyqshxlbk0l9afxsakjhjfsx35pg0j0znaybj9m4";
     };
     meta.homepage = "https://github.com/smiteshp/nvim-navic/";
   };
@@ -6611,12 +6635,12 @@ final: prev:
 
   nvim-notify = buildVimPluginFrom2Nix {
     pname = "nvim-notify";
-    version = "2023-03-22";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-notify";
-      rev = "50d037041ada0895aeba4c0215cde6d11b7729c4";
-      sha256 = "0nzqj6j9j0cvi0mckqggfgyc8a6cdyr6z2qwkzk30yqjs39fnh66";
+      rev = "159c6cf1be25a933f35e97499314c9faab55c98f";
+      sha256 = "02v5n53397x9kyvgzky2kmzpmiq040ahk9d9k5j03l9ai7jdsj2c";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-notify/";
   };
@@ -6729,6 +6753,18 @@ final: prev:
     meta.homepage = "https://github.com/nvim-pack/nvim-spectre/";
   };
 
+  nvim-spider = buildVimPluginFrom2Nix {
+    pname = "nvim-spider";
+    version = "2023-04-12";
+    src = fetchFromGitHub {
+      owner = "chrisgrieser";
+      repo = "nvim-spider";
+      rev = "23fa1260be2090f2d675ee90e0b83fd993f6c3dc";
+      sha256 = "1ij9kv1dm6lrdvrw83wc833yw32k4wdgqg1gd5d4qdddnqhix6zw";
+    };
+    meta.homepage = "https://github.com/chrisgrieser/nvim-spider/";
+  };
+
   nvim-surround = buildVimPluginFrom2Nix {
     pname = "nvim-surround";
     version = "2023-04-02";
@@ -6767,36 +6803,36 @@ final: prev:
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree.lua";
-    version = "2023-04-11";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "nvim-tree";
       repo = "nvim-tree.lua";
-      rev = "48d53a5934fbd51b655d03db7dad35551838f2c9";
-      sha256 = "0wxkbjbbx6j2fs3bxc69vdppp4n46s13ykilrq4sd4vkcj1msr5m";
+      rev = "0db85a70248f9a90e61af5cdbafe5d9f4320f719";
+      sha256 = "0iyyy0b2ym00p14n5hrmx6g87g9r03scjsszr33v6hcsq0k06282";
     };
     meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "ac4020c70722337c326bf65b645b162ee6e1796b";
-      sha256 = "0i993nj2yazzq5maiyqn0x1n0iilx6jz1a5wi079f0whhz5jaggi";
+      rev = "654216eb04f3fdf0f847ff2d410319fba6cee847";
+      sha256 = "0rk925xmgh7nil8dmps109h0zr36x36j6l537zs66kjcvafmy0rs";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
 
   nvim-treesitter-context = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-context";
-    version = "2023-04-07";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-context";
-      rev = "38203f5e6c62617b3c07662dc71ce3047ecd90d3";
-      sha256 = "0l3583h890pqmil34bim5zy3ib1jfc3nz12ykhda2b42a1qad0b4";
+      rev = "8b6861ebf0ba88e5f57796372eb194787705d25a";
+      sha256 = "08dn0c673i91ql14ls8ackmda3l7mx4y4gl5hlyr0030c6ziv1qf";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-context/";
   };
@@ -6851,24 +6887,24 @@ final: prev:
 
   nvim-ts-autotag = buildVimPluginFrom2Nix {
     pname = "nvim-ts-autotag";
-    version = "2023-04-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-ts-autotag";
-      rev = "b525525b6aba20763e19011a73454845170850d7";
-      sha256 = "0j8vgqq3408y1b6vsv5rppp5aqly1cf8yn37chh526r42aikzbkd";
+      rev = "26761ba6848d814605a629bc8d2694eeb1e48007";
+      sha256 = "1g3ss0mhbwv08y8kpgzqk65d5v4vl9mdl21ya2c7irvsnm23l25r";
     };
     meta.homepage = "https://github.com/windwp/nvim-ts-autotag/";
   };
 
   nvim-ts-context-commentstring = buildVimPluginFrom2Nix {
     pname = "nvim-ts-context-commentstring";
-    version = "2023-03-05";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "joosepalviste";
       repo = "nvim-ts-context-commentstring";
-      rev = "729d83ecb990dc2b30272833c213cc6d49ed5214";
-      sha256 = "1ddfnz7cscnfl7g0i7kv5x15pnbd87v2qm1lgzxap1x63vm1m7vh";
+      rev = "0bf8fbc2ca8f8cdb6efbd0a9e32740d7a991e4c3";
+      sha256 = "194v4vp3fjwmhiyy6gf7465m9c7yhhyvwvyih6gxls0bq5jmdzjs";
     };
     meta.homepage = "https://github.com/joosepalviste/nvim-ts-context-commentstring/";
   };
@@ -6887,11 +6923,11 @@ final: prev:
 
   nvim-ts-rainbow2 = buildVimPluginFrom2Nix {
     pname = "nvim-ts-rainbow2";
-    version = "2023-04-07";
+    version = "2023-04-17";
     src = fetchgit {
       url = "https://gitlab.com/HiPhish/nvim-ts-rainbow2";
-      rev = "2c82e0965be2baf67fa2d3d48f3747437fde7204";
-      sha256 = "1f31bx466vl1if7kinbb1szrl65b9gq06v32nf9h6s5rs4yvmpv4";
+      rev = "3bfcb9a7dd55d106f2e8afd3dcaec1ac624db2db";
+      sha256 = "1vh125k3i2j35jqw0rfkjxsvivxr8g5kg31zzkpcwq1irhfz9w5d";
     };
     meta.homepage = "https://gitlab.com/HiPhish/nvim-ts-rainbow2";
   };
@@ -6914,8 +6950,8 @@ final: prev:
     src = fetchFromGitHub {
       owner = "nvim-tree";
       repo = "nvim-web-devicons";
-      rev = "defb7da4d3d313bf31982c52fd78e414f02840c9";
-      sha256 = "1qwcr82yd2jdfds6r6s0pfkixpk0dydnl1l9vqg092l6vkx6v30v";
+      rev = "4ec26d67d419c12a4abaea02f1b6c57b40c08d7e";
+      sha256 = "18ssw6v60sy2lmb4dc11xz0vwkc4mw8fzbavvggadibjmbcf824l";
     };
     meta.homepage = "https://github.com/nvim-tree/nvim-web-devicons/";
   };
@@ -6972,12 +7008,12 @@ final: prev:
     pname = "oceanic-material";
     version = "2022-08-17";
     src = fetchFromGitHub {
-      owner = "glepnir";
+      owner = "nvimdev";
       repo = "oceanic-material";
       rev = "9f2d002398d1ef0cd52315fa767b138719536c5d";
       sha256 = "1c9sbprivdhjyzxni3xzmk3lc56icd61azzvl9bb961iaag6r1c9";
     };
-    meta.homepage = "https://github.com/glepnir/oceanic-material/";
+    meta.homepage = "https://github.com/nvimdev/oceanic-material/";
   };
 
   oceanic-next = buildVimPluginFrom2Nix {
@@ -7006,12 +7042,12 @@ final: prev:
 
   oil-nvim = buildVimPluginFrom2Nix {
     pname = "oil.nvim";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "oil.nvim";
-      rev = "fb8b101d7cb4727d8719ab6ed141330eca997d3f";
-      sha256 = "1vhrmiws4k65v5mzvxy2f93f5y8dxcpchsxwrqfmp9imzkcm081z";
+      rev = "3ac035e5ac448ce898c9aad7158a47378be4e85a";
+      sha256 = "01znzj38mhnh80w7n101ysq4vsd651lsbk6rr8d1g2nc61m1c2bc";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/oil.nvim/";
@@ -7019,12 +7055,12 @@ final: prev:
 
   omnisharp-extended-lsp-nvim = buildVimPluginFrom2Nix {
     pname = "omnisharp-extended-lsp.nvim";
-    version = "2023-02-02";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "Hoffs";
       repo = "omnisharp-extended-lsp.nvim";
-      rev = "55cb3d7310e07e38d0d420d195f353c51eb603fb";
-      sha256 = "1wy2cpg4cb2f18751lxiy8lbhxmp17z9d01b7qwbz6pxyr4l6k2p";
+      rev = "53edfb413a54c9e55dcddc9e9fa4977a897e4425";
+      sha256 = "1fwvqkiips64nzixp1vshlls8vd6wq88yqg751pqxab5w1hyqn5d";
     };
     meta.homepage = "https://github.com/Hoffs/omnisharp-extended-lsp.nvim/";
   };
@@ -7043,12 +7079,12 @@ final: prev:
 
   onedark-nvim = buildVimPluginFrom2Nix {
     pname = "onedark.nvim";
-    version = "2023-03-22";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "navarasu";
       repo = "onedark.nvim";
-      rev = "dd640f6cfb0e370cfd3db389f04b172508848bd3";
-      sha256 = "1ymv9mjbjhmmsyh5pm2jh883mvhh8rlcy3d7513vvdifriyxy2mz";
+      rev = "d20f23c0d6810c8754737428771eef40bd1056a7";
+      sha256 = "0xb50bz86dmlnsqnpl7b29glpx84i4m1c2sm9q03sf6xdizdpk2a";
     };
     meta.homepage = "https://github.com/navarasu/onedark.nvim/";
   };
@@ -7067,12 +7103,12 @@ final: prev:
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2023-04-02";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "17b3bb0fcce1cf626f4f848fa586bb5dd4b95331";
-      sha256 = "06dipnhjiqj5fvjwcj6i3zdvlacjadfclvylzdfzan6facx6sm4s";
+      rev = "434b67beced0b518804712ab04b8cf4bcf1aed7d";
+      sha256 = "0580qvrc5f9z7vbgwys83gm6grcc77nhy8l5hy5bg5yfg342aajf";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -7091,12 +7127,12 @@ final: prev:
 
   onenord-nvim = buildVimPluginFrom2Nix {
     pname = "onenord.nvim";
-    version = "2023-03-11";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "rmehri01";
       repo = "onenord.nvim";
-      rev = "9a59d47db81e566d4e254904479f129cfffe5f21";
-      sha256 = "07052ni5kjm5xcc6wl1hvrwayif1srjhlaggawpn8icahhrpn25r";
+      rev = "f9eb20f354e59b309dc75a526667af67b14e3e8c";
+      sha256 = "1x12ly7kq8ykivxn7dghdjgggz6blfqmzf2y84n4mq47fk785gbk";
     };
     meta.homepage = "https://github.com/rmehri01/onenord.nvim/";
   };
@@ -7139,12 +7175,12 @@ final: prev:
 
   orgmode = buildVimPluginFrom2Nix {
     pname = "orgmode";
-    version = "2023-04-07";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "nvim-orgmode";
       repo = "orgmode";
-      rev = "87cf0069949bb9426ef4930efdcaea942438cf92";
-      sha256 = "0cxf6mqjrhchixyc3m9dar141admannzwmdgpd392alvq6zi5yi8";
+      rev = "d8020e95f531369962d74d037f603d038d70de1e";
+      sha256 = "08zq7fnmj2bcz96f2zwjghp10w75ww6qqslyrdn4hic0vvdw976l";
     };
     meta.homepage = "https://github.com/nvim-orgmode/orgmode/";
   };
@@ -7307,12 +7343,12 @@ final: prev:
 
   playground = buildVimPluginFrom2Nix {
     pname = "playground";
-    version = "2023-04-09";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "playground";
-      rev = "934cb4c4adc2e7f4f351846a63c9532018c996ed";
-      sha256 = "1s6wd3xrqpxmxmaa5spnwcazpr7695fwf5mxbrrr72va8amn5vy1";
+      rev = "2b81a018a49f8e476341dfcb228b7b808baba68b";
+      sha256 = "1b7h4sih8dc55w12f0v5knk9cxfpy0iffhbvmg0g84if55ar616v";
     };
     meta.homepage = "https://github.com/nvim-treesitter/playground/";
   };
@@ -7329,6 +7365,18 @@ final: prev:
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
 
+  poimandres-nvim = buildVimPluginFrom2Nix {
+    pname = "poimandres.nvim";
+    version = "2023-02-17";
+    src = fetchFromGitHub {
+      owner = "olivercederborg";
+      repo = "poimandres.nvim";
+      rev = "43ea31d1e19f7603697bb3272b233930d0292383";
+      sha256 = "1q3xszkwlz008n9dh3q2agii6yjk45c47k38g3fj7ssgzmq56q21";
+    };
+    meta.homepage = "https://github.com/olivercederborg/poimandres.nvim/";
+  };
+
   pony-vim-syntax = buildVimPluginFrom2Nix {
     pname = "pony-vim-syntax";
     version = "2017-09-26";
@@ -7645,12 +7693,12 @@ final: prev:
 
   rest-nvim = buildNeovimPluginFrom2Nix {
     pname = "rest.nvim";
-    version = "2023-01-23";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "rest-nvim";
       repo = "rest.nvim";
-      rev = "0fdb69f328529b34a2279c14be63b3325dc52740";
-      sha256 = "0dn9g6a3lidavw381cd9ckhw3biiq81vypgg4bl5yl6w4avp5nr0";
+      rev = "df826bc0a76d5eb79b458db894d47a5538b454fe";
+      sha256 = "13f3s5xzl572y2pa7j67h7sgmnkjhkrchzqd1fjjx6098r15qnsk";
     };
     meta.homepage = "https://github.com/rest-nvim/rest.nvim/";
   };
@@ -7777,12 +7825,12 @@ final: prev:
 
   satellite-nvim = buildVimPluginFrom2Nix {
     pname = "satellite.nvim";
-    version = "2023-04-03";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "satellite.nvim";
-      rev = "d77b40a730f3036a3290d07bc32af7fc935cd031";
-      sha256 = "1i8445whk6vndinn05n2ss2vz37hlf30qyqfl1gspky3sz861jda";
+      rev = "223fd56405993175f60dbc0ee6bdda0582b78b19";
+      sha256 = "03bqfvfxwz94hiigmahahdqvpxhgrfvmr2k4kd1zy9zmszyfgnwb";
     };
     meta.homepage = "https://github.com/lewis6991/satellite.nvim/";
   };
@@ -7970,12 +8018,12 @@ final: prev:
 
   smart-splits-nvim = buildVimPluginFrom2Nix {
     pname = "smart-splits.nvim";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "smart-splits.nvim";
-      rev = "a2d3c590c250298f34674c19a87aa9e4c01af788";
-      sha256 = "18028fx4f88v34227mdzqj77x9k6zja69dj0shsl14pyagxallng";
+      rev = "e1dbc83510616df73a645f616431cfe1348898f8";
+      sha256 = "1yyz16hb9h76gnilim6mwsyim3arkki7raaa53nxndr7gmjgkywd";
     };
     meta.homepage = "https://github.com/mrjones2014/smart-splits.nvim/";
   };
@@ -8042,16 +8090,28 @@ final: prev:
 
   sonokai = buildVimPluginFrom2Nix {
     pname = "sonokai";
-    version = "2023-04-11";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "5eeceab6e905c1b93ba3a49dfbaa1200071990f9";
-      sha256 = "0d32v5qr5irbaznq1r654b8ffqyryqxs0cxmav65hp09y3m27lmx";
+      rev = "95d0ed42b40e6e050b4f0e5f08a7bf7b348f7808";
+      sha256 = "096hzz7ksydvzz2p605yx1gz0w8bsk9k1rywjsbzm6m6ybwqc1g4";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
 
+  sort-nvim = buildVimPluginFrom2Nix {
+    pname = "sort.nvim";
+    version = "2023-04-12";
+    src = fetchFromGitHub {
+      owner = "sQVe";
+      repo = "sort.nvim";
+      rev = "c789da6968337d2a61104a929880b5f144e02855";
+      sha256 = "0d9i0vhqp7axls2xs1fgz9g762g7a5j0p5452v2158wjzgb2yxy6";
+    };
+    meta.homepage = "https://github.com/sQVe/sort.nvim/";
+  };
+
   sourcemap-vim = buildVimPluginFrom2Nix {
     pname = "sourcemap.vim";
     version = "2012-09-19";
@@ -8066,12 +8126,12 @@ final: prev:
 
   space-vim = buildVimPluginFrom2Nix {
     pname = "space-vim";
-    version = "2022-09-29";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "space-vim";
-      rev = "ad92c42f97c2cb495c34b83f43d91b3d6cfdfa4e";
-      sha256 = "1ijzvnj3hff2c0kilqlb2gwv7l141p61176xv4nz5r4v9knqgl5s";
+      rev = "cabe884b7f47a537311424e662d421a9c49a1678";
+      sha256 = "1qz9nrc2v7r7dc6kcyh63pmhhwaq87ja3rgwsagmg0vzqdpjwbab";
     };
     meta.homepage = "https://github.com/liuchengxu/space-vim/";
   };
@@ -8162,12 +8222,12 @@ final: prev:
 
   splitjoin-vim = buildVimPluginFrom2Nix {
     pname = "splitjoin.vim";
-    version = "2023-03-21";
+    version = "2023-04-09";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "splitjoin.vim";
-      rev = "2c8cd19a7be5b3d7baec3eeac086eef576896e12";
-      sha256 = "0ij5l0z5hf7878gzfyz8ldvl6pjgjpbd7js26dpvgq8jlz5r5nb7";
+      rev = "8a1d52c374f1347c259e9557658be06d7acf3e79";
+      sha256 = "1yccnam55pr8nshgjfqqvzfczi7qyflkxkgs46yp90vinmibjb12";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@@ -8175,12 +8235,12 @@ final: prev:
 
   sqlite-lua = buildVimPluginFrom2Nix {
     pname = "sqlite.lua";
-    version = "2023-03-18";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "kkharji";
       repo = "sqlite.lua";
-      rev = "376e4735c48e07dade3e6ff5f09a654a04f5d4ba";
-      sha256 = "1l6c9z72kfnj4pzhipnscprvlmbw44jhrvbi14pplvj7wk9x9c85";
+      rev = "b7e28c8463254c46a8e61c52d27d6a2040492fc3";
+      sha256 = "0dx4d29zfp7psp2x42lpag0midadk51fcjiyw4hq570sd0j44jaw";
     };
     meta.homepage = "https://github.com/kkharji/sqlite.lua/";
   };
@@ -8211,24 +8271,24 @@ final: prev:
 
   ssr-nvim = buildVimPluginFrom2Nix {
     pname = "ssr.nvim";
-    version = "2023-03-27";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "cshuaimin";
       repo = "ssr.nvim";
-      rev = "a30674d07b220304ed81f1f46a8f1de36ce74c38";
-      sha256 = "1z0kwd335pad6np8kr2njyrh2m97f1n6mh2pabl7axhcisvhvhrd";
+      rev = "e5768511518a397fa712f26389ba30d0404990de";
+      sha256 = "0bw60qf49bb07vhxpg21fkf5v2am4ply3x4z5y5c24lx19fwmryw";
     };
     meta.homepage = "https://github.com/cshuaimin/ssr.nvim/";
   };
 
   stabilize-nvim = buildVimPluginFrom2Nix {
     pname = "stabilize.nvim";
-    version = "2022-10-06";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "luukvbaal";
       repo = "stabilize.nvim";
-      rev = "34069870a8e72632c5447188e638e1c6bfebc353";
-      sha256 = "0ik3p1p3wndclw7a72rx507fzk6d9zv6b75lahd0sp9ra9xhzc86";
+      rev = "eeb1873daffaba67246188a5668b366e45ed1de1";
+      sha256 = "0zvirhhq7pnavsldsll35xqjchvsqmvsrj1zhg930kkp2r0ycf01";
     };
     meta.homepage = "https://github.com/luukvbaal/stabilize.nvim/";
   };
@@ -9019,12 +9079,12 @@ final: prev:
 
   tmux-nvim = buildVimPluginFrom2Nix {
     pname = "tmux.nvim";
-    version = "2023-03-11";
+    version = "2023-04-11";
     src = fetchFromGitHub {
       owner = "aserowy";
       repo = "tmux.nvim";
-      rev = "9ba03cc5dfb30f1dc9eb50d0796dfdd52c5f454e";
-      sha256 = "0xkdihg0f9b0wc37zml7n3wsmy8ppy08zynv8f2j90xwlwad06b4";
+      rev = "b6da35847df972f50df27d938b6e5ea09bcc8391";
+      sha256 = "1zmvc8ar9x79bygiilb9gs49hnl8w2z575l25cpvlbylaz6yxi22";
     };
     meta.homepage = "https://github.com/aserowy/tmux.nvim/";
   };
@@ -9080,24 +9140,24 @@ final: prev:
 
   toggleterm-nvim = buildVimPluginFrom2Nix {
     pname = "toggleterm.nvim";
-    version = "2023-04-09";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "toggleterm.nvim";
-      rev = "2e477f7ee8ee8229ff3158e3018a067797b9cd38";
-      sha256 = "1d7qqgviimgmzz1g7ykv688pyhr0m9kv6h9lrczxmdq7xwymmbbq";
+      rev = "1c5996ee3c30b54751093fe68d40676859e7778f";
+      sha256 = "0m0xaw7d9yf9xy4j9x9y8lj7alr9zmys5picknfklyxq6p7szh6b";
     };
     meta.homepage = "https://github.com/akinsho/toggleterm.nvim/";
   };
 
   tokyonight-nvim = buildVimPluginFrom2Nix {
     pname = "tokyonight.nvim";
-    version = "2023-03-23";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "tokyonight.nvim";
-      rev = "1b0c88094548a62641ece1e668fa9a234e1c539e";
-      sha256 = "0mf9f955bd587kd3mxvvhqdn7p639pfqi1wfbz1wds1hizkdfmrk";
+      rev = "ff81eac0ecf85db235dfc4c9d54f2d07d662a423";
+      sha256 = "1zccj9jff1cyi5z1cg2dy7ly42z2zxr1csd22akrlxf2956v3nb1";
     };
     meta.homepage = "https://github.com/folke/tokyonight.nvim/";
   };
@@ -9128,12 +9188,12 @@ final: prev:
 
   treesj = buildVimPluginFrom2Nix {
     pname = "treesj";
-    version = "2023-04-09";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "Wansmer";
       repo = "treesj";
-      rev = "12fc4074a7dee23faabeb1f5dfd3af41d2aa04f1";
-      sha256 = "1nq06hgsm1hky7w1h8hy2y1l3nyngky2xrknk9qqwy5yq1q6pngp";
+      rev = "61830dd2ba196e3e62557386607928889741ab3d";
+      sha256 = "046ggamsbss9am5qs0ggp7dp8izqzyxc5sk9sagiy4nzl2j1mzz6";
     };
     meta.homepage = "https://github.com/Wansmer/treesj/";
   };
@@ -9164,12 +9224,12 @@ final: prev:
 
   trouble-nvim = buildVimPluginFrom2Nix {
     pname = "trouble.nvim";
-    version = "2023-03-26";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "trouble.nvim";
-      rev = "2ae7237c2917d661f458443c9a88680f8ca2d7b2";
-      sha256 = "086w4yk5vnm03q1rkxjg0n6pg8hq5abzbz8g3ynds558q9yg03xv";
+      rev = "d56bfc0c501ced4002a57cb60433362fb2ce9c4d";
+      sha256 = "0h01raxxjq2arkjq0wa1l5nhgr2x55rmmq7hwz46sl4il936yvli";
     };
     meta.homepage = "https://github.com/folke/trouble.nvim/";
   };
@@ -9272,12 +9332,12 @@ final: prev:
 
   unison = buildVimPluginFrom2Nix {
     pname = "unison";
-    version = "2023-04-11";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "unisonweb";
       repo = "unison";
-      rev = "b9c391ea148795d50071565d8abea635f59dc68f";
-      sha256 = "0xh52mc6kp58w2frjmncc0p132y3287hc92dxih62maaagaham9l";
+      rev = "c32964f6fb35a7ad2bc74320bb7032477965881b";
+      sha256 = "19bpf235rv3gdyx94ancwmg9an0zjlkf0k0i75vmx6y01kb0an55";
     };
     meta.homepage = "https://github.com/unisonweb/unison/";
   };
@@ -9704,12 +9764,12 @@ final: prev:
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2023-03-16";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "a532fed72ace069e61c0132125b728316f9abd3c";
-      sha256 = "1n11mi2fh8a95ddrmmi7p4yrapvzg4lqnvsw5npfjzyj22c5wmpy";
+      rev = "5891a3f7bedb5d0b23a546189a607836913814bb";
+      sha256 = "0vmzpxkivrr8w7gwkwcxpa9h9jyfr3si516misj6aki4si8bzxr8";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -9848,12 +9908,12 @@ final: prev:
 
   vim-autoformat = buildVimPluginFrom2Nix {
     pname = "vim-autoformat";
-    version = "2023-01-09";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "vim-autoformat";
       repo = "vim-autoformat";
-      rev = "d529e3e09a378695367969bf01735b9b997014ec";
-      sha256 = "06p0246rw4cra2c9zr6bml9ylflyb4kcx4h5nfcriz0rsqgph0ha";
+      rev = "7b35295b519f5f69be2e10b936db7fbac290b813";
+      sha256 = "1cwxnbq4pngfi8151ycp9d78gybq70snrikv1nsxqmlk4k3wdipk";
     };
     meta.homepage = "https://github.com/vim-autoformat/vim-autoformat/";
   };
@@ -10376,12 +10436,12 @@ final: prev:
 
   vim-dadbod-ui = buildVimPluginFrom2Nix {
     pname = "vim-dadbod-ui";
-    version = "2023-03-18";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-dadbod-ui";
-      rev = "986324fa6372170ec47b28a5558ae7f7185e1d71";
-      sha256 = "0cc8lj2fsvibdvw1vdg5pa14gdndr0h6p3rzkzz475xzh1hiid2q";
+      rev = "4c306bef457ebfdbe71c76b49672d48ef310ddd3";
+      sha256 = "0xq3ywagb5xj9hzb84gm4lg1jkhxh81lgi5q942hi8sajgmlmf6d";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-ui/";
   };
@@ -10628,12 +10688,12 @@ final: prev:
 
   vim-endwise = buildVimPluginFrom2Nix {
     pname = "vim-endwise";
-    version = "2023-02-25";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-endwise";
-      rev = "c3411c95290063f56dfe13b485882111ef403c6e";
-      sha256 = "0dip6vajky1hyc3xs8bjbwv5dycrv4lmyzicj6g7y8pgbddl283a";
+      rev = "49f7283374f8e3badd3701e35420cf6cb386ef2a";
+      sha256 = "0afh1k81b2j169h6bzd4hjr3cp0iizc3z3cj4ycj7a3h0n6pzm3s";
     };
     meta.homepage = "https://github.com/tpope/vim-endwise/";
   };
@@ -10820,12 +10880,12 @@ final: prev:
 
   vim-flog = buildVimPluginFrom2Nix {
     pname = "vim-flog";
-    version = "2023-03-19";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "rbong";
       repo = "vim-flog";
-      rev = "c58f04c82174fc887bbd626e871c89bc393ba585";
-      sha256 = "0113br4ny03pn3r2zly3w6svasrm7n48vcnc5dcizwkk0jf2rhi4";
+      rev = "79d12ed0384d2934c27daee8f5f49b8390c56014";
+      sha256 = "0q084z6lbhd84qgl7zz6xkfzy8x5raw3lm5gix93wdi0kzczchpn";
     };
     meta.homepage = "https://github.com/rbong/vim-flog/";
   };
@@ -10868,24 +10928,24 @@ final: prev:
 
   vim-fubitive = buildVimPluginFrom2Nix {
     pname = "vim-fubitive";
-    version = "2023-02-13";
+    version = "2023-04-12";
     src = fetchFromGitHub {
       owner = "tommcdo";
       repo = "vim-fubitive";
-      rev = "f522e7c1c958d099438b375f38576f0f2f5100d2";
-      sha256 = "1qd9pka3wrmwq1y33i4bzm2qs6l0lx8g1174aa0g4kcawwf21m7j";
+      rev = "5b13f16703ff69cca103aeffbd3d69515899989a";
+      sha256 = "00gi3bfrf58f8z7v30lkbdj4mw8n8q2cjdkqq4clv6yrsy7jg25i";
     };
     meta.homepage = "https://github.com/tommcdo/vim-fubitive/";
   };
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2023-03-30";
+    version = "2023-04-14";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "ef99f1d90cdb33a52931aed5868785b51fb9411d";
-      sha256 = "1q71pmhm1yg2nwczyj0iq102nzzv8j4y55f2aylr4j2cxbhy7bzb";
+      rev = "e6651a79facf5cc2b7c554fdc19eb8a9fe89602c";
+      sha256 = "1n6sswhn0x7qg7jpk38790lbrbvpz1k5wjfjanplfz35h2njjyag";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -11409,12 +11469,12 @@ final: prev:
 
   vim-jack-in = buildVimPluginFrom2Nix {
     pname = "vim-jack-in";
-    version = "2023-01-31";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "clojure-vim";
       repo = "vim-jack-in";
-      rev = "8ca306a9484d6d184de8921a9cab03c63ee9aa79";
-      sha256 = "0hrvsq95rqwp0kfsdiid5qv0bfx1i7wc5yn7qmdqc660s7abwqxs";
+      rev = "4cefab20f02c44249499f43200442a3176315acd";
+      sha256 = "1jvqfqf11gv8ww5gh4xxxdrpflaw1pw8f10p1y8slc63var5i8vd";
     };
     meta.homepage = "https://github.com/clojure-vim/vim-jack-in/";
   };
@@ -11758,12 +11818,12 @@ final: prev:
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2023-04-10";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "06bf1b35ef4717a10a00ec4f8387ebf3ec983194";
-      sha256 = "1wmxjlhhb3za2giza5hphr4sp4x763czajviv6vndfpibi4cgy5s";
+      rev = "80644e108b71d8735ab4c03dbc53db5ec6598d9b";
+      sha256 = "1m3c8sq48acb1mcv1b1dxyh6zfm2i46hvaf0i7nx8ndnasd3jap4";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -11867,12 +11927,12 @@ final: prev:
 
   vim-matchup = buildVimPluginFrom2Nix {
     pname = "vim-matchup";
-    version = "2023-04-10";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "andymass";
       repo = "vim-matchup";
-      rev = "03ebc3b7dbf8f17f2d45d9b5619b48a030e1bf88";
-      sha256 = "18bgw4gv9xd8msh7ly4lz8x631a3bprn5lcdl114g3h6ybs8ldix";
+      rev = "1364b2ba551c82fdb342b646da666a477490c063";
+      sha256 = "1fqnp195gxh8wcjvdv01iq6zd04d43nml3d2qlxqr6fcc5pvrn9a";
     };
     meta.homepage = "https://github.com/andymass/vim-matchup/";
   };
@@ -12299,12 +12359,12 @@ final: prev:
 
   vim-oscyank = buildVimPluginFrom2Nix {
     pname = "vim-oscyank";
-    version = "2023-03-06";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "ojroques";
       repo = "vim-oscyank";
-      rev = "ffe827a27dae98aa826e2295336c650c9a434da0";
-      sha256 = "1hj1yviw2lkinnb4l15psg2c9gmcx4csmlh0hp32kbslwmv56y92";
+      rev = "7fa8b04562d4ba2c23e67e7038256ecabc8fc376";
+      sha256 = "0cbpjffjk8ydwb9kv1sblggrs5j2hdk7l57xy7k0r7rwd5kmwj5k";
     };
     meta.homepage = "https://github.com/ojroques/vim-oscyank/";
   };
@@ -12743,12 +12803,12 @@ final: prev:
 
   vim-rails = buildVimPluginFrom2Nix {
     pname = "vim-rails";
-    version = "2023-01-05";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-rails";
-      rev = "959e94b76e6ebdf984acef61649ba7d0f62bd425";
-      sha256 = "05v2gi42jv1rly8g7vhwfhjl01x3ld5xnrzgi7kadl5kppjnp5g8";
+      rev = "eb51379ebab26ca3ec45d54f848c310c45ce7692";
+      sha256 = "0z8zsyv3g1224g6iwgf0wchnqn6cmr7w9h0ddgv3lysvh7qz6mla";
     };
     meta.homepage = "https://github.com/tpope/vim-rails/";
   };
@@ -13019,12 +13079,12 @@ final: prev:
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2023-03-15";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "e5ae6a6d479c97d5352969574130956798e480b7";
-      sha256 = "1s4xpwca6nnylcfsk3lic6s2ddy4plf8qc2hln7vvbnmbjp948d0";
+      rev = "bb152854fc21193729bf587aa055e738d50c8b48";
+      sha256 = "1hxcjqy6xga0jr5z6s71vsl1s45z1fkhcvwxwr571n1azfhb8znk";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -13199,12 +13259,12 @@ final: prev:
 
   vim-startuptime = buildVimPluginFrom2Nix {
     pname = "vim-startuptime";
-    version = "2023-02-01";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "vim-startuptime";
-      rev = "6580cf539c33a212f4f5542068a3b4dd2b3ad834";
-      sha256 = "1977l3k7crzrr1cc80afnz7cs6bz2y16qn02gz56marc0pn215mx";
+      rev = "00391e7f86a0fd0ebdb2afdf4336f6712925ce45";
+      sha256 = "1n0q0mgb52yr5vv053dgkp1vhzl42l7ancmpbg5vwc4gj0bwm603";
     };
     meta.homepage = "https://github.com/dstein64/vim-startuptime/";
   };
@@ -13560,12 +13620,12 @@ final: prev:
 
   vim-tpipeline = buildVimPluginFrom2Nix {
     pname = "vim-tpipeline";
-    version = "2023-04-02";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "vimpostor";
       repo = "vim-tpipeline";
-      rev = "33434a26c8b057bcf6ed20f10fa888b2ed82e2cc";
-      sha256 = "0ahkmbg998w2mpby5krv4n9c9a8kbnbzflivc8fx3xdvs4a4a2x7";
+      rev = "b492a5717ba513b32a5d310fab7b9b0401eb0b57";
+      sha256 = "0zi6891wndfvhf2k3cl3rzbfsk2nfxl2qhqscg05szx7gfjvb3bd";
     };
     meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
   };
@@ -13800,12 +13860,12 @@ final: prev:
 
   vim-wakatime = buildVimPluginFrom2Nix {
     pname = "vim-wakatime";
-    version = "2023-03-18";
+    version = "2023-04-13";
     src = fetchFromGitHub {
       owner = "wakatime";
       repo = "vim-wakatime";
-      rev = "3b3d7f3d0fb4a476a7d1ef4d6f41e31050bdf52a";
-      sha256 = "1l2zv2442nrhl8hskc273n62i8d4ws7ixsk83hhdy4r8cafnhmjd";
+      rev = "515dbcc2278a9279a19de838fa29fc5078e34e56";
+      sha256 = "186p9v00j7sag46wh9w0x7nvc52k5ki19smxfi1mwjpfrfizxywn";
     };
     meta.homepage = "https://github.com/wakatime/vim-wakatime/";
   };
@@ -13896,12 +13956,12 @@ final: prev:
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2023-03-06";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "99821a4b8ee2a05996954a2894d043af001f2d7b";
-      sha256 = "1jbng45aiypb526ji6nd9d26d4zjj6il4jz808452b5q1immdrpc";
+      rev = "cba47eaec8931266c34c4ab1247abe04f3b7ef55";
+      sha256 = "0fgd10j4c64zc77pc2q3d5x7hg1h844lfj2cdqqxgds33nf2cald";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
@@ -14100,12 +14160,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2023-04-06";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "657132ead403951a59641b24bd771bb6da93e427";
-      sha256 = "11kzpzah7wqm22wnrlr8hpyjaammkj2nlxh19m52xb8cc3fkzpys";
+      rev = "bcf6dad40903ad34843a7536d3a4cff6ac5c0035";
+      sha256 = "0lngsihdwv3s46b61r7kpnac3r0iw1vhh2bggn3k9ldmzds36rzb";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -14113,12 +14173,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2023-04-06";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "e8542f26b45e489fe7cfa7894737ccb0fe937fcd";
-      sha256 = "1zlagp825rcl82kg4n38hvxvyywd6rx3496jh34lkcqzdvvbab2r";
+      rev = "d3dfbf391ba8d8f08ab91ce8e54173cddc708b02";
+      sha256 = "1kv6004a8r1c68kda1zn853kddbqb8dafxba8a5h3rcjqcbjn1kn";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -14137,12 +14197,12 @@ final: prev:
 
   vimwiki = buildVimPluginFrom2Nix {
     pname = "vimwiki";
-    version = "2023-04-05";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "vimwiki";
       repo = "vimwiki";
-      rev = "71edcf6802eeb724ca679547d5cb7a8eadf0cfcb";
-      sha256 = "0c08c24i17h2zykbsm0lv1brscwsbmyf9lvqh9zbi8ikbfswr5b7";
+      rev = "7a48268d24614e74f8187856ade54cf03134e9d9";
+      sha256 = "1g85yjp2adysgvfpy6mq24vdm2rgn1gq7yr3h6hw8i3c3wjzjibg";
     };
     meta.homepage = "https://github.com/vimwiki/vimwiki/";
   };
@@ -14185,12 +14245,12 @@ final: prev:
 
   vista-vim = buildVimPluginFrom2Nix {
     pname = "vista.vim";
-    version = "2022-11-30";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vista.vim";
-      rev = "33774aff5d8b224f24c2e4c6015c613c1a17bf74";
-      sha256 = "0c3255id5wzgb1v5zsga7ig1b8mqmrbklmz40x98av4j5dqghfw7";
+      rev = "cbe87c86505d80fe5ad7fd508f2d92185f2e2aa1";
+      sha256 = "0vx99bhrgwr72az85imp7qwni54q9kk1v9vhdbglfc4h1rd3fzm5";
     };
     meta.homepage = "https://github.com/liuchengxu/vista.vim/";
   };
@@ -14221,24 +14281,24 @@ final: prev:
 
   which-key-nvim = buildVimPluginFrom2Nix {
     pname = "which-key.nvim";
-    version = "2023-03-26";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "which-key.nvim";
-      rev = "4b73390eec680b4c061ea175eb32c0ff3412271d";
-      sha256 = "0c8f765hm0j9k5j3xcnmmzrj3ajrc9v3gw94rc6sil5p0va997a7";
+      rev = "94cb020ff33a1e0e22fac1c41663d2c439741f17";
+      sha256 = "1xq9l53n5l1dyyj4xvw30wra9g8c8xg82sijx1ahgfcqkz4j1zib";
     };
     meta.homepage = "https://github.com/folke/which-key.nvim/";
   };
 
   whitespace-nvim = buildVimPluginFrom2Nix {
     pname = "whitespace.nvim";
-    version = "2023-02-13";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "johnfrankmorgan";
       repo = "whitespace.nvim";
-      rev = "525f67b3f01910c73f07f0848839aab0b7ab9f42";
-      sha256 = "0kv2b099jc9592g0b381rdgzv5wvryy3v95bfk1sdjr9bmzdyjn9";
+      rev = "fe9ca0ba3c6e6cc1dd14c0d6cbe49d97496700dd";
+      sha256 = "1a391aq8svh3ayv4sa5dphg31l0x9rji8jrb6pa91y4b9sdhr6is";
     };
     meta.homepage = "https://github.com/johnfrankmorgan/whitespace.nvim/";
   };
@@ -14414,12 +14474,12 @@ final: prev:
 
   zen-mode-nvim = buildVimPluginFrom2Nix {
     pname = "zen-mode.nvim";
-    version = "2023-03-19";
+    version = "2023-04-17";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "zen-mode.nvim";
-      rev = "d907e638c879642d226d27469b53db6925f69d4c";
-      sha256 = "0jidblyqmgrzmzmfkz71qa0p13y66fa8jb66fkrnn4bbk617vryw";
+      rev = "6e6c963d70a8e47854fa656987666bfb863f9c4e";
+      sha256 = "1vkwvbxdqny03p22ngbczkzd4djpiirx7x01v49078217m6b56w3";
     };
     meta.homepage = "https://github.com/folke/zen-mode.nvim/";
   };
@@ -14452,12 +14512,12 @@ final: prev:
     pname = "zephyr-nvim";
     version = "2022-12-31";
     src = fetchFromGitHub {
-      owner = "glepnir";
+      owner = "nvimdev";
       repo = "zephyr-nvim";
       rev = "7fd86b7164442d3b5ec2c81b2694d040e716b5cf";
       sha256 = "12ichp7jmawgf1clwpd2w22a2amqlv578lnb89ppzf9hjz5kcxnb";
     };
-    meta.homepage = "https://github.com/glepnir/zephyr-nvim/";
+    meta.homepage = "https://github.com/nvimdev/zephyr-nvim/";
   };
 
   zig-vim = buildVimPluginFrom2Nix {
@@ -14474,12 +14534,12 @@ final: prev:
 
   zk-nvim = buildVimPluginFrom2Nix {
     pname = "zk-nvim";
-    version = "2023-04-03";
+    version = "2023-04-15";
     src = fetchFromGitHub {
       owner = "mickael-menu";
       repo = "zk-nvim";
-      rev = "ff3a9661d9054a74d8baa51743c9dc11f8a215c3";
-      sha256 = "1a97yk343rw6af8nvyh8wd33ynyl039hw9va74rd4d4qljnj7qjr";
+      rev = "275578853dc76d282ee5b31f86cd3a4f02d91f2f";
+      sha256 = "0931qp0i0p8cqvz7a5i5b7ijdrd40qr4vriqmxl4hycjag8wcwq6";
     };
     meta.homepage = "https://github.com/mickael-menu/zk-nvim/";
   };
@@ -14498,24 +14558,24 @@ final: prev:
 
   zoxide-vim = buildVimPluginFrom2Nix {
     pname = "zoxide.vim";
-    version = "2023-02-22";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "nanotee";
       repo = "zoxide.vim";
-      rev = "e50df0b0160363f5dcae60c4f633ade78e59bdc8";
-      sha256 = "0qviqfbdss95jz51afpxwrxbvml4lcqpspn8gzv2q0m8avqnlrq8";
+      rev = "7582d5441f68c46b8fbd42a8721cde0c0dfe344b";
+      sha256 = "0gbnwf535mk29yhn39sdy9bifzk2y8x6ldkybn8l3pwjrlr42cks";
     };
     meta.homepage = "https://github.com/nanotee/zoxide.vim/";
   };
 
   catppuccin-nvim = buildVimPluginFrom2Nix {
     pname = "catppuccin-nvim";
-    version = "2023-04-11";
+    version = "2023-04-20";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "f078aa49bef4cb9e7b86f07b607c6e98c95b9fb5";
-      sha256 = "0w87h5vdrwn3ch8fyyfxkpz16r150910wmbb5y6wr4ad3scndjsk";
+      rev = "939be5f7fcbc15abeaad9214bb253a4551f6f6e6";
+      sha256 = "16dmasj74szapc0p9kv35yb0smci7zk4k17p5d301lslrhr5jg35";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
@@ -14534,12 +14594,12 @@ final: prev:
 
   chad = buildVimPluginFrom2Nix {
     pname = "chad";
-    version = "2023-04-09";
+    version = "2023-04-16";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "f7d98de1e1c22b057248981bf531e8fa6132e225";
-      sha256 = "183qkns5idryq2izng4lg3ah20d6wqrlz21vmsgwhal9594ppzkj";
+      rev = "bac02812a4ccb695a02dcc46ed6b33d56b31b147";
+      sha256 = "1d0hhlia4s9nb81ah5f3qilmsflyax5w38w3fjpqvffikxn9rvzs";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -14558,12 +14618,12 @@ final: prev:
 
   embark-vim = buildVimPluginFrom2Nix {
     pname = "embark-vim";
-    version = "2023-02-25";
+    version = "2023-04-21";
     src = fetchFromGitHub {
       owner = "embark-theme";
       repo = "vim";
-      rev = "484eb68c69345b5185e370d91ba631accd522776";
-      sha256 = "1l74j5hq3gs4pfln7inbidza1vfrrl8z5pg77njmb7yx1ilc4l9q";
+      rev = "0e2c7d36b766dcebba2d8a3a0639784446dea086";
+      sha256 = "1q3a6ix01wmw0qkir0v246gjp5dxr30ih0h0q28gv3s2hfk75a4w";
     };
     meta.homepage = "https://github.com/embark-theme/vim/";
   };
@@ -14582,12 +14642,12 @@ final: prev:
 
   lspsaga-nvim-original = buildVimPluginFrom2Nix {
     pname = "lspsaga-nvim-original";
-    version = "2023-04-11";
+    version = "2023-04-19";
     src = fetchFromGitHub {
       owner = "nvimdev";
       repo = "lspsaga.nvim";
-      rev = "1ead4ce8a20a8ac7e96aca038d54ceaa185be4e0";
-      sha256 = "14k02srgqdzglzbn6yvr12qgpkmngaamlpb97p4h27d6di9zpkkm";
+      rev = "c483c9b43fa6cb47fb8c18a8ebd4ece45bbf07f4";
+      sha256 = "10gy1jvqkxq20bdq4k3mhc6ib1d15h0p9vmnmx55bgp5z1hby44c";
     };
     meta.homepage = "https://github.com/nvimdev/lspsaga.nvim/";
   };
@@ -14630,12 +14690,12 @@ final: prev:
 
   rose-pine = buildVimPluginFrom2Nix {
     pname = "rose-pine";
-    version = "2023-03-30";
+    version = "2023-04-18";
     src = fetchFromGitHub {
       owner = "rose-pine";
       repo = "neovim";
-      rev = "f8e210df52a4f418eae3690eb744b06c13a6c556";
-      sha256 = "1d2ll2x66f7v854xdmp65l23mnv5qhzqci1bri5v2gj7hqs18r4f";
+      rev = "667851c05f87874826084474b5f04829940b6451";
+      sha256 = "0j7f7fj3gy2p6q3vnkwxxll49p36fi8glzlzgbc08knwksdkgi30";
     };
     meta.homepage = "https://github.com/rose-pine/neovim/";
   };
diff --git a/pkgs/applications/editors/vim/plugins/get-plugins.nix b/pkgs/applications/editors/vim/plugins/get-plugins.nix
new file mode 100644
index 0000000000000..0aaec333c2d76
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/get-plugins.nix
@@ -0,0 +1,19 @@
+with import <localpkgs> {};
+let
+  inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix;
+  inherit (neovimUtils) buildNeovimPluginFrom2Nix;
+
+  generated = callPackage <localpkgs/pkgs/applications/editors/vim/plugins/generated.nix> {
+    inherit buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
+  } {} {};
+  hasChecksum = value:
+    lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;
+  getChecksum = name: value:
+    if hasChecksum value then {
+      submodules = value.src.fetchSubmodules or false;
+      sha256 = value.src.outputHash;
+      rev = value.src.rev;
+    } else null;
+  checksums = lib.mapAttrs getChecksum generated;
+in
+  lib.filterAttrs (n: v: v != null) checksums
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
index 257f01b1aec01..8d1654913fab7 100644
--- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
@@ -60,12 +60,12 @@
   };
   bash = buildGrammar {
     language = "bash";
-    version = "0.0.0+rev=b338fa9";
+    version = "0.0.0+rev=422a07c";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-bash";
-      rev = "b338fa9f4807b9e0336cd4dde04948a8c324a4cf";
-      hash = "sha256-2ARBWfjtnM9+FKfASk1s6L7cDnUFIV6U9wBld2s8WWM=";
+      rev = "422a07cb221b92c6b117e854efa8945a506b5214";
+      hash = "sha256-P5ne6DIQZElbGpSpwxbEQrufcUhekWWEhOhD0GHJ/AQ=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-bash";
   };
@@ -137,12 +137,12 @@
   };
   c_sharp = buildGrammar {
     language = "c_sharp";
-    version = "0.0.0+rev=92d572e";
+    version = "0.0.0+rev=0dd182a";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-c-sharp";
-      rev = "92d572eef5ffdd4117e7ba36b56850a90cb79151";
-      hash = "sha256-Zp8aEoLv/FPaTQPJzS2gS3htU9wpUwWB1gvRfYh4gsY=";
+      rev = "0dd182a14a519a70dc60c3727fdc2fdb65c030ae";
+      hash = "sha256-yIZUsEJvQkxD4gNp4jQRGtEeSTLeSdgFdJs03nvt9ko=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-c-sharp";
   };
@@ -192,12 +192,12 @@
   };
   comment = buildGrammar {
     language = "comment";
-    version = "0.0.0+rev=a37ca37";
+    version = "0.0.0+rev=f08e7d4";
     src = fetchFromGitHub {
       owner = "stsewd";
       repo = "tree-sitter-comment";
-      rev = "a37ca370310ac6f89b6e0ebf2b86b2219780494e";
-      hash = "sha256-wiFY2uMNv8Wet3qKh0bSe8FSO1sjGu1uTOBxnt/HHHg=";
+      rev = "f08e7d44b2923e9da2bf487a2f365d08677d368e";
+      hash = "sha256-v3h4x3R+9xbCEFezZlWPPM2Hb4575mbRkkyw7oz7K+U=";
     };
     meta.homepage = "https://github.com/stsewd/tree-sitter-comment";
   };
@@ -236,12 +236,12 @@
   };
   cpp = buildGrammar {
     language = "cpp";
-    version = "0.0.0+rev=0b6d0eb";
+    version = "0.0.0+rev=670404d";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-cpp";
-      rev = "0b6d0eb9abdf7cea31961cd903eeed5bbd0aae74";
-      hash = "sha256-rsxRiZCrsEB/ixAP4YmxFtnCoDQrLAp75c74DFR0/nk=";
+      rev = "670404d7c689be1c868a46f919ba2a3912f2b7ef";
+      hash = "sha256-T+Ha2hlI7ucEsTYvDmk7xjHNEoyvnotp/1EWfyCwnWM=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-cpp";
   };
@@ -258,12 +258,12 @@
   };
   cuda = buildGrammar {
     language = "cuda";
-    version = "0.0.0+rev=967e7d7";
+    version = "0.0.0+rev=a358542";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-cuda";
-      rev = "967e7d74a1a04a680674199e12141963a8dd6336";
-      hash = "sha256-3rkmxnf1YzshBUEOXBXj9Zpg9IHh2uS0QzdncOU99IQ=";
+      rev = "a35854270463a96e79096bb854aae30a4f0e6cd2";
+      hash = "sha256-8CRFEUxTge0EJQQQVabCjstUGkOIPlC1duj2jD4R89E=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-cuda";
   };
@@ -392,12 +392,12 @@
   };
   elm = buildGrammar {
     language = "elm";
-    version = "0.0.0+rev=28bb193";
+    version = "0.0.0+rev=692c50c";
     src = fetchFromGitHub {
       owner = "elm-tooling";
       repo = "tree-sitter-elm";
-      rev = "28bb193640d916dfaf947912c1413cebb0484841";
-      hash = "sha256-Ijw9Ov8+IBLl0fQlkuH6rQ6E7tlKeD+huj0GZdz6XH8=";
+      rev = "692c50c0b961364c40299e73c1306aecb5d20f40";
+      hash = "sha256-0LpuyebOB5ew9fULBcaw8aUbF7HM5sXQpv+Jroz4tXg=";
     };
     meta.homepage = "https://github.com/elm-tooling/tree-sitter-elm";
   };
@@ -579,12 +579,12 @@
   };
   gitcommit = buildGrammar {
     language = "gitcommit";
-    version = "0.0.0+rev=1723599";
+    version = "0.0.0+rev=04dcb2c";
     src = fetchFromGitHub {
       owner = "gbprod";
       repo = "tree-sitter-gitcommit";
-      rev = "17235998809be904892f14ee57730d96795e9323";
-      hash = "sha256-UhPlEanOBUpzqVPCqe8t5MIwdUwSeaoFJFsxpnUqwn8=";
+      rev = "04dcb2cb9a4cf638252b8bd4a829f9acadf2cc4c";
+      hash = "sha256-plu1qzMfvMfSqapQ4q+ZYNULDM8mBwlNeOzHoSSC3Hc=";
     };
     meta.homepage = "https://github.com/gbprod/tree-sitter-gitcommit";
   };
@@ -612,12 +612,12 @@
   };
   glimmer = buildGrammar {
     language = "glimmer";
-    version = "0.0.0+rev=16c3786";
+    version = "0.0.0+rev=21805f4";
     src = fetchFromGitHub {
       owner = "alexlafroscia";
       repo = "tree-sitter-glimmer";
-      rev = "16c3786e1a2c87a236c823d1a8859574778a3436";
-      hash = "sha256-fLRA4Rm92hVezbAdMxmrXPb5ax6wNaaBYIo+U64nD+8=";
+      rev = "21805f429c5b7536be9f5f61dcabb5d3a4173bec";
+      hash = "sha256-EMcPjnf0SPa8Jk0GkkLTsOEGqRVdjbUt/DklRmXOGUA=";
     };
     meta.homepage = "https://github.com/alexlafroscia/tree-sitter-glimmer";
   };
@@ -766,12 +766,12 @@
   };
   hlsl = buildGrammar {
     language = "hlsl";
-    version = "0.0.0+rev=fce5ea2";
+    version = "0.0.0+rev=40472c1";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-hlsl";
-      rev = "fce5ea2e842404ce1af13fffdcf0daa02240c3dd";
-      hash = "sha256-7/HJPPLUwwnxgmNP0Vzm+nTJ1YfnUYbqMcOEZZj5uRA=";
+      rev = "40472c119b5740d9a1fa0b0dc0b013502b636708";
+      hash = "sha256-PfShqPSIsYVMPpW9hQhbEz378vBwDiNkBKR3rLXcIdM=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-hlsl";
   };
@@ -788,12 +788,12 @@
   };
   html = buildGrammar {
     language = "html";
-    version = "0.0.0+rev=29f53d8";
+    version = "0.0.0+rev=594f23e";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-html";
-      rev = "29f53d8f4f2335e61bf6418ab8958dac3282077a";
-      hash = "sha256-v84N9erFL+QMoxh1dtfVdAJ5iTCoiFcT3kQ2+yq8TXE=";
+      rev = "594f23eb6da580cf269a59d966db68f2cde7d0c8";
+      hash = "sha256-DgYcJjMCQ0C96l1J4if6FdArj5atxy3LsJr+SnZqiQo=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-html";
   };
@@ -964,12 +964,12 @@
   };
   latex = buildGrammar {
     language = "latex";
-    version = "0.0.0+rev=376f640";
+    version = "0.0.0+rev=cd3cc49";
     src = fetchFromGitHub {
       owner = "latex-lsp";
       repo = "tree-sitter-latex";
-      rev = "376f64097b7a26691a2ca60dc94e4dfa417be932";
-      hash = "sha256-9hcmCr9HfhKt5dkNN24haubrOySqpxzMoLVEGO53lxk=";
+      rev = "cd3cc493a92b6bac7be4b3bd6d006d35d3c36d4c";
+      hash = "sha256-CHN54T4+eD7EGx4nzAIryAHOu8NCiBDjM2A7Njjt87w=";
     };
     meta.homepage = "https://github.com/latex-lsp/tree-sitter-latex";
   };
@@ -1008,12 +1008,12 @@
   };
   luadoc = buildGrammar {
     language = "luadoc";
-    version = "0.0.0+rev=5c9572f";
+    version = "0.0.0+rev=1e11522";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-luadoc";
-      rev = "5c9572faf56d1fa0f7e0740c94de1c4f67c6af5e";
-      hash = "sha256-90FXGhzTpPVVBPpAdAvfqdIOVCPKTUtRC0WWQyCR0Eg=";
+      rev = "1e1152264cc68e11d65d9e2493566f5717a13d11";
+      hash = "sha256-CNSo4m5peO1WBncZ1RGmmbA3V8qefh5LJJpFYFTAlsY=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-luadoc";
   };
@@ -1076,12 +1076,12 @@
   };
   matlab = buildGrammar {
     language = "matlab";
-    version = "0.0.0+rev=2d5d3d5";
+    version = "0.0.0+rev=dd95e1f";
     src = fetchFromGitHub {
       owner = "mstanciu552";
       repo = "tree-sitter-matlab";
-      rev = "2d5d3d5193718a86477d4335aba5b34e79147326";
-      hash = "sha256-Rpa/F3MIFRmHunJFsuvbs3h3vDlR3U7UZ+sTN5tJS8U=";
+      rev = "dd95e1fc1b5514aa3a882d5fb8ddbf4683e953f0";
+      hash = "sha256-0CSwSFf4mUtz4lg06Fi24Szo5WpD18M9Fiu8KIg2QB8=";
     };
     meta.homepage = "https://github.com/mstanciu552/tree-sitter-matlab";
   };
@@ -1245,12 +1245,12 @@
   };
   perl = buildGrammar {
     language = "perl";
-    version = "0.0.0+rev=3d3a95e";
+    version = "0.0.0+rev=60aa138";
     src = fetchFromGitHub {
       owner = "ganezdragon";
       repo = "tree-sitter-perl";
-      rev = "3d3a95ee6645d7bcd993e77b252ffd33fd297c8e";
-      hash = "sha256-YM4lxdcvkX2l4KkdktDSoNXaN2zCqAS4W0mXMh8GJOs=";
+      rev = "60aa138f9e1db15becad53070f4d5898b0e8a98c";
+      hash = "sha256-GpgUSm/kFFXgJOSBVBxPQiMfykZUgxLdmQfDfJE3Jq8=";
     };
     meta.homepage = "https://github.com/ganezdragon/tree-sitter-perl";
   };
@@ -1344,12 +1344,12 @@
   };
   prql = buildGrammar {
     language = "prql";
-    version = "0.0.0+rev=4045dcf";
+    version = "0.0.0+rev=02b1e96";
     src = fetchFromGitHub {
       owner = "PRQL";
       repo = "tree-sitter-prql";
-      rev = "4045dcff3f8ac04669855b32584053dec065bba4";
-      hash = "sha256-+uyCgWon/yCRAOTpzpcDovxyXrIZ4UDwwWG4ndMz0iY=";
+      rev = "02b1e967ede00aaa5d7c9fcd4a604b83825a6261";
+      hash = "sha256-3pdfcCfHdusphn7vQX/d1gS5kKyNTE9qf0YBvsa/BjM=";
     };
     meta.homepage = "https://github.com/PRQL/tree-sitter-prql";
   };
@@ -1575,12 +1575,12 @@
   };
   smali = buildGrammar {
     language = "smali";
-    version = "0.0.0+rev=a67a429";
+    version = "0.0.0+rev=b002dce";
     src = fetchFromSourcehut {
       owner = "~yotam";
       repo = "tree-sitter-smali";
-      rev = "a67a429784dafa0ca4342d71e6530137ca803883";
-      hash = "sha256-Pby6RZKPXyPR41E9m2iRsLgVt7bOn2AZyyb4lvcwYwY=";
+      rev = "b002dceb9b91a6d6de45479ab4b2e9596ebbaaf3";
+      hash = "sha256-KZ5+3xqQkxAZcOY8UVxfycQWlaGHq9pv4MzjiIaVtLY=";
     };
     meta.homepage = "https://git.sr.ht/~yotam/tree-sitter-smali";
   };
@@ -1685,12 +1685,12 @@
   };
   swift = buildGrammar {
     language = "swift";
-    version = "0.0.0+rev=ca3a370";
+    version = "0.0.0+rev=05467af";
     src = fetchFromGitHub {
       owner = "alex-pinkus";
       repo = "tree-sitter-swift";
-      rev = "ca3a37055069277ad91d6a2c35faf9f247dcfbfb";
-      hash = "sha256-H/6BBBB+vITl91FwiM6/aiv8OEgGjLt3HihTTsYzTVE=";
+      rev = "05467af73ac315fc80c7f3ef397e261f30395e2a";
+      hash = "sha256-4/5ZzxkMiv8qXCXM/M/+NBX9uMw46DnGTEFKbPgNNzU=";
     };
     generate = true;
     meta.homepage = "https://github.com/alex-pinkus/tree-sitter-swift";
@@ -1708,13 +1708,13 @@
   };
   t32 = buildGrammar {
     language = "t32";
-    version = "0.0.0+rev=f8106fc";
+    version = "0.0.0+rev=0802b36";
     src = fetchFromGitea {
       domain = "codeberg.org";
       owner = "xasc";
       repo = "tree-sitter-t32";
-      rev = "f8106fcf5a27f905b3d9d55d9cd3e910bea70c60";
-      hash = "sha256-hKddSekx67Yqm4+LqVaH8Sf1+73RlCnXE6th2FTHB34=";
+      rev = "0802b3638a1c5022b4d55bdafa64f856ed43d7d6";
+      hash = "sha256-9c5EUgtvoXXZQY5AtahyfmG9SGxcjhrrOxWa0eyicqU=";
     };
     meta.homepage = "https://codeberg.org/xasc/tree-sitter-t32";
   };
@@ -1878,12 +1878,12 @@
   };
   v = buildGrammar {
     language = "v";
-    version = "0.0.0+rev=4cd190d";
+    version = "0.0.0+rev=234c102";
     src = fetchFromGitHub {
       owner = "vlang";
       repo = "vls";
-      rev = "4cd190d1aaced458e8f1548e11b3beae5e4ea806";
-      hash = "sha256-rbIRx/LA5kvq7vI5WdR8be0WCyyTxsWB87ENNO7Qkao=";
+      rev = "234c1028883187c6b48e030780b7332229faefa3";
+      hash = "sha256-4DqMn9rPTxOtQOfy8fy6R7z/+z50XnCLV0J/4QFrRz4=";
     };
     location = "tree_sitter_v";
     meta.homepage = "https://github.com/vlang/vls";
@@ -2011,12 +2011,12 @@
   };
   zig = buildGrammar {
     language = "zig";
-    version = "0.0.0+rev=2c7b630";
+    version = "0.0.0+rev=9b84cb6";
     src = fetchFromGitHub {
       owner = "maxxnino";
       repo = "tree-sitter-zig";
-      rev = "2c7b6308d906d7aec4b3e1fafaaeca447a8a2c2f";
-      hash = "sha256-uN/B4YasWdgAWV8IAwKd4MP/L73+RiQJGQD00ZA8d6E=";
+      rev = "9b84cb66e7d480e7c0370f4e33e8325bac6ad09f";
+      hash = "sha256-IyVYRqSAqCxUK5ADXlTfNK9MhcdvDVwCJ2Y5VF/oYVs=";
     };
     meta.homepage = "https://github.com/maxxnino/tree-sitter-zig";
   };
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix
index bacebe9a74681..67aa374056384 100644
--- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix
@@ -27,6 +27,25 @@ let
       })
     generatedDerivations;
 
+  grammarToPlugin = grammar:
+    let
+      name = lib.pipe grammar [
+        lib.getName
+
+        # added in buildGrammar
+        (lib.removeSuffix "-grammar")
+
+        # grammars from tree-sitter.builtGrammars
+        (lib.removePrefix "tree-sitter-")
+        (lib.replaceStrings [ "-" ] [ "_" ])
+      ];
+    in
+
+    runCommand "nvim-treesitter-grammar-${name}" { } ''
+      mkdir -p $out/parser
+      ln -s ${grammar}/parser $out/parser/${name}.so
+    '';
+
   allGrammars = lib.attrValues generatedDerivations;
 
   # Usage:
@@ -35,26 +54,7 @@ let
   # pkgs.vimPlugins.nvim-treesitter.withAllGrammars
   withPlugins =
     f: self.nvim-treesitter.overrideAttrs (_: {
-      passthru.dependencies = map
-        (grammar:
-          let
-            name = lib.pipe grammar [
-              lib.getName
-
-              # added in buildGrammar
-              (lib.removeSuffix "-grammar")
-
-              # grammars from tree-sitter.builtGrammars
-              (lib.removePrefix "tree-sitter-")
-              (lib.replaceStrings [ "-" ] [ "_" ])
-            ];
-          in
-
-          runCommand "nvim-treesitter-${name}-grammar" { } ''
-            mkdir -p $out/parser
-            ln -s ${grammar}/parser $out/parser/${name}.so
-          ''
-        )
+      passthru.dependencies = map grammarToPlugin
         (f (tree-sitter.builtGrammars // builtGrammars));
     });
 
@@ -67,7 +67,9 @@ in
   '';
 
   passthru = {
-    inherit builtGrammars allGrammars withPlugins withAllGrammars;
+    inherit builtGrammars allGrammars grammarToPlugin withPlugins withAllGrammars;
+
+    grammarPlugins = lib.mapAttrs (_: grammarToPlugin) generatedDerivations;
 
     tests.check-queries =
       let
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index 81baf9f8d7576..e610e7c14ccf1 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -850,18 +850,18 @@ self: super: {
 
   sniprun =
     let
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchFromGitHub {
         owner = "michaelb";
         repo = "sniprun";
         rev = "v${version}";
-        hash = "sha256-6UDjrrEtOuB+lrCZVBO4BcZm78qwq8YbQcXAdjNbicY=";
+        hash = "sha256-grrrqvdqoYTBtlU+HLrSQJsAmMA/+OHbuoVvOwHYPnk=";
       };
       sniprun-bin = rustPlatform.buildRustPackage {
         pname = "sniprun-bin";
         inherit version src;
 
-        cargoSha256 = "sha256-ghXYUgXqXvK9RySG/hQR5zpLsyk6L9Htb/UYgMPyWUk=";
+        cargoSha256 = "sha256-hmZXYJFIeKgYyhT6mSrmX+7M9GQQHHzliYHjsBoHgOc=";
 
         nativeBuildInputs = [ makeWrapper ];
 
@@ -882,11 +882,6 @@ self: super: {
         substituteInPlace lua/sniprun.lua --replace '@sniprun_bin@' ${sniprun-bin}
       '';
 
-      postInstall = ''
-        mkdir $out/doc
-        ln -s $out/docs/sniprun.txt $out/doc/sniprun.txt
-      '';
-
       propagatedBuildInputs = [ sniprun-bin ];
     };
 
diff --git a/pkgs/applications/editors/vim/plugins/update.py b/pkgs/applications/editors/vim/plugins/update.py
index 20336c66ed6ec..09606634f9e53 100755
--- a/pkgs/applications/editors/vim/plugins/update.py
+++ b/pkgs/applications/editors/vim/plugins/update.py
@@ -42,28 +42,14 @@ sys.path.insert(0, os.path.join(ROOT.parent.parent.parent.parent.parent, "mainta
 import pluginupdate
 from pluginupdate import run_nix_expr, PluginDesc
 
-GET_PLUGINS = f"""(with import <localpkgs> {{}};
-let
-  inherit (vimUtils.override {{inherit vim;}}) buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
-  generated = callPackage {ROOT}/generated.nix {{
-    inherit buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
-  }};
-  hasChecksum = value: lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;
-  getChecksum = name: value:
-    if hasChecksum value then {{
-      submodules = value.src.fetchSubmodules or false;
-      sha256 = value.src.outputHash;
-      rev = value.src.rev;
-    }} else null;
-  checksums = lib.mapAttrs getChecksum generated;
-in lib.filterAttrs (n: v: v != null) checksums)"""
+
 
 GET_PLUGINS_LUA = """
 with import <localpkgs> {};
 lib.attrNames lua51Packages"""
 
 HEADER = (
-    "# This file has been generated by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!"
+    "# GENERATED by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!"
 )
 
 def isNeovimPlugin(plug: pluginupdate.Plugin) -> bool:
@@ -118,34 +104,39 @@ class VimEditor(pluginupdate.Editor):
 
 """.format(
         buildFn="buildNeovimPluginFrom2Nix" if isNeovim else "buildVimPluginFrom2Nix", plugin=plugin, src_nix=src_nix, repo=repo)
-        print(content)
+        log.debug(content)
         return content
 
+
+    def update(self, args):
+        pluginupdate.update_plugins(self, args)
+
+        if self.nvim_treesitter_updated:
+            print("updating nvim-treesitter grammars")
+            nvim_treesitter_dir = ROOT.joinpath("nvim-treesitter")
+            subprocess.check_call([nvim_treesitter_dir.joinpath("update.py")])
+
+            if self.nixpkgs_repo:
+                index = self.nixpkgs_repo.index
+                for diff in index.diff(None):
+                    if diff.a_path == "pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix":
+                        msg = "vimPlugins.nvim-treesitter: update grammars"
+                        print(f"committing to nixpkgs: {msg}")
+                        index.add([str(nvim_treesitter_dir.joinpath("generated.nix"))])
+                        index.commit(msg)
+                        return
+                print("no updates to nvim-treesitter grammars")
+
+
 def main():
 
     global luaPlugins
     luaPlugins = run_nix_expr(GET_PLUGINS_LUA)
 
+    with open(f"{ROOT}/get-plugins.nix") as f:
+        GET_PLUGINS = f.read()
     editor = VimEditor("vim", ROOT, GET_PLUGINS)
-    parser = editor.create_parser()
-    args = parser.parse_args()
-    pluginupdate.update_plugins(editor, args)
-
-    if editor.nvim_treesitter_updated:
-        print("updating nvim-treesitter grammars")
-        nvim_treesitter_dir = ROOT.joinpath("nvim-treesitter")
-        subprocess.check_call([nvim_treesitter_dir.joinpath("update.py")])
-
-        if editor.nixpkgs_repo:
-            index = editor.nixpkgs_repo.index
-            for diff in index.diff(None):
-                if diff.a_path == "pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix":
-                    msg = "vimPlugins.nvim-treesitter: update grammars"
-                    print(f"committing to nixpkgs: {msg}")
-                    index.add([str(nvim_treesitter_dir.joinpath("generated.nix"))])
-                    index.commit(msg)
-                    return
-            print("no updates to nvim-treesitter grammars")
+    editor.run()
 
 
 if __name__ == "__main__":
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index d67ba4ac2a808..d1fe57c41ddd1 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -77,6 +77,7 @@ https://github.com/jamespwilliams/bat.vim/,HEAD,
 https://github.com/vim-scripts/bats.vim/,,
 https://github.com/rbgrouleff/bclose.vim/,,
 https://github.com/max397574/better-escape.nvim/,,
+https://github.com/LunarVim/bigfile.nvim/,,
 https://github.com/sblumentritt/bitbake.vim/,,
 https://github.com/APZelos/blamer.nvim/,HEAD,
 https://github.com/blueballs-theme/blueballs-neovim/,,
@@ -237,6 +238,7 @@ https://github.com/Shougo/echodoc.vim/,,
 https://github.com/sainnhe/edge/,,
 https://github.com/editorconfig/editorconfig-vim/,,
 https://github.com/gpanders/editorconfig.nvim/,,
+https://github.com/elixir-tools/elixir-tools.nvim/,HEAD,
 https://github.com/elmcast/elm-vim/,,
 https://github.com/dmix/elvish.vim/,,
 https://github.com/mattn/emmet-vim/,,
@@ -566,6 +568,7 @@ https://github.com/dstein64/nvim-scrollview/,,
 https://github.com/dcampos/nvim-snippy/,HEAD,
 https://github.com/ishan9299/nvim-solarized-lua/,,
 https://github.com/nvim-pack/nvim-spectre/,,
+https://github.com/chrisgrieser/nvim-spider/,HEAD,
 https://github.com/kylechui/nvim-surround/,main,
 https://github.com/svermeulen/nvim-teal-maker/,HEAD,
 https://github.com/norcalli/nvim-terminal.lua/,,
@@ -616,6 +619,7 @@ https://github.com/motus/pig.vim/,,
 https://github.com/aklt/plantuml-syntax/,,
 https://github.com/nvim-treesitter/playground/,,
 https://github.com/nvim-lua/plenary.nvim/,,
+https://github.com/olivercederborg/poimandres.nvim/,HEAD,
 https://github.com/dleonard0/pony-vim-syntax/,,
 https://github.com/RishabhRD/popfix/,,
 https://github.com/nvim-lua/popup.nvim/,,
@@ -676,6 +680,7 @@ https://github.com/camspiers/snap/,,
 https://github.com/norcalli/snippets.nvim/,,
 https://github.com/shaunsingh/solarized.nvim/,HEAD,
 https://github.com/sainnhe/sonokai/,,
+https://github.com/sQVe/sort.nvim/,HEAD,
 https://github.com/chikatoike/sourcemap.vim/,,
 https://github.com/liuchengxu/space-vim/,,
 https://github.com/ctjhoa/spacevim/,,
diff --git a/pkgs/applications/editors/vscode/extensions/contextmapper.context-mapper-vscode-extension/default.nix b/pkgs/applications/editors/vscode/extensions/contextmapper.context-mapper-vscode-extension/default.nix
new file mode 100644
index 0000000000000..077b522b59e28
--- /dev/null
+++ b/pkgs/applications/editors/vscode/extensions/contextmapper.context-mapper-vscode-extension/default.nix
@@ -0,0 +1,36 @@
+{ graphviz
+, jre
+, lib
+, makeWrapper
+, vscode-utils
+}:
+
+vscode-utils.buildVscodeMarketplaceExtension rec {
+  mktplcRef = {
+    name = "context-mapper-vscode-extension";
+    publisher = "contextmapper";
+    version = "6.7.0";
+    sha256 = "sha256-vlDVqn1Je0eo5Nf2gyotSvhIa07tWCINe79RZSyMzcA=";
+  };
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  buildInputs = [
+    graphviz
+  ];
+
+  postInstall = ''
+    wrapProgram $out/share/vscode/extensions/contextmapper.context-mapper-vscode-extension/lsp/bin/context-mapper-lsp \
+      --set JAVA_HOME "${jre}"
+  '';
+
+  meta = {
+    description = "A VSCode extension for Context Mapper";
+    downloadPage = "https://marketplace.visualstudio.com/items?itemName=${mktplcRef.publisher}.${mktplcRef.name}";
+    homepage = "https://github.com/ContextMapper/vscode-extension";
+    license = lib.licenses.asl20;
+    maintainers = [ lib.maintainers.rhoriguchi ];
+  };
+}
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index 70f1de32f95f3..8aa1b09ae6e22 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -669,6 +669,8 @@ let
         };
       };
 
+      contextmapper.context-mapper-vscode-extension = callPackage ./contextmapper.context-mapper-vscode-extension { };
+
       coolbear.systemd-unit-file = buildVscodeMarketplaceExtension {
         mktplcRef = {
           publisher = "coolbear";
@@ -1077,8 +1079,8 @@ let
         mktplcRef = {
           name = "prettier-vscode";
           publisher = "esbenp";
-          version = "9.10.4";
-          sha256 = "sha256-khtyB0Qbm+iuM1GsAaF32YRv1VBTIy7daeCKdgwCIC8=";
+          version = "9.12.0";
+          sha256 = "sha256-b7EaYYJNZQBqhyKJ04tytmD9DDRcvA68HTo5JHTr9Fo=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/esbenp.prettier-vscode/changelog";
@@ -1657,8 +1659,8 @@ let
         mktplcRef = {
           name = "magit";
           publisher = "kahole";
-          version = "0.6.39";
-          sha256 = "sha256-B9+McdoC7FkfD4yGDIRUtoF0c7cCUfAeIK1r0/zLVVI=";
+          version = "0.6.40";
+          sha256 = "sha256-AwkjfKBlAl6hTRN1nE6UuUuDXMJUXXDK2+3YzUp9drc=";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1942,8 +1944,8 @@ let
         mktplcRef = {
           name = "direnv";
           publisher = "mkhl";
-          version = "0.10.1";
-          sha256 = "0m89sx1qqdkwa9pfmd9b11lp8z0dqpi6jn27js5q4ymscyg41bqd";
+          version = "0.12.0";
+          sha256 = "sha256-UMGTWAiPAxSjy5ALUkijD0GE9TW37TZ3UvMmgFBNYsU=";
         };
         meta = {
           description = "direnv support for Visual Studio Code";
@@ -2714,8 +2716,8 @@ let
         mktplcRef = {
           name = "code-spell-checker";
           publisher = "streetsidesoftware";
-          version = "2.20.3";
-          sha256 = "sha256-28ybNBobXoq194d9VGD9kOq/OWscJkSlgSZ7ViaNQtw=";
+          version = "2.20.4";
+          sha256 = "sha256-GOXKXZPEynyqRUUY0pdNwt+141kJleg74IbCP4/34R8=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";
@@ -3286,6 +3288,9 @@ let
     };
 
   aliases = super: {
+    _1Password = super."1Password";
+    _2gua = super."2gua";
+    _4ops = super."4ops";
     Arjun.swagger-viewer = super.arjun.swagger-viewer;
     jakebecker.elixir-ls = super.elixir-lsp.vscode-elixir-ls;
     jpoissonnier.vscode-styled-components = super.styled-components.vscode-styled-components;
@@ -3294,9 +3299,6 @@ let
     ms-vscode.PowerShell = super.ms-vscode.powershell;
     rioj7.commandOnAllFiles = super.rioj7.commandonallfiles;
     WakaTime.vscode-wakatime = super.wakatime.vscode-wakatime;
-    _1Password = throw ''_1Password has been replaced with "1Password"'';
-    _2gua = throw ''_2gua has been replaced with "2gua"'';
-    _4ops = throw ''_4ops has been replaced with "4ops"'';
   };
 
   # TODO: add overrides overlay, so that we can have a generated.nix
diff --git a/pkgs/applications/editors/vscode/extensions/rust-lang.rust-analyzer/default.nix b/pkgs/applications/editors/vscode/extensions/rust-lang.rust-analyzer/default.nix
index d0d1b990f449d..dadb291aa5340 100644
--- a/pkgs/applications/editors/vscode/extensions/rust-lang.rust-analyzer/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/rust-lang.rust-analyzer/default.nix
@@ -29,7 +29,7 @@ let
     sha256 = "sha256-Njlus+vY3N++qWE0JXrGjwcXY2QDFuOV/7NruBBMETY=";
   };
 
-  build-deps = nodePackages."rust-analyzer-build-deps-../../applications/editors/vscode/extensions/rust-analyzer/build-deps";
+  build-deps = nodePackages."rust-analyzer-build-deps-../../applications/editors/vscode/extensions/rust-lang.rust-analyzer/build-deps";
   # FIXME: Making a new derivation to link `node_modules` and run `npm run package`
   # will cause a build failure.
   vsix = build-deps.override {
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index c2036566b3844..bd9b7b4681017 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, makeDesktopItem
 , unzip, libsecret, libXScrnSaver, libxshmfence, buildPackages
 , atomEnv, at-spi2-atk, autoPatchelfHook
-, systemd, fontconfig, libdbusmenu, glib, buildFHSUserEnvBubblewrap, wayland
+, systemd, fontconfig, libdbusmenu, glib, buildFHSEnv, wayland
 
 # Populate passthru.tests
 , tests
@@ -150,9 +150,9 @@ let
   # in order to create or update extensions.
   # See: #83288 #91179 #73810 #41189
   #
-  # buildFHSUserEnv allows for users to use the existing vscode
+  # buildFHSEnv allows for users to use the existing vscode
   # extension tooling without significant pain.
-  fhs = { additionalPkgs ? pkgs: [] }: buildFHSUserEnvBubblewrap {
+  fhs = { additionalPkgs ? pkgs: [] }: buildFHSEnv {
     # also determines the name of the wrapped command
     name = executableName;
 
diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix
index 5d479cba90374..6e9cefae79e9b 100644
--- a/pkgs/applications/editors/vscode/vscodium.nix
+++ b/pkgs/applications/editors/vscode/vscodium.nix
@@ -15,11 +15,11 @@ let
   archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0i73nkcja70k64ndwsajy69pb1x2cy71n6i42cmk5qh5mw56brxp";
-    x86_64-darwin = "08vx79aq4s6xsmvg6dv3klbg2yq1k1l6m3nq90kpng7j8anjh954";
-    aarch64-linux = "1bcn40j83pmssdzw0990fsm3hp8fbx9xblyc6zmf53f0yz41528p";
-    aarch64-darwin = "0w3gyrp01qflk6gcqzy54nd7wgmrlpsdpin0gfyk4fg46fss9b78";
-    armv7l-linux = "1bm26cgx2038alzxpcib8r4hd40zbr27kaixrrzamsn6wslg9p1f";
+    x86_64-linux = "049vn3gwwl0sxf8hvd8raaamy9f0x2z9p3sz8xzafa1h129iiybr";
+    x86_64-darwin = "1gbpbi3b0ag6v9znm02amvp35j05kpxs2mfsdq6dwmvg3hxmff2f";
+    aarch64-linux = "14pvsrpl7rsjvni7n2ch7wmvgpj9n8mwla7s7mlmi7wv46ykpk2a";
+    aarch64-darwin = "1x5bw928yp4fb57bc3qff46w7020zlyp1mfpm7vakjfaqnfwzzzn";
+    armv7l-linux = "0xliai5c3dd6qbgb9agvmn18n230zh4qxx3jjmaqn2851d6sx5xz";
   }.${system} or throwSystem;
 
   sourceRoot = if stdenv.isDarwin then "" else ".";
@@ -29,7 +29,7 @@ in
 
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.77.1.23095";
+    version = "1.77.3.23102";
     pname = "vscodium";
 
     executableName = "codium";
diff --git a/pkgs/applications/emulators/cemu/default.nix b/pkgs/applications/emulators/cemu/default.nix
index 45257fbf75450..3d034f7c7362d 100644
--- a/pkgs/applications/emulators/cemu/default.nix
+++ b/pkgs/applications/emulators/cemu/default.nix
@@ -31,13 +31,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cemu";
-  version = "2.0-28";
+  version = "2.0-32";
 
   src = fetchFromGitHub {
     owner = "cemu-project";
     repo = "Cemu";
     rev = "v${version}";
-    hash = "sha256-qKrj3XPtFVy0/KH18D0oCeVUQQmIdkYJYrCKD82c/+s=";
+    hash = "sha256-47uCGN1wFVx3ph/q3+BG+pwJ7nisbmRPUEatOIq0i9M=";
   };
 
   patches = [
diff --git a/pkgs/applications/emulators/dolphin-emu/default.nix b/pkgs/applications/emulators/dolphin-emu/default.nix
index 13eec39fefbee..825340beee377 100644
--- a/pkgs/applications/emulators/dolphin-emu/default.nix
+++ b/pkgs/applications/emulators/dolphin-emu/default.nix
@@ -46,6 +46,7 @@
   # Darwin-only dependencies
 , CoreBluetooth
 , ForceFeedback
+, IOBluetooth
 , IOKit
 , moltenvk
 , OpenGL
@@ -106,6 +107,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals stdenv.isDarwin [
     CoreBluetooth
     ForceFeedback
+    IOBluetooth
     IOKit
     moltenvk
     OpenGL
diff --git a/pkgs/applications/emulators/dosbox-staging/default.nix b/pkgs/applications/emulators/dosbox-staging/default.nix
index 62331bd621915..fca2cf4210442 100644
--- a/pkgs/applications/emulators/dosbox-staging/default.nix
+++ b/pkgs/applications/emulators/dosbox-staging/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , SDL2
 , SDL2_image
 , SDL2_net
@@ -28,17 +29,36 @@
 , speexdsp
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "dosbox-staging";
   version = "0.80.1";
 
   src = fetchFromGitHub {
     owner = "dosbox-staging";
     repo = "dosbox-staging";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-I90poBeLSq1c8PXyjrx7/UcbfqFNnnNiXfJdWhLPGMc=";
   };
 
+  patches = [
+    # Pull missind SDL2_net dependency:
+    #   https://github.com/dosbox-staging/dosbox-staging/pull/2358
+    (fetchpatch {
+      name = "sdl2-net.patch";
+      url = "https://github.com/dosbox-staging/dosbox-staging/commit/1b02f187a39263f4b0285323dcfe184bccd749c2.patch";
+      hash = "sha256-Ev97xApInu6r5wvI9Q7FhkSXqtMW/rwJj48fExvqnT0=";
+    })
+
+    # Pull missing SDL2_image dependency:
+    #   https://github.com/dosbox-staging/dosbox-staging/pull/2239
+    (fetchpatch {
+      name = "sdl2-image.patch";
+      url = "https://github.com/dosbox-staging/dosbox-staging/commit/ca8b7a906d29a3f8ce956c4af7dc829a6ac3e229.patch";
+      hash = "sha256-WtTVSWWSlfXrdPVsnlDe4P5K/Fnj4QsOzx3Wo/Kusmg=";
+      includes = [ "src/gui/meson.build" ];
+    })
+  ];
+
   nativeBuildInputs = [
     copyDesktopItems
     gtest
@@ -69,11 +89,6 @@ stdenv.mkDerivation (self: {
     speexdsp
   ];
 
-  env.NIX_CFLAGS_COMPILE = toString [
-    "-I${SDL2_image}/include/SDL2"
-    "-I${SDL2_net}/include/SDL2"
-  ];
-
   desktopItems = [
     (makeDesktopItem {
       name = "dosbox-staging";
diff --git a/pkgs/applications/emulators/duckstation/default.nix b/pkgs/applications/emulators/duckstation/default.nix
index 0f48dd71e6c45..ed2d50138bf4e 100644
--- a/pkgs/applications/emulators/duckstation/default.nix
+++ b/pkgs/applications/emulators/duckstation/default.nix
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation {
   pname = "duckstation";
-  version = "unstable-2023-01-01";
+  version = "unstable-2023-04-14";
 
   src = fetchFromGitHub {
     owner = "stenzek";
     repo = "duckstation";
-    rev = "06d6447e59f208f21ba42f4df1665b789db13fb7";
-    sha256 = "sha256-DyuQ7J7MVSQHpvPZhMtwqNM8ifjI8UFYQ9SxY5kikBI=";
+    rev = "5fee6f5abee7f3aad65da5523e57896e10e2a53a";
+    sha256 = "sha256-sRs/b4GVXhF3zrOef8DSBKJJGYECUER/nNWZAqv7suA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/emulators/ppsspp/default.nix b/pkgs/applications/emulators/ppsspp/default.nix
index 29b64ebb6bd83..afa361903f519 100644
--- a/pkgs/applications/emulators/ppsspp/default.nix
+++ b/pkgs/applications/emulators/ppsspp/default.nix
@@ -29,7 +29,7 @@ let
 in
 # Only SDL frontend needs to specify whether to use Wayland
 assert forceWayland -> !enableQt;
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "ppsspp"
           + lib.optionalString enableQt "-qt"
           + lib.optionalString (!enableQt) "-sdl"
@@ -39,13 +39,13 @@ stdenv.mkDerivation (self: {
   src = fetchFromGitHub {
     owner = "hrydgard";
     repo = "ppsspp";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     fetchSubmodules = true;
     sha256 = "sha256-7xzhN8JIQD4LZg8sQ8rLNYZrW0nCNBfZFgzoKdoWbKc=";
   };
 
   postPatch = ''
-    substituteInPlace git-version.cmake --replace unknown ${self.src.rev}
+    substituteInPlace git-version.cmake --replace unknown ${finalAttrs.src.rev}
     substituteInPlace UI/NativeApp.cpp --replace /usr/share $out/share
   '';
 
diff --git a/pkgs/applications/emulators/rpcemu/default.nix b/pkgs/applications/emulators/rpcemu/default.nix
index 9befb172fe4bc..9fad3725203f4 100644
--- a/pkgs/applications/emulators/rpcemu/default.nix
+++ b/pkgs/applications/emulators/rpcemu/default.nix
@@ -7,13 +7,13 @@
 let
   inherit (qt5) qtbase qtmultimedia wrapQtAppsHook;
 in
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "rpcemu";
   version = "0.9.4";
 
   src = fetchhg {
     url = "http://www.home.marutan.net/hg/rpcemu";
-    rev = "release_${self.version}";
+    rev = "release_${finalAttrs.version}";
     sha256 = "sha256-UyjfTfUpSvJNFPkQWPKppxp/kO0hVGo5cE9RuCU8GJI=";
   };
 
diff --git a/pkgs/applications/emulators/xemu/default.nix b/pkgs/applications/emulators/xemu/default.nix
index 099fc5acca221..50f2b57f887a3 100644
--- a/pkgs/applications/emulators/xemu/default.nix
+++ b/pkgs/applications/emulators/xemu/default.nix
@@ -25,14 +25,14 @@
 , wrapGAppsHook
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "xemu";
   version = "0.7.85";
 
   src = fetchFromGitHub {
     owner = "xemu-project";
     repo = "xemu";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-sVUkB2KegdKlHlqMvSwB1nLdJGun2x2x9HxtNHnpp1s=";
     fetchSubmodules = true;
   };
@@ -94,7 +94,7 @@ stdenv.mkDerivation (self: {
     # to run `XEMU_COMMIT=$(cat XEMU_COMMIT)` (and similar)
     branch = "master";
     commit = "d8fa50e524c22f85ecb2e43108fd6a5501744351";
-    inherit (self) version;
+    inherit (finalAttrs) version;
   in ''
     patchShebangs .
     configureFlagsArray+=("--extra-cflags=-DXBOX=1 -Wno-error=redundant-decls")
@@ -133,7 +133,7 @@ stdenv.mkDerivation (self: {
       Xbox game console, enabling people to play their original Xbox games on
       Windows, macOS, and Linux systems.
     '';
-    changelog = "https://github.com/xemu-project/xemu/releases/tag/v${self.version}";
+    changelog = "https://github.com/xemu-project/xemu/releases/tag/v${finalAttrs.version}";
     license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ AndersonTorres genericnerdyusername ];
     platforms = with lib.platforms; linux;
diff --git a/pkgs/applications/emulators/yapesdl/default.nix b/pkgs/applications/emulators/yapesdl/default.nix
index 2ea3583edd76e..136e6ce4eb896 100644
--- a/pkgs/applications/emulators/yapesdl/default.nix
+++ b/pkgs/applications/emulators/yapesdl/default.nix
@@ -5,14 +5,14 @@
 , SDL2
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "yapesdl";
   version = "0.71.2";
 
   src = fetchFromGitHub {
     owner = "calmopyrin";
     repo = "yapesdl";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-QGF3aS/YSzdGxHONKyA/iTewEVYsjBAsKARVMXkFV2k=";
   };
 
diff --git a/pkgs/applications/file-managers/nnn/default.nix b/pkgs/applications/file-managers/nnn/default.nix
index befbffb46e74c..27fbcfa4f0b7a 100644
--- a/pkgs/applications/file-managers/nnn/default.nix
+++ b/pkgs/applications/file-managers/nnn/default.nix
@@ -21,13 +21,13 @@ assert withNerdIcons -> withIcons == false;
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "nnn";
-  version = "4.7";
+  version = "4.8";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "nnn";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-ttG0aEqMlNyJaMhcVfrxbxlrhr1GSydrV58CYSq4CTM=";
+    hash = "sha256-QbKW2wjhUNej3zoX18LdeUHqjNLYhEKyvPH2MXzp/iQ=";
   };
 
   configFile = lib.optionalString (conf != null) (builtins.toFile "nnn.h" conf);
diff --git a/pkgs/applications/file-managers/worker/default.nix b/pkgs/applications/file-managers/worker/default.nix
index 8357076b31014..3848487cbdc8c 100644
--- a/pkgs/applications/file-managers/worker/default.nix
+++ b/pkgs/applications/file-managers/worker/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "worker";
-  version = "4.11.0";
+  version = "4.12.1";
 
   src = fetchurl {
     url = "http://www.boomerangsworld.de/cms/worker/downloads/${pname}-${version}.tar.gz";
-    sha256 = "sha256-lpR9eHiKOkQ6/rHTJLFUDrMHdSx4rZgppc36CyZlSXg=";
+    sha256 = "sha256-11tSOVuGuCU0IvqpEKiKvUZj9DtjWJErLpM8IsTtvcs=";
   };
 
   buildInputs = [ libX11 ];
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index d535625c717a7..734cdccbf45ae 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -31,11 +31,11 @@
 
 mkDerivation rec {
   pname = "saga";
-  version = "8.5.1";
+  version = "9.0.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/saga-gis/SAGA%20-%20${lib.versions.major version}/SAGA%20-%20${version}/saga-${version}.tar.gz";
-    sha256 = "sha256-JnZ0m0GAgfz3BbiKxqLoMoa4pX//r5t+mbhMCdAo9OE=";
+    sha256 = "sha256-Yi0zYV6RnUy9mx7/jVBXa0POyTqisPqFEFH+BATn2YY=";
   };
 
   sourceRoot = "saga-${version}/saga-gis";
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index 5df20c5cb9be0..9dabd03ccd525 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -47,13 +47,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "imagemagick";
-  version = "7.1.1-6";
+  version = "7.1.1-7";
 
   src = fetchFromGitHub {
     owner = "ImageMagick";
     repo = "ImageMagick";
     rev = finalAttrs.version;
-    hash = "sha256-D1ZKTL3c+engyvBwCdjYqeoHx2v/6gwmK8UfaAxjnWI=";
+    hash = "sha256-PeXWtD8AX9VEJruZu/TO1Bpaoa1XNKIFGfGK+TpQEMs=";
   };
 
   outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
diff --git a/pkgs/applications/graphics/artem/default.nix b/pkgs/applications/graphics/artem/default.nix
index 5747c88b24bbf..f03489ef4eb88 100644
--- a/pkgs/applications/graphics/artem/default.nix
+++ b/pkgs/applications/graphics/artem/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "artem";
-  version = "1.1.5";
+  version = "1.1.7";
 
   src = fetchFromGitHub {
     owner = "finefindus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1jax39gizlcbqnkjckxwm5h0wdk5dk8dasaj9wxv7yidbcbgj4zh";
+    sha256 = "sha256-wd8csdt7qOWFhUBRjqfJSEGnNDyHD7lJA8CtW+q4Kxg=";
   };
 
-  cargoSha256 = "sha256-n2NOWrgcMVHpNCHL7r8+Kl1e01XYadaNM7UdE8fQo1U=";
+  cargoSha256 = "sha256-zFXQUQVPqTur7m+aL0JhSiZI+EEFo9nCTVu1yAOgp/I=";
 
   nativeBuildInputs = [ installShellFiles pkg-config ];
 
diff --git a/pkgs/applications/graphics/brlcad/default.nix b/pkgs/applications/graphics/brlcad/default.nix
index 7e0787c4ff1f5..2a0853fb2212a 100644
--- a/pkgs/applications/graphics/brlcad/default.nix
+++ b/pkgs/applications/graphics/brlcad/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "brlcad";
-  version = "7.34.0";
+  version = "7.34.2";
 
   src = fetchFromGitHub {
     owner = "BRL-CAD";
     repo = pname;
     rev = "refs/tags/rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
-    hash = "sha256-Re5gEXlqdPxniaEP13Q0v0O9rt40V5NrxoUpcNBwn7s=";
+    hash = "sha256-oafu255xElEIk8p4yvNyR2maykUfxQui/L5MkicA+JA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/emblem/Cargo.lock b/pkgs/applications/graphics/emblem/Cargo.lock
index b6150241c2a66..a4b83feabca96 100644
--- a/pkgs/applications/graphics/emblem/Cargo.lock
+++ b/pkgs/applications/graphics/emblem/Cargo.lock
@@ -21,10 +21,50 @@ dependencies = [
 ]
 
 [[package]]
+name = "anstream"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-wincon",
+ "concolor-override",
+ "concolor-query",
+ "is-terminal",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa"
+dependencies = [
+ "anstyle",
+ "windows-sys",
+]
+
+[[package]]
 name = "anyhow"
-version = "1.0.66"
+version = "1.0.70"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6"
+checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4"
 
 [[package]]
 name = "approx"
@@ -66,15 +106,15 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
 name = "bumpalo"
-version = "3.11.1"
+version = "3.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba"
+checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
 
 [[package]]
 name = "bytemuck"
-version = "1.12.3"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aaa3a8d9a1ca92e282c96a32d6511b695d7d994d1d102ba85d279f9b2756947f"
+checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea"
 
 [[package]]
 name = "byteorder"
@@ -84,9 +124,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
 
 [[package]]
 name = "cairo-rs"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "247e1183fa769ac22121f92276dae52f89acaf297f24b1320019f439b6e3b46f"
+checksum = "a8af54f5d48af1226928adc1f57edd22f5df1349e7da1fc96ae15cf43db0e871"
 dependencies = [
  "bitflags",
  "cairo-sys-rs",
@@ -98,9 +138,9 @@ dependencies = [
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48f4af05fabdcfa9658178e1326efa061853f040ce7d72e33af6885196f421"
+checksum = "f55382a01d30e5e53f185eee269124f5e21ab526595b872751278dfbb463594e"
 dependencies = [
  "glib-sys",
  "libc",
@@ -115,15 +155,15 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
 [[package]]
 name = "cc"
-version = "1.0.77"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"
+checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
 
 [[package]]
 name = "cfg-expr"
-version = "0.11.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa"
+checksum = "a35b255461940a32985c627ce82900867c61db1659764d3675ea81963f72a4c6"
 dependencies = [
  "smallvec",
 ]
@@ -136,64 +176,67 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
 dependencies = [
  "iana-time-zone",
- "js-sys",
  "num-integer",
  "num-traits",
- "time",
- "wasm-bindgen",
  "winapi",
 ]
 
 [[package]]
 name = "clap"
-version = "4.0.29"
+version = "4.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d63b9e9c07271b9957ad22c173bae2a4d9a81127680962039296abcd2f8251d"
+checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3"
 dependencies = [
- "bitflags",
+ "clap_builder",
  "clap_derive",
+ "once_cell",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "bitflags",
  "clap_lex",
- "is-terminal",
  "once_cell",
  "strsim",
- "termcolor",
 ]
 
 [[package]]
 name = "clap_complete"
-version = "4.0.6"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7b3c9eae0de7bf8e3f904a5e40612b21fb2e2e566456d177809a48b892d24da"
+checksum = "01c22dcfb410883764b29953103d9ef7bb8fe21b3fa1158bc99986c2067294bd"
 dependencies = [
  "clap",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.0.21"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0177313f9f02afc995627906bbd8967e2be069f5261954222dac78290c2b9014"
+checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4"
 dependencies = [
  "heck",
- "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.3.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8"
-dependencies = [
- "os_str_bytes",
-]
+checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1"
 
 [[package]]
 name = "codespan-reporting"
@@ -206,6 +249,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "concolor-override"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f"
+
+[[package]]
+name = "concolor-query"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf"
+dependencies = [
+ "windows-sys",
+]
+
+[[package]]
 name = "convert_case"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -213,15 +271,15 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"
+checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c"
 dependencies = [
  "cfg-if",
  "crossbeam-utils",
@@ -229,9 +287,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.2"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc"
+checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
 dependencies = [
  "cfg-if",
  "crossbeam-epoch",
@@ -240,41 +298,41 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.13"
+version = "0.9.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a"
+checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695"
 dependencies = [
  "autocfg",
  "cfg-if",
  "crossbeam-utils",
- "memoffset 0.7.1",
+ "memoffset",
  "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.14"
+version = "0.8.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
+checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
 name = "cssparser"
-version = "0.28.1"
+version = "0.29.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1db8599a9761b371751fbf13e076fa03c6e1a78f8c5288e6ab9467f10a2322c1"
+checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa"
 dependencies = [
  "cssparser-macros",
  "dtoa-short",
  "itoa",
  "matches",
- "phf 0.8.0",
+ "phf 0.10.1",
  "proc-macro2",
  "quote",
  "smallvec",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -284,14 +342,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e"
 dependencies = [
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "cxx"
-version = "1.0.83"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdf07d07d6531bfcdbe9b8b739b104610c6508dcc4d63b410585faf338241daf"
+checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
 dependencies = [
  "cc",
  "cxxbridge-flags",
@@ -301,9 +359,9 @@ dependencies = [
 
 [[package]]
 name = "cxx-build"
-version = "1.0.83"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2eb5b96ecdc99f72657332953d4d9c50135af1bac34277801cc3937906ebd39"
+checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
 dependencies = [
  "cc",
  "codespan-reporting",
@@ -311,24 +369,24 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.83"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac040a39517fd1674e0f32177648334b0f4074625b5588a64519804ba0553b12"
+checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.83"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1362b0ddcfc4eb0a1f57b68bd77dd99f0e826958a96abd0ae9bd092e114ffed6"
+checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -346,8 +404,8 @@ dependencies = [
  "convert_case",
  "proc-macro2",
  "quote",
- "rustc_version 0.4.0",
- "syn",
+ "rustc_version",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -367,16 +425,16 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.0"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
+checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
 
 [[package]]
 name = "emblem"
-version = "1.1.0"
+version = "1.2.0"
 dependencies = [
  "anyhow",
- "futures",
+ "futures-channel",
  "gettext-rs",
  "gtk4",
  "libadwaita",
@@ -385,73 +443,19 @@ dependencies = [
  "once_cell",
  "pretty_env_logger",
  "regex",
+ "xml-rs",
 ]
 
 [[package]]
-name = "encoding"
-version = "0.2.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"
-dependencies = [
- "encoding-index-japanese",
- "encoding-index-korean",
- "encoding-index-simpchinese",
- "encoding-index-singlebyte",
- "encoding-index-tradchinese",
-]
-
-[[package]]
-name = "encoding-index-japanese"
-version = "1.20141219.5"
+name = "encoding_rs"
+version = "0.8.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91"
+checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
 dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-korean"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-simpchinese"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-singlebyte"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a"
-dependencies = [
- "encoding_index_tests",
-]
-
-[[package]]
-name = "encoding-index-tradchinese"
-version = "1.20141219.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18"
-dependencies = [
- "encoding_index_tests",
+ "cfg-if",
 ]
 
 [[package]]
-name = "encoding_index_tests"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
-
-[[package]]
 name = "env_logger"
 version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -466,13 +470,13 @@ dependencies = [
 
 [[package]]
 name = "errno"
-version = "0.2.8"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0"
 dependencies = [
  "errno-dragonfly",
  "libc",
- "winapi",
+ "windows-sys",
 ]
 
 [[package]]
@@ -487,12 +491,12 @@ dependencies = [
 
 [[package]]
 name = "field-offset"
-version = "0.3.4"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
+checksum = "a3cf3a800ff6e860c863ca6d4b16fd999db8b752819c1606884047b73e468535"
 dependencies = [
- "memoffset 0.6.5",
- "rustc_version 0.3.3",
+ "memoffset",
+ "rustc_version",
 ]
 
 [[package]]
@@ -524,41 +528,25 @@ dependencies = [
 ]
 
 [[package]]
-name = "futures"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
 name = "futures-channel"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
- "futures-sink",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -567,46 +555,36 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.13",
 ]
 
 [[package]]
-name = "futures-sink"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
-
-[[package]]
 name = "futures-task"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-util"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
- "futures-channel",
  "futures-core",
- "futures-io",
  "futures-macro",
- "futures-sink",
  "futures-task",
- "memchr",
  "pin-project-lite",
  "pin-utils",
  "slab",
@@ -623,22 +601,23 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.16.4"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3094f2b8578136d1929cade4e0fff82f573521b579e96cfc24af2458431f176"
+checksum = "b023fbe0c6b407bd3d9805d107d9800da3829dc5a676653210f1d5f16d7f59bf"
 dependencies = [
  "bitflags",
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3092cf797a5f1210479ea38070d9ae8a5b8e9f8f1be9f32f4643c529c7d70016"
+checksum = "7b41bd2b44ed49d99277d3925652a163038bd5ed943ec9809338ffb2f4391e3b"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -649,9 +628,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "272db1bbb9b152ea1fea946f9d464085c86cfe14cafba450d7defa433caff8ec"
+checksum = "c3abf96408a26e3eddf881a7f893a1e111767137136e347745e8ea6ed12731ff"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -665,9 +644,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45b571f36b889ab529b2e173248dafe83d75c703f5685b9845e490c7994ae309"
+checksum = "1bc92aa1608c089c49393d014c38ac0390d01e4841e1fedaa75dbcef77aaed64"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -724,9 +703,9 @@ dependencies = [
 
 [[package]]
 name = "gio"
-version = "0.16.6"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8fac6c15256cdf84beb9a4948f786f9605799ad69675ea1b8932753f3aa94cf"
+checksum = "2261a3b4e922ec676d1c27ac466218c38cf5dcb49a759129e54bb5046e442125"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -744,9 +723,9 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9b693b8e39d042a95547fc258a7b07349b1f0b48f4b2fa3108ba3c51c0b5229"
+checksum = "6b1d43b0d7968b48455244ecafe41192871257f5740aa6b095eb19db78e362a5"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -757,9 +736,9 @@ dependencies = [
 
 [[package]]
 name = "glib"
-version = "0.16.6"
+version = "0.17.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89359c8c338310b46300502814fc5a0350bb731ddfea03d0ec725d32163244b7"
+checksum = "cfb53061756195d76969292c2d2e329e01259276524a9bae6c9b73af62854773"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -772,6 +751,7 @@ dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
+ "memchr",
  "once_cell",
  "smallvec",
  "thiserror",
@@ -779,9 +759,9 @@ dependencies = [
 
 [[package]]
 name = "glib-macros"
-version = "0.16.3"
+version = "0.17.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e084807350b01348b6d9dbabb724d1a0bb987f47a2c85de200e98e12e30733bf"
+checksum = "32e73a9790e243f6d55d8e302426419f6084a1de7a84cd07f7268300408a19de"
 dependencies = [
  "anyhow",
  "heck",
@@ -789,14 +769,14 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61a4f46316d06bfa33a7ac22df6f0524c8be58e3db2d9ca99ccb1f357b62a65"
+checksum = "49f00ad0a1bf548e61adfff15d83430941d9e1bb620e334f779edd1c745680a5"
 dependencies = [
  "libc",
  "system-deps",
@@ -804,9 +784,9 @@ dependencies = [
 
 [[package]]
 name = "gobject-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3520bb9c07ae2a12c7f2fbb24d4efc11231c8146a86956413fb1a79bb760a0f1"
+checksum = "15e75b0000a64632b2d8ca3cf856af9308e3a970844f6e9659bd197f026793d0"
 dependencies = [
  "glib-sys",
  "libc",
@@ -815,9 +795,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.16.3"
+version = "0.17.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ecb4d347e6d09820df3bdfd89a74a8eec07753a06bb92a3aac3ad31d04447b"
+checksum = "21cf11565bb0e4dfc2f99d4775b6c329f0d40a2cff9c0066214d31a0e1b46256"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -826,9 +806,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9aa82337d3972b4eafdea71e607c23f47be6f27f749aab613f1ad8ddbe6dcd6"
+checksum = "cf80a4849a8d9565410a8fec6fc3678e9c617f4ac7be182ca55ab75016e07af9"
 dependencies = [
  "glib-sys",
  "libc",
@@ -838,9 +818,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4053293b79099bdfecd9ab0d811d118a0eafce613dfe0b26075419d955f1f652"
+checksum = "6f01ef44fa7cac15e2da9978529383e6bee03e570ba5bf7036b4c10a15cc3a3c"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -854,9 +834,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08e0642edffdb35028d7d67b830678da98844216b6442e11eee52c91ad2a6dc2"
+checksum = "c07a84fb4dcf1323d29435aa85e2f5f58bef564342bef06775ec7bd0da1f01b0"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -870,9 +850,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.5.4"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8954da3659ff1cb35aa95110021b33fadcd8e306e8fe41f32146ffa009665a79"
+checksum = "1e30e124b5a605f6f5513db13958bfcd51d746607b20bc7bb718b33e303274ed"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -893,23 +873,23 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.5.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58138cd3c595e04f82df050390aa7d2bd093795ce569e5f1d49eb496ef67fe7b"
+checksum = "f041a797fb098bfb06e432c61738133604bfa3af57f13f1da3b9d46271422ef0"
 dependencies = [
  "anyhow",
  "proc-macro-crate",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "gtk4-sys"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef29e09e055b2f2550eb1882caa6961a1ae3c971a70bcb25cb9d5ab6cbd63821"
+checksum = "5f8283f707b07e019e76c7f2934bdd4180c277e08aa93f4c0d8dd07b7a34e22f"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -925,10 +905,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "hashbrown"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
+[[package]]
 name = "heck"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
@@ -949,6 +935,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
 name = "humantime"
 version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -959,16 +951,16 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "winapi",
+ "windows",
 ]
 
 [[package]]
@@ -992,22 +984,33 @@ dependencies = [
 ]
 
 [[package]]
+name = "indexmap"
+version = "1.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
+dependencies = [
+ "autocfg",
+ "hashbrown",
+]
+
+[[package]]
 name = "io-lifetimes"
-version = "1.0.3"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46112a93252b123d31a119a8d1a1ac19deac4fac6e0e8b0df58f0d4e5870e63c"
+checksum = "09270fd4fa1111bc614ed2246c7ef56239a3063d5be0d1ec3b589c505d400aeb"
 dependencies = [
+ "hermit-abi 0.3.1",
  "libc",
  "windows-sys",
 ]
 
 [[package]]
 name = "is-terminal"
-version = "0.4.1"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927609f78c2913a6f6ac3c27a4fe87f43e2a35367c0c4b0f8265e8f49a104330"
+checksum = "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8"
 dependencies = [
- "hermit-abi 0.2.6",
+ "hermit-abi 0.3.1",
  "io-lifetimes",
  "rustix",
  "windows-sys",
@@ -1024,15 +1027,15 @@ dependencies = [
 
 [[package]]
 name = "itoa"
-version = "0.4.8"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
 
 [[package]]
 name = "js-sys"
-version = "0.3.60"
+version = "0.3.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
+checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -1051,9 +1054,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libadwaita"
-version = "0.2.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dfa0722d4f1724f661cbf668c273c5926296ca411ed3814e206f8fd082b6c48"
+checksum = "b1c4efd2020a4fcedbad2c4a97de97bf6045e5dc49d61d5a5d0cfd753db60700"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -1070,9 +1073,9 @@ dependencies = [
 
 [[package]]
 name = "libadwaita-sys"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de902982372b454a0081d7fd9dd567b37b73ae29c8f6da1820374d345fd95d5b"
+checksum = "0727b85b4fe2b1bed5ac90df6343de15cbf8118bfb96d7c3cc1512681a4b34ac"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -1086,15 +1089,16 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.138"
+version = "0.2.140"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8"
+checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
 
 [[package]]
 name = "librsvg"
-version = "2.55.90"
-source = "git+https://gitlab.gnome.org/gnome/librsvg#b25889ade2a875ef079f322101c1f2f0804e9dcb"
+version = "2.56.0"
+source = "git+https://gitlab.gnome.org/gnome/librsvg#d597831ff93b09cc41ce4768a833bc6407c95184"
 dependencies = [
+ "anyhow",
  "byteorder",
  "cairo-rs",
  "cast",
@@ -1103,7 +1107,7 @@ dependencies = [
  "clap_complete",
  "cssparser",
  "data-url",
- "encoding",
+ "encoding_rs",
  "float-cmp",
  "gdk-pixbuf",
  "gio",
@@ -1125,6 +1129,7 @@ dependencies = [
  "selectors",
  "string_cache",
  "system-deps",
+ "thiserror",
  "tinyvec",
  "url",
  "xml5ever",
@@ -1132,18 +1137,18 @@ dependencies = [
 
 [[package]]
 name = "link-cplusplus"
-version = "1.0.7"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9272ab7b96c9046fbc5bc56c06c117cb639fe2d509df0c421cad82d2915cf369"
+checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
 dependencies = [
  "cc",
 ]
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.1.3"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f9f08d8963a6c613f4b1a78f4f4a4dbfadf8e6545b2d72861731e4858b8b47f"
+checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f"
 
 [[package]]
 name = "locale_config"
@@ -1208,9 +1213,9 @@ dependencies = [
 
 [[package]]
 name = "matches"
-version = "0.1.9"
+version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
 
 [[package]]
 name = "matrixmultiply"
@@ -1229,27 +1234,18 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
 
 [[package]]
 name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "nalgebra"
-version = "0.31.4"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20bd243ab3dbb395b39ee730402d2e5405e448c75133ec49cc977762c4cba3d1"
+checksum = "d68d47bba83f9e2006d117a9a33af1524e655516b8919caac694427a6fb1e511"
 dependencies = [
  "approx",
  "matrixmultiply",
@@ -1263,13 +1259,13 @@ dependencies = [
 
 [[package]]
 name = "nalgebra-macros"
-version = "0.1.0"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218"
+checksum = "d232c68884c0c99810a5a4d333ef7e47689cfd0edc85efc9e54e1e6bf5212766"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1286,9 +1282,9 @@ checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
 
 [[package]]
 name = "num-complex"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ae39348c8bc5fbd7f40c727a9925f03517afd2ab27d46702108b6a7e5414c19"
+checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d"
 dependencies = [
  "num-traits",
 ]
@@ -1325,11 +1321,11 @@ dependencies = [
 
 [[package]]
 name = "num_cpus"
-version = "1.14.0"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5"
+checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
 dependencies = [
- "hermit-abi 0.1.19",
+ "hermit-abi 0.2.6",
  "libc",
 ]
 
@@ -1364,21 +1360,15 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
-
-[[package]]
-name = "os_str_bytes"
-version = "6.4.1"
+version = "1.17.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
+checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
 
 [[package]]
 name = "pango"
-version = "0.16.5"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdff66b271861037b89d028656184059e03b0b6ccb36003820be19f7200b1e94"
+checksum = "52c280b82a881e4208afb3359a8e7fde27a1b272280981f1f34610bed5770d37"
 dependencies = [
  "bitflags",
  "gio",
@@ -1390,9 +1380,9 @@ dependencies = [
 
 [[package]]
 name = "pango-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e134909a9a293e04d2cc31928aa95679c5e4df954d0b85483159bd20d8f047f"
+checksum = "4293d0f0b5525eb5c24734d30b0ed02cd02aa734f216883f376b54de49625de8"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -1402,9 +1392,9 @@ dependencies = [
 
 [[package]]
 name = "pangocairo"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16ad2ec87789371b551fd2367c10aa37060412ffd3e60abd99491b21b93a3f9b"
+checksum = "2feeb7ea7874507f83f5e7ba869c54e321959431c8fbd70d4b735c8b15d90506"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -1416,9 +1406,9 @@ dependencies = [
 
 [[package]]
 name = "pangocairo-sys"
-version = "0.16.3"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "848d2df9b7f1a8c7a19d994de443bcbe5d4382610ccb8e64247f932be74fcf76"
+checksum = "f60f1be8ef08087ddcbdcc1350e06073bff11113d425d12b622b716d96b9611c"
 dependencies = [
  "cairo-sys-rs",
  "glib-sys",
@@ -1439,9 +1429,9 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.5"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba"
+checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521"
 dependencies = [
  "cfg-if",
  "libc",
@@ -1452,9 +1442,9 @@ dependencies = [
 
 [[package]]
 name = "paste"
-version = "1.0.9"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1de2e551fb905ac83f73f7aedf2f0cb4a0da7e35efa24a202a936269f1f18e1"
+checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79"
 
 [[package]]
 name = "percent-encoding"
@@ -1463,24 +1453,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
 
 [[package]]
-name = "pest"
-version = "2.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc8bed3549e0f9b0a2a78bf7c0018237a2cdf085eecbbc048e52612438e4e9d0"
-dependencies = [
- "thiserror",
- "ucd-trie",
-]
-
-[[package]]
 name = "phf"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
 dependencies = [
- "phf_macros",
  "phf_shared 0.8.0",
- "proc-macro-hack",
 ]
 
 [[package]]
@@ -1489,7 +1467,9 @@ version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
 dependencies = [
+ "phf_macros",
  "phf_shared 0.10.0",
+ "proc-macro-hack",
 ]
 
 [[package]]
@@ -1534,16 +1514,16 @@ dependencies = [
 
 [[package]]
 name = "phf_macros"
-version = "0.8.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
+checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0"
 dependencies = [
- "phf_generator 0.8.0",
- "phf_shared 0.8.0",
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
  "proc-macro-hack",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1606,13 +1586,12 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-crate"
-version = "1.2.1"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eda0fc3b0fb7c975631757e14d9049da17374063edb6ebbcbc54d880d4fe94e9"
+checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
 dependencies = [
  "once_cell",
- "thiserror",
- "toml",
+ "toml_edit",
 ]
 
 [[package]]
@@ -1624,7 +1603,7 @@ dependencies = [
  "proc-macro-error-attr",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "version_check",
 ]
 
@@ -1641,15 +1620,15 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-hack"
-version = "0.5.19"
+version = "0.5.20+deprecated"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
+checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.47"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
+checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
 dependencies = [
  "unicode-ident",
 ]
@@ -1662,9 +1641,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
 
 [[package]]
 name = "quote"
-version = "1.0.21"
+version = "1.0.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
 dependencies = [
  "proc-macro2",
 ]
@@ -1758,9 +1737,9 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
 
 [[package]]
 name = "rayon"
-version = "1.6.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7"
+checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
 dependencies = [
  "either",
  "rayon-core",
@@ -1768,9 +1747,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cac410af5d00ab6884528b4ab69d1e8e146e8d471201800fa1b4524126de6ad3"
+checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
 dependencies = [
  "crossbeam-channel",
  "crossbeam-deque",
@@ -1795,9 +1774,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.7.0"
+version = "1.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a"
+checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1806,42 +1785,33 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.28"
+version = "0.6.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "rgb"
-version = "0.8.34"
+version = "0.8.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3603b7d71ca82644f79b5a06d1220e9a58ede60bd32255f698cb1af8838b8db3"
+checksum = "20ec2d3e3fc7a92ced357df9cebd5a10b6fb2aa1ee797bf7e9ce2f17dffc8f59"
 dependencies = [
  "bytemuck",
 ]
 
 [[package]]
 name = "rustc_version"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
-dependencies = [
- "semver 0.11.0",
-]
-
-[[package]]
-name = "rustc_version"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
- "semver 1.0.14",
+ "semver",
 ]
 
 [[package]]
 name = "rustix"
-version = "0.36.5"
+version = "0.37.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3807b5d10909833d3e9acd1eb5fb988f79376ff10fce42937de71a449c4c588"
+checksum = "d097081ed288dfe45699b72f5b5d648e5f15d64d900c7080273baa20c16a6849"
 dependencies = [
  "bitflags",
  "errno",
@@ -1868,15 +1838,15 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
 name = "scratch"
-version = "1.0.2"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8132065adcfd6e02db789d9285a0deb2f3fcb04002865ab67d5fb103533898"
+checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
 
 [[package]]
 name = "selectors"
-version = "0.23.0"
+version = "0.24.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fdea87c686be721aab36607728047801ee21561bfdbd6bf0da7ace2536d5879f"
+checksum = "0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416"
 dependencies = [
  "bitflags",
  "cssparser",
@@ -1892,39 +1862,30 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "0.11.0"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
-dependencies = [
- "semver-parser",
-]
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
 
 [[package]]
-name = "semver"
-version = "1.0.14"
+name = "serde"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4"
+checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065"
 
 [[package]]
-name = "semver-parser"
-version = "0.10.2"
+name = "serde_spanned"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
+checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4"
 dependencies = [
- "pest",
+ "serde",
 ]
 
 [[package]]
-name = "serde"
-version = "1.0.150"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e326c9ec8042f1b5da33252c8a37e9ffbd2c9bef0155215b6e6c80c790e05f91"
-
-[[package]]
 name = "servo_arc"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
+checksum = "d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741"
 dependencies = [
  "nodrop",
  "stable_deref_trait",
@@ -1932,9 +1893,9 @@ dependencies = [
 
 [[package]]
 name = "simba"
-version = "0.7.3"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f3fd720c48c53cace224ae62bef1bbff363a70c68c4802a78b5cc6159618176"
+checksum = "50582927ed6f77e4ac020c057f37a268fc6aebc29225050365aacbb9deeeddc4"
 dependencies = [
  "approx",
  "num-complex",
@@ -1951,9 +1912,9 @@ checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
 
 [[package]]
 name = "slab"
-version = "0.4.7"
+version = "0.4.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
+checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
 dependencies = [
  "autocfg",
 ]
@@ -1972,9 +1933,9 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
 
 [[package]]
 name = "string_cache"
-version = "0.8.4"
+version = "0.8.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213494b7a2b503146286049378ce02b482200519accc31872ee8be91fa820a08"
+checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
 dependencies = [
  "new_debug_unreachable",
  "once_cell",
@@ -2004,9 +1965,20 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "syn"
-version = "1.0.105"
+version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2015,9 +1987,9 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.0.3"
+version = "6.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff"
+checksum = "555fc8147af6256f3931a36bb83ad0023240ce9cf2b319dec8236fd1f220b05f"
 dependencies = [
  "cfg-expr",
  "heck",
@@ -2045,42 +2017,31 @@ dependencies = [
 
 [[package]]
 name = "termcolor"
-version = "1.1.3"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
 dependencies = [
  "winapi-util",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.37"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"
+checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.37"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
+checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
-]
-
-[[package]]
-name = "time"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
-dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -2094,42 +2055,61 @@ dependencies = [
 
 [[package]]
 name = "tinyvec_macros"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "toml"
-version = "0.5.9"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
+checksum = "b403acf6f2bb0859c93c7f0d967cb4a75a7ac552100f9322faf64dc047669b21"
 dependencies = [
  "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
 ]
 
 [[package]]
-name = "typenum"
-version = "1.16.0"
+name = "toml_datetime"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
+checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622"
+dependencies = [
+ "serde",
+]
 
 [[package]]
-name = "ucd-trie"
-version = "0.1.5"
+name = "toml_edit"
+version = "0.19.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13"
+dependencies = [
+ "indexmap",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow",
+]
+
+[[package]]
+name = "typenum"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81"
+checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.8"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
+checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.5"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3"
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
 
 [[package]]
 name = "unicode-normalization"
@@ -2164,6 +2144,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
 
 [[package]]
+name = "utf8parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+[[package]]
 name = "version-compare"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2183,21 +2169,15 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
 
 [[package]]
 name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "wasi"
 version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.83"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
+checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -2205,24 +2185,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.83"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
+checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.83"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
+checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -2230,28 +2210,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.83"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
+checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.83"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
+checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
 
 [[package]]
 name = "wide"
-version = "0.7.5"
+version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae41ecad2489a1655c8ef8489444b0b113c0a0c795944a3572a0931cf7d2525c"
+checksum = "b689b6c49d6549434bf944e6b0f39238cf63693cb7a147e9d887507fffa3b223"
 dependencies = [
  "bytemuck",
  "safe_arch",
@@ -2289,61 +2269,151 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+dependencies = [
+ "windows-targets 0.48.0",
+]
+
+[[package]]
 name = "windows-sys"
-version = "0.42.0"
+version = "0.45.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+dependencies = [
+ "windows-targets 0.42.2",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.0",
+ "windows_aarch64_msvc 0.48.0",
+ "windows_i686_gnu 0.48.0",
+ "windows_i686_msvc 0.48.0",
+ "windows_x86_64_gnu 0.48.0",
+ "windows_x86_64_gnullvm 0.48.0",
+ "windows_x86_64_msvc 0.48.0",
 ]
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.42.0"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.0"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.0"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.0"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.0"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed"
+checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.0"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.0"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+
+[[package]]
+name = "winnow"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae8970b36c66498d8ff1d66685dc86b91b29db0c7739899012f63a63814b4b28"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "xml-rs"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5"
+checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
 
 [[package]]
 name = "xml5ever"
diff --git a/pkgs/applications/graphics/emblem/default.nix b/pkgs/applications/graphics/emblem/default.nix
index 04e1aa72357ac..0ec8a48f3c933 100644
--- a/pkgs/applications/graphics/emblem/default.nix
+++ b/pkgs/applications/graphics/emblem/default.nix
@@ -2,42 +2,43 @@
 , stdenv
 , fetchFromGitLab
 , rustPlatform
-, pkg-config
+, appstream-glib
+, desktop-file-utils
+, glib
 , meson
 , ninja
-, glib
-, gobject-introspection
+, pkg-config
+, wrapGAppsHook4
+, gtk4
 , libadwaita
 , libxml2
-, librsvg
-, wrapGAppsHook4
-, appstream-glib
-, desktop-file-utils
+, darwin
 }:
 
 stdenv.mkDerivation rec {
   pname = "emblem";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
-    owner = "World/design";
-    repo = pname;
+    group = "World";
+    owner = "design";
+    repo = "emblem";
     rev = version;
-    sha256 = "sha256-kNPV1SHkNTBXbMzDJGuDbaGz1WkBqMpVgZKjsh7ejmo=";
+    sha256 = "sha256-sgo6rGwmybouTTBTPFrPJv8Wo9I6dcoT7sUVQGFUqkQ=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "librsvg-2.55.90" = "sha256-IegUvM1HcsRiYS6woaP1aeWKtgBxim9FkdZY9BSscPY=";
+      "librsvg-2.56.0" = "sha256-PIrec3nfeMo94bkYUrp6B7lie9O1RtiBdPMFUKKLtTQ=";
     };
   };
 
   nativeBuildInputs = [
     appstream-glib
+    desktop-file-utils
     glib
-    gobject-introspection
     meson
     ninja
     pkg-config
@@ -49,17 +50,18 @@ stdenv.mkDerivation rec {
   ]);
 
   buildInputs = [
-    desktop-file-utils
+    gtk4
     libadwaita
-    librsvg
     libxml2
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Foundation
   ];
 
   meta = with lib; {
     description = "Generate project icons and avatars from a symbolic icon";
     homepage = "https://gitlab.gnome.org/World/design/emblem";
     license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ foo-dogsquared ];
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ figsoda foo-dogsquared ];
   };
 }
diff --git a/pkgs/applications/graphics/epeg/default.nix b/pkgs/applications/graphics/epeg/default.nix
index 942a6d63bd519..b4ba26bd015f9 100644
--- a/pkgs/applications/graphics/epeg/default.nix
+++ b/pkgs/applications/graphics/epeg/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "epeg";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "mattes";
     repo = "epeg";
     rev = "v${version}";
-    sha256 = "14bjl9v6zzac4df25gm3bkw3n0mza5iazazsi65gg3m6661x6c5g";
+    sha256 = "sha256-lttqarR8gScNIlSrc5uU3FLfvwxxJ2A1S4oESUW7oIw=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 428ddc5073dae..afa7234446d9e 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -22,9 +22,9 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "man" "doc" ];
 
-  nativeBuildInputs = [ makeWrapper xorg.libXt ];
+  nativeBuildInputs = [ makeWrapper ];
 
-  buildInputs = [ xorg.libX11 xorg.libXinerama imlib2 libjpeg libpng curl libexif ];
+  buildInputs = [ xorg.libXt xorg.libX11 xorg.libXinerama imlib2 libjpeg libpng curl libexif ];
 
   makeFlags = [
     "PREFIX=${placeholder "out"}" "exif=1"
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
index d3323a827cecb..78f25a0df3ade 100644
--- a/pkgs/applications/graphics/gscan2pdf/default.nix
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -130,6 +130,12 @@ perlPackages.buildPerlPackage rec {
     #   Non-zero wait status: 139
     rm t/0601_Dialog_Scan.t
 
+    # Disable a test which failed due to convert returning an exit value of 1
+    # convert: negative or zero image size `/build/KL5kTVnNCi/YfgegFM53e.pnm' @ error/resize.c/ResizeImage/3743.
+    # *** unhandled exception in callback:
+    # ***   "convert" unexpectedly returned exit value 1 at t/357_unpaper_rtl.t line 63.
+    rm t/357_unpaper_rtl.t
+
     xvfb-run -s '-screen 0 800x600x24' \
       make test
   '';
diff --git a/pkgs/applications/graphics/ipe/default.nix b/pkgs/applications/graphics/ipe/default.nix
index 045ac5d665cfe..c30bef90f3d1a 100644
--- a/pkgs/applications/graphics/ipe/default.nix
+++ b/pkgs/applications/graphics/ipe/default.nix
@@ -1,5 +1,5 @@
 { lib
-, mkDerivation
+, stdenv
 , makeDesktopItem
 , fetchurl
 , pkg-config
@@ -14,21 +14,24 @@
 , lua5
 , qtbase
 , texlive
+, wrapQtAppsHook
 , zlib
+, withTeXLive ? true
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "ipe";
-  version = "7.2.24";
+  version = "7.2.26";
 
   src = fetchurl {
     url = "https://github.com/otfried/ipe/releases/download/v${version}/ipe-${version}-src.tar.gz";
-    sha256 = "sha256-/rh58k0dziWRB5B3BEbVCwPkbuLr19KBV7FwWXFkT28=";
+    sha256 = "sha256-5J0AV5E6SlFrIBfwDZrbJnkDUoVZ0fDH669s2RQ1CqU=";
   };
+  patches = [
+    ./headers-lookup.patch
+  ];
 
-  sourceRoot = "${pname}-${version}/src";
-
-  nativeBuildInputs = [ pkg-config copyDesktopItems ];
+  nativeBuildInputs = [ pkg-config copyDesktopItems wrapQtAppsHook ];
 
   buildInputs = [
     cairo
@@ -40,15 +43,19 @@ mkDerivation rec {
     libspiro
     lua5
     qtbase
-    texlive
     zlib
-  ];
+  ] ++ (lib.optionals withTeXLive [
+    texlive
+  ]);
 
-  IPEPREFIX = placeholder "out";
-  URWFONTDIR = "${texlive}/texmf-dist/fonts/type1/urw/";
-  LUA_PACKAGE = "lua";
+  makeFlags = [
+    "-C src"
+    "IPEPREFIX=${placeholder "out"}"
+    "LUA_PACKAGE=lua"
+    "IPE_NO_SPELLCHECK=1" # qtSpell is not yet packaged
+  ];
 
-  qtWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ texlive ]}" ];
+  qtWrapperArgs = lib.optional withTeXLive [ "--prefix PATH : ${lib.makeBinPath [ texlive ]}" ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/graphics/ipe/headers-lookup.patch b/pkgs/applications/graphics/ipe/headers-lookup.patch
new file mode 100644
index 0000000000000..a6adf1b164742
--- /dev/null
+++ b/pkgs/applications/graphics/ipe/headers-lookup.patch
@@ -0,0 +1,13 @@
+diff --git a/src/ipepresenter/Makefile b/src/ipepresenter/Makefile
+index ae3664e..f4f74ff 100644
+--- a/src/ipepresenter/Makefile
++++ b/src/ipepresenter/Makefile
+@@ -8,7 +8,7 @@ include ../common.mak
+ 
+ TARGET = $(call exe_target,ipepresenter)
+ 
+-CXXFLAGS += -I../include -I../ipecanvas -I../ipecairo \
++CPPFLAGS += -I../include -I../ipecanvas -I../ipecairo \
+ 	$(UI_CFLAGS) $(CAIRO_CFLAGS) $(ZLIB_CFLAGS)
+ LIBS += -L$(buildlib) -lipecanvas -lipecairo -lipe \
+ 	$(UI_LIBS) $(CAIRO_LIBS) $(ZLIB_LIBS)
diff --git a/pkgs/applications/graphics/komikku/default.nix b/pkgs/applications/graphics/komikku/default.nix
index 564af456f0f16..47095322fb790 100644
--- a/pkgs/applications/graphics/komikku/default.nix
+++ b/pkgs/applications/graphics/komikku/default.nix
@@ -19,7 +19,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "komikku";
-  version = "1.17.0";
+  version = "1.18.0";
 
   format = "other";
 
@@ -27,21 +27,9 @@ python3.pkgs.buildPythonApplication rec {
     owner = "valos";
     repo = "Komikku";
     rev = "v${version}";
-    hash = "sha256-DxW9uefY6Fks3qSUeLMp3BB85SfLgzwBr4KO9do2y2o=";
+    hash = "sha256-suqoYV+YsbCB7sUNzds6OoEMH9KO3bt2udok6oXXyls=";
   };
 
-  patches = [
-    # https://gitlab.com/valos/Komikku/-/merge_requests/208
-    (fetchpatch {
-      url = "https://gitlab.com/valos/Komikku/-/commit/c9a09817acd767a7cb4ceea9b212fffd798eae61.patch";
-      hash = "sha256-McjQApLY7OKbdelrTeh3aRw90B6T9V5FtLL5Y62BmGA=";
-    })
-    (fetchpatch {
-      url = "https://gitlab.com/valos/Komikku/-/commit/bda93631420f6a69a50be0068f259d60b9558930.patch";
-      hash = "sha256-Xu+IaQKf0I99a2uh97j8xSlGYSJHuNPMy/zZtWRxLaM=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/applications/graphics/mangareader/default.nix b/pkgs/applications/graphics/mangareader/default.nix
index 81073c0511523..37a58ea0ba453 100644
--- a/pkgs/applications/graphics/mangareader/default.nix
+++ b/pkgs/applications/graphics/mangareader/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mangareader";
-  version = "2.0.4";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "g-fb";
     repo = pname;
     rev = version;
-    hash = "sha256-j5b2O5OgDRaaxNssknTTgVscudk1+mFlGQN5KE6CwcU=";
+    hash = "sha256-YZZcp+HS/P/GxWYyOpO35nByJSzv4HahzzrZSVRcCRs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/unigine-superposition/default.nix b/pkgs/applications/graphics/unigine-superposition/default.nix
index b1261bb52f23f..bc8e128ba44a2 100644
--- a/pkgs/applications/graphics/unigine-superposition/default.nix
+++ b/pkgs/applications/graphics/unigine-superposition/default.nix
@@ -22,7 +22,7 @@
 , mkDerivation
 , xkeyboard_config
 , fetchurl
-, buildFHSUserEnv
+, buildFHSEnv
 , openal
 , makeDesktopItem
 }:
@@ -94,9 +94,9 @@ let
 in
 
 # We can patch the "/bin/superposition", but "/bin/launcher" checks it for changes.
-# For that we need use a buildFHSUserEnv.
+# For that we need use a buildFHSEnv.
 
-buildFHSUserEnv {
+buildFHSEnv {
   name = "Superposition";
 
   targetPkgs = pkgs: [
diff --git a/pkgs/applications/graphics/yed/default.nix b/pkgs/applications/graphics/yed/default.nix
index b1d96f2d1f42f..7810ea3213d8c 100644
--- a/pkgs/applications/graphics/yed/default.nix
+++ b/pkgs/applications/graphics/yed/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yEd";
-  version = "3.22";
+  version = "3.23.1";
 
   src = fetchzip {
     url = "https://www.yworks.com/resources/yed/demo/${pname}-${version}.zip";
-    sha256 = "sha256-GHYdvWie2k9YarS9DaA4bExswV3UQ26O8+7K/6yvtac=";
+    sha256 = "sha256-MboljULek5vCcHpRFL9kdT4AROTD774AOBYeOTzcdig=";
   };
 
   nativeBuildInputs = [ makeWrapper unzip wrapGAppsHook ];
diff --git a/pkgs/applications/kde/akonadi-calendar.nix b/pkgs/applications/kde/akonadi-calendar.nix
index 474672dfd7d9e..95ee121b59f14 100644
--- a/pkgs/applications/kde/akonadi-calendar.nix
+++ b/pkgs/applications/kde/akonadi-calendar.nix
@@ -17,4 +17,8 @@ mkDerivation {
     kio kmailtransport
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/akonadi-contacts.nix b/pkgs/applications/kde/akonadi-contacts.nix
index d89670d7719c7..2486019ac69ad 100644
--- a/pkgs/applications/kde/akonadi-contacts.nix
+++ b/pkgs/applications/kde/akonadi-contacts.nix
@@ -22,4 +22,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ akonadi grantleetheme ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/akonadi-mime.nix b/pkgs/applications/kde/akonadi-mime.nix
index fbd028b1ec289..b498fde26dfa4 100644
--- a/pkgs/applications/kde/akonadi-mime.nix
+++ b/pkgs/applications/kde/akonadi-mime.nix
@@ -13,4 +13,8 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules shared-mime-info ];
   buildInputs = [ akonadi kdbusaddons ki18n kio kitemmodels kmime ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/akonadi-notes.nix b/pkgs/applications/kde/akonadi-notes.nix
index 1ab0ca74819f3..411f71440a0dc 100644
--- a/pkgs/applications/kde/akonadi-notes.nix
+++ b/pkgs/applications/kde/akonadi-notes.nix
@@ -15,4 +15,8 @@ mkDerivation {
     akonadi kcompletion ki18n kitemmodels kmime kxmlgui
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/akonadi-search.nix b/pkgs/applications/kde/akonadi-search.nix
index 84657177f891f..2908748e474dd 100644
--- a/pkgs/applications/kde/akonadi-search.nix
+++ b/pkgs/applications/kde/akonadi-search.nix
@@ -17,4 +17,8 @@ mkDerivation {
     akonadi akonadi-mime kcalendarcore kcontacts kcoreaddons kmime qtbase
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/akonadi/0003-akonadi-revert-make-relocatable.patch b/pkgs/applications/kde/akonadi/0003-akonadi-revert-make-relocatable.patch
index 73d69c5e69af7..6d4d5a4b363b4 100644
--- a/pkgs/applications/kde/akonadi/0003-akonadi-revert-make-relocatable.patch
+++ b/pkgs/applications/kde/akonadi/0003-akonadi-revert-make-relocatable.patch
@@ -5,7 +5,7 @@ Subject: [PATCH 3/3] akonadi revert make relocatable
 
 ---
  CMakeLists.txt            | 3 ---
- KF5AkonadiConfig.cmake.in | 6 +++---
+ KPimAkonadiConfig.cmake.in | 6 +++---
  2 files changed, 3 insertions(+), 6 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
@@ -13,8 +13,8 @@ index 4e8cc81..63161b7 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -368,9 +368,6 @@ configure_package_config_file(
-     "${CMAKE_CURRENT_SOURCE_DIR}/KF5AkonadiConfig.cmake.in"
-     "${CMAKE_CURRENT_BINARY_DIR}/KF5AkonadiConfig.cmake"
+     "${CMAKE_CURRENT_SOURCE_DIR}/KPimAkonadiConfig.cmake.in"
+     "${CMAKE_CURRENT_BINARY_DIR}/KPimAkonadiConfig.cmake"
      INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
 -    PATH_VARS AKONADI_DBUS_INTERFACES_INSTALL_DIR
 -              AKONADI_INCLUDE_DIR
@@ -22,10 +22,10 @@ index 4e8cc81..63161b7 100644
  )
  
  install(FILES
-diff --git a/KF5AkonadiConfig.cmake.in b/KF5AkonadiConfig.cmake.in
+diff --git a/KPimAkonadiConfig.cmake.in b/KPimAkonadiConfig.cmake.in
 index bcf7320..1574319 100644
---- a/KF5AkonadiConfig.cmake.in
-+++ b/KF5AkonadiConfig.cmake.in
+--- a/KPimAkonadiConfig.cmake.in
++++ b/KPimAkonadiConfig.cmake.in
 @@ -1,10 +1,10 @@
  @PACKAGE_INIT@
  
diff --git a/pkgs/applications/kde/akonadi/default.nix b/pkgs/applications/kde/akonadi/default.nix
index e816d3eeb41e5..ade8ebbcf4213 100644
--- a/pkgs/applications/kde/akonadi/default.nix
+++ b/pkgs/applications/kde/akonadi/default.nix
@@ -44,10 +44,8 @@ mkDerivation {
 
   cmakeFlags = lib.optional (defaultDriver != "MYSQL") "-DDATABASE_BACKEND=${defaultDriver}";
 
-  # compatibility symlinks for kmymoney, can probably be removed in next kde bump
   postInstall = ''
-    ln -s $dev/include/KF5/AkonadiCore/Akonadi/Collection $dev/include/KF5/AkonadiCore/Collection
-    ln -s $dev/include/KF5/AkonadiCore/Akonadi/ItemFetchScope $dev/include/KF5/AkonadiCore/ItemFetchScope
-    ln -s $dev/include/KF5/AkonadiCore/Akonadi/RecursiveItemFetchJob $dev/include/KF5/AkonadiCore/RecursiveItemFetchJob
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
   '';
 }
diff --git a/pkgs/applications/plasma-mobile/alligator.nix b/pkgs/applications/kde/alligator.nix
index 4470141af2962..4470141af2962 100644
--- a/pkgs/applications/plasma-mobile/alligator.nix
+++ b/pkgs/applications/kde/alligator.nix
diff --git a/pkgs/applications/plasma-mobile/angelfish.nix b/pkgs/applications/kde/angelfish.nix
index 7a7e48d736d0c..6de8e703bd70d 100644
--- a/pkgs/applications/plasma-mobile/angelfish.nix
+++ b/pkgs/applications/kde/angelfish.nix
@@ -3,7 +3,6 @@
 , cmake
 , corrosion
 , extra-cmake-modules
-, gcc12
 , kconfig
 , kcoreaddons
 , kdbusaddons
@@ -15,13 +14,14 @@
 , kwindowsystem
 , qtfeedback
 , qtquickcontrols2
+, qqc2-desktop-style
 , qtwebengine
 , rustPlatform
 , srcs
 
 # These must be updated in tandem with package updates.
-, cargoShaForVersion ? "23.01.0"
-, cargoSha256 ? "sha256-dIXA875HsG56baHrTWw9L560n4s0wRv6Ag/2oj1x0gk="
+, cargoShaForVersion ? "23.03.80"
+, cargoSha256 ? "sha256-nXWQNXVlPWRQdDPXR5NsHJR6kaLxV7UxPC0OIubH/4c="
 }:
 
 # Guard against incomplete updates.
@@ -46,7 +46,6 @@ mkDerivation rec {
     cmake
     corrosion
     extra-cmake-modules
-    gcc12 # doesn't build with GCC 9 from stdenv on aarch64
   ] ++ (with rustPlatform; [
     cargoSetupHook
     rust.cargo
@@ -65,6 +64,7 @@ mkDerivation rec {
     kwindowsystem
     qtfeedback
     qtquickcontrols2
+    qqc2-desktop-style
     qtwebengine
   ];
 
diff --git a/pkgs/applications/plasma-mobile/audiotube.nix b/pkgs/applications/kde/audiotube.nix
index 14bfc6d18917e..0bd22ee06f63a 100644
--- a/pkgs/applications/plasma-mobile/audiotube.nix
+++ b/pkgs/applications/kde/audiotube.nix
@@ -2,7 +2,6 @@
 , mkDerivation
 
 , extra-cmake-modules
-, gcc12
 , wrapGAppsHook
 
 , gst_all_1
@@ -10,6 +9,7 @@
 , kcrash
 , ki18n
 , kirigami2
+, kirigami-addons
 , qtimageformats
 , qtmultimedia
 , qtquickcontrols2
@@ -22,7 +22,6 @@ mkDerivation rec {
   nativeBuildInputs = [
     extra-cmake-modules
     wrapGAppsHook
-    gcc12 # doesn't build with GCC 9 from stdenv on aarch64
     python3Packages.wrapPython
     python3Packages.pybind11
   ];
@@ -32,6 +31,7 @@ mkDerivation rec {
     kcrash
     ki18n
     kirigami2
+    kirigami-addons
     qtimageformats
     qtmultimedia
     qtquickcontrols2
diff --git a/pkgs/applications/kde/calendarsupport.nix b/pkgs/applications/kde/calendarsupport.nix
index c6a4e36c82d4d..4cc1bb1f1c6ca 100644
--- a/pkgs/applications/kde/calendarsupport.nix
+++ b/pkgs/applications/kde/calendarsupport.nix
@@ -17,4 +17,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ akonadi-calendar kidentitymanagement kmime ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/plasma-mobile/calindori.nix b/pkgs/applications/kde/calindori.nix
index bb10fa7bb10c7..bb10fa7bb10c7 100644
--- a/pkgs/applications/plasma-mobile/calindori.nix
+++ b/pkgs/applications/kde/calindori.nix
diff --git a/pkgs/applications/kde/colord-kde.nix b/pkgs/applications/kde/colord-kde.nix
index e250df5633f70..07f34c84d6f16 100644
--- a/pkgs/applications/kde/colord-kde.nix
+++ b/pkgs/applications/kde/colord-kde.nix
@@ -1,11 +1,11 @@
-{ mkDerivation, lib, fetchurl
+{ mkDerivation, lib
 , extra-cmake-modules, ki18n
 , kconfig, kconfigwidgets, kcoreaddons, kdbusaddons, kiconthemes, kcmutils
 , kio, knotifications, plasma-framework, kwidgetsaddons, kwindowsystem
-, kitemviews, lcms2, libXrandr, qtx11extras
+, kitemmodels, kitemviews, lcms2, libXrandr, qtx11extras
 }:
 
-mkDerivation rec {
+mkDerivation {
   pname = "colord-kde";
 
   nativeBuildInputs = [ extra-cmake-modules ];
@@ -13,7 +13,7 @@ mkDerivation rec {
   buildInputs = [
     kconfig kconfigwidgets kcoreaddons kdbusaddons kiconthemes
     kcmutils ki18n kio knotifications plasma-framework kwidgetsaddons
-    kwindowsystem kitemviews lcms2 libXrandr qtx11extras
+    kwindowsystem kitemmodels kitemviews lcms2 libXrandr qtx11extras
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index c121d0fb53998..3e3f31c3a70b9 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -86,6 +86,7 @@ let
       falkon = callPackage ./falkon.nix {};
       ffmpegthumbs = callPackage ./ffmpegthumbs.nix { };
       filelight = callPackage ./filelight.nix {};
+      ghostwriter = callPackage ./ghostwriter.nix {};
       granatier = callPackage ./granatier.nix {};
       grantleetheme = callPackage ./grantleetheme {};
       gwenview = callPackage ./gwenview.nix {};
@@ -112,6 +113,7 @@ let
       kcalutils = callPackage ./kcalutils.nix {};
       kcharselect = callPackage ./kcharselect.nix {};
       kcolorchooser = callPackage ./kcolorchooser.nix {};
+      kde-inotify-survey = callPackage ./kde-inotify-survey.nix {};
       kdebugsettings = callPackage ./kdebugsettings.nix {};
       kdeconnect-kde = callPackage ./kdeconnect-kde.nix {};
       kdegraphics-mobipocket = callPackage ./kdegraphics-mobipocket.nix {};
@@ -140,6 +142,7 @@ let
       kigo = callPackage ./kigo.nix {};
       killbots = callPackage ./killbots.nix {};
       kimap = callPackage ./kimap.nix {};
+      kio-admin = callPackage ./kio-admin.nix {};
       kio-extras = callPackage ./kio-extras.nix {};
       kio-gdrive = callPackage ./kio-gdrive.nix {};
       kipi-plugins = callPackage ./kipi-plugins.nix {};
@@ -233,6 +236,26 @@ let
       umbrello = callPackage ./umbrello.nix {};
       yakuake = callPackage ./yakuake.nix {};
       zanshin = callPackage ./zanshin.nix {};
+
+      # Plasma Mobile Gear
+      alligator = callPackage ./alligator.nix {};
+      angelfish = callPackage ./angelfish.nix { inherit srcs; };
+      audiotube = callPackage ./audiotube.nix {};
+      calindori = callPackage ./calindori.nix {};
+      kalk = callPackage ./kalk.nix {};
+      kasts = callPackage ./kasts.nix {};
+      kclock = callPackage ./kclock.nix {};
+      keysmith = callPackage ./keysmith.nix {};
+      koko = callPackage ./koko.nix {};
+      kongress = callPackage ./kongress.nix {};
+      krecorder = callPackage ./krecorder.nix {};
+      ktrip = callPackage ./ktrip.nix {};
+      kweather = callPackage ./kweather.nix {};
+      neochat = callPackage ./neochat.nix {};
+      plasmatube = callPackage ./plasmatube {};
+      qmlkonsole = callPackage ./qmlkonsole.nix {};
+      telly-skout = callPackage ./telly-skout.nix {};
+      tokodon = callPackage ./tokodon.nix {};
     };
 
 in lib.makeScope libsForQt5.newScope packages
diff --git a/pkgs/applications/kde/dolphin.nix b/pkgs/applications/kde/dolphin.nix
index b15c6fea4a0ec..d5340eaf379e9 100644
--- a/pkgs/applications/kde/dolphin.nix
+++ b/pkgs/applications/kde/dolphin.nix
@@ -5,8 +5,7 @@
   kcompletion, kconfig, kcoreaddons, kdbusaddons,
   kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications,
   kparts, ktexteditor, kwindowsystem, phonon, solid,
-  kuserfeedback,
-  wayland, qtwayland
+  kuserfeedback, wayland, qtwayland, qtx11extras
 }:
 
 mkDerivation {
@@ -26,6 +25,7 @@ mkDerivation {
     phonon solid
     kuserfeedback
     wayland qtwayland
+    qtx11extras
   ];
   outputs = [ "out" "dev" ];
 }
diff --git a/pkgs/applications/kde/eventviews.nix b/pkgs/applications/kde/eventviews.nix
index 001c1e6cbcb92..382f0ee48b1db 100644
--- a/pkgs/applications/kde/eventviews.nix
+++ b/pkgs/applications/kde/eventviews.nix
@@ -17,4 +17,8 @@ mkDerivation {
     libkdepim qtbase qttools kholidays
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index c20859f6dd00c..f5b3561bc3d26 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.12.3/src -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/release-service/23.04.0/src -A '*.tar.xz' )
diff --git a/pkgs/applications/kde/ghostwriter.nix b/pkgs/applications/kde/ghostwriter.nix
new file mode 100644
index 0000000000000..1fad4669dc627
--- /dev/null
+++ b/pkgs/applications/kde/ghostwriter.nix
@@ -0,0 +1,41 @@
+{ lib
+, mkDerivation
+, extra-cmake-modules
+, qttools
+, qtwebengine
+, kcoreaddons
+, kconfigwidgets
+, sonnet
+, kxmlgui
+, hunspell
+, cmark
+, multimarkdown
+, pandoc
+}:
+
+mkDerivation {
+  pname = "ghostwriter";
+
+  nativeBuildInputs = [ extra-cmake-modules qttools ];
+
+  buildInputs = [
+    qtwebengine
+    hunspell
+    kcoreaddons
+    kconfigwidgets
+    sonnet
+    kxmlgui
+  ];
+
+  qtWrapperArgs = [
+    "--prefix" "PATH" ":" (lib.makeBinPath [ cmark multimarkdown pandoc ])
+  ];
+
+  meta = with lib; {
+    description = "A cross-platform, aesthetic, distraction-free Markdown editor";
+    homepage = "https://ghostwriter.kde.org/";
+    changelog = "https://invent.kde.org/office/ghostwriter/-/blob/master/CHANGELOG.md";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dotlambda erictapen ];
+  };
+}
diff --git a/pkgs/applications/kde/grantleetheme/default.nix b/pkgs/applications/kde/grantleetheme/default.nix
index 92499645e7f41..2cc532d25104e 100644
--- a/pkgs/applications/kde/grantleetheme/default.nix
+++ b/pkgs/applications/kde/grantleetheme/default.nix
@@ -16,4 +16,8 @@ mkDerivation {
     grantlee ki18n kiconthemes knewstuff kservice kxmlgui qtbase
   ];
   propagatedBuildInputs = [ grantlee kiconthemes knewstuff ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/gwenview.nix b/pkgs/applications/kde/gwenview.nix
index 545b1a2b69e78..c4dc46f38afba 100644
--- a/pkgs/applications/kde/gwenview.nix
+++ b/pkgs/applications/kde/gwenview.nix
@@ -3,7 +3,8 @@
   extra-cmake-modules, kdoctools,
   exiv2, lcms2, cfitsio,
   baloo, kactivities, kio, kipi-plugins, kitemmodels, kparts, libkdcraw, libkipi,
-  phonon, qtimageformats, qtsvg, qtx11extras, kinit, kpurpose, kcolorpicker, kimageannotator
+  phonon, qtimageformats, qtsvg, qtx11extras, kinit, kpurpose, kcolorpicker, kimageannotator,
+  wayland, wayland-protocols
 }:
 
 mkDerivation {
@@ -19,6 +20,7 @@ mkDerivation {
     baloo kactivities kio kitemmodels kparts libkdcraw libkipi phonon
     exiv2 lcms2 cfitsio
     qtimageformats qtsvg qtx11extras kpurpose kcolorpicker kimageannotator
+    wayland wayland-protocols
   ];
   propagatedUserEnvPkgs = [ kipi-plugins libkipi (lib.getBin kinit) ];
 }
diff --git a/pkgs/applications/kde/incidenceeditor.nix b/pkgs/applications/kde/incidenceeditor.nix
index 9c248f199a5d2..2e10c129eefd6 100644
--- a/pkgs/applications/kde/incidenceeditor.nix
+++ b/pkgs/applications/kde/incidenceeditor.nix
@@ -17,4 +17,8 @@ mkDerivation {
     kldap kmime pimcommon qtbase
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kaccounts-integration.nix b/pkgs/applications/kde/kaccounts-integration.nix
index ef69f564f128b..069bedcb53b25 100644
--- a/pkgs/applications/kde/kaccounts-integration.nix
+++ b/pkgs/applications/kde/kaccounts-integration.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, lib, extra-cmake-modules, kdoctools, kcmutils, kcoreaddons, kwallet, accounts-qt, signond }:
+{ mkDerivation, lib, extra-cmake-modules, kdoctools, kcmutils, kcoreaddons, kwallet, accounts-qt, signond, qcoro }:
 
 mkDerivation {
   pname = "kaccounts-integration";
@@ -19,5 +19,6 @@ mkDerivation {
     kwallet
     accounts-qt
     signond
+    qcoro
   ];
 }
diff --git a/pkgs/applications/plasma-mobile/kalk.nix b/pkgs/applications/kde/kalk.nix
index 8d63991fb0808..8d63991fb0808 100644
--- a/pkgs/applications/plasma-mobile/kalk.nix
+++ b/pkgs/applications/kde/kalk.nix
diff --git a/pkgs/applications/plasma-mobile/kasts.nix b/pkgs/applications/kde/kasts.nix
index 59b455398203d..59b455398203d 100644
--- a/pkgs/applications/plasma-mobile/kasts.nix
+++ b/pkgs/applications/kde/kasts.nix
diff --git a/pkgs/applications/kde/kate.nix b/pkgs/applications/kde/kate.nix
index de76a476df066..646fedba158f0 100644
--- a/pkgs/applications/kde/kate.nix
+++ b/pkgs/applications/kde/kate.nix
@@ -4,8 +4,7 @@
   kactivities, kconfig, kcrash, kdbusaddons, kguiaddons, kiconthemes, ki18n,
   kinit, kio, kitemmodels, kjobwidgets, knewstuff, knotifications, konsole,
   kparts, ktexteditor, kwindowsystem, kwallet, kxmlgui, libgit2,
-  kuserfeedback,
-  plasma-framework, qtscript, threadweaver
+  kuserfeedback, plasma-framework, qtscript, threadweaver, qtx11extras
 }:
 
 mkDerivation {
@@ -33,8 +32,7 @@ mkDerivation {
     kactivities ki18n kio ktexteditor kwindowsystem plasma-framework
     qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts
     kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver
-    knewstuff
-    kuserfeedback
+    knewstuff kuserfeedback qtx11extras
   ];
   propagatedUserEnvPkgs = [ konsole ];
 }
diff --git a/pkgs/applications/kde/kcalutils.nix b/pkgs/applications/kde/kcalutils.nix
index 7da9739aad1d6..591e28cd737f1 100644
--- a/pkgs/applications/kde/kcalutils.nix
+++ b/pkgs/applications/kde/kcalutils.nix
@@ -17,4 +17,8 @@ mkDerivation {
     kidentitymanagement kpimtextedit
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/plasma-mobile/kclock.nix b/pkgs/applications/kde/kclock.nix
index 6212fa8b0400b..6212fa8b0400b 100644
--- a/pkgs/applications/plasma-mobile/kclock.nix
+++ b/pkgs/applications/kde/kclock.nix
diff --git a/pkgs/applications/kde/kde-inotify-survey.nix b/pkgs/applications/kde/kde-inotify-survey.nix
new file mode 100644
index 0000000000000..d90d789c57761
--- /dev/null
+++ b/pkgs/applications/kde/kde-inotify-survey.nix
@@ -0,0 +1,30 @@
+{ mkDerivation
+, lib
+, extra-cmake-modules
+, kauth
+, kcoreaddons
+, kdbusaddons
+, ki18n
+, knotifications
+}:
+
+mkDerivation {
+  pname = "kde-inotify-survey";
+
+  nativeBuildInputs = [ extra-cmake-modules ];
+
+  buildInputs = [
+    kauth
+    kcoreaddons
+    kdbusaddons
+    ki18n
+    knotifications
+  ];
+
+  meta = {
+    description = "Tooling for monitoring inotify limits and informing the user when they have been or about to be reached";
+    homepage = "https://invent.kde.org/system/kde-inotify-survey";
+    license = lib.licenses.gpl2Plus;
+    maintainers = [];
+  };
+}
diff --git a/pkgs/applications/kde/kdebugsettings.nix b/pkgs/applications/kde/kdebugsettings.nix
index 2ebf9c8894486..829f7a26eb304 100644
--- a/pkgs/applications/kde/kdebugsettings.nix
+++ b/pkgs/applications/kde/kdebugsettings.nix
@@ -2,7 +2,7 @@
   mkDerivation, lib,
   extra-cmake-modules, kdoctools,
   gettext,
-  kcoreaddons, kconfig, kdbusaddons, kwidgetsaddons, kitemviews, kcompletion,
+  kcoreaddons, kconfig, kdbusaddons, kwidgetsaddons, kitemviews, kcompletion, kxmlgui,
   python3
 }:
 
@@ -16,7 +16,7 @@ mkDerivation {
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
-    gettext kcoreaddons kconfig kdbusaddons kwidgetsaddons kitemviews kcompletion python3
+    gettext kcoreaddons kconfig kdbusaddons kwidgetsaddons kitemviews kcompletion kxmlgui python3
   ];
   propagatedUserEnvPkgs = [ ];
 }
diff --git a/pkgs/applications/kde/kdeconnect-kde.nix b/pkgs/applications/kde/kdeconnect-kde.nix
index 157ca73ecfc13..f67a338b3495d 100644
--- a/pkgs/applications/kde/kdeconnect-kde.nix
+++ b/pkgs/applications/kde/kdeconnect-kde.nix
@@ -16,6 +16,7 @@
 , libXtst
 , libfakekey
 , makeWrapper
+, modemmanager-qt
 , pulseaudio-qt
 , qca-qt5
 , qqc2-desktop-style
@@ -26,6 +27,7 @@
 , breeze-icons
 , sshfs
 , wayland
+, wayland-protocols
 , wayland-scanner
 , plasma-wayland-protocols
 }:
@@ -47,6 +49,7 @@ mkDerivation {
     kwayland
     libXtst
     libfakekey
+    modemmanager-qt
     pulseaudio-qt
     qca-qt5
     qqc2-desktop-style
@@ -55,6 +58,7 @@ mkDerivation {
     qtquickcontrols2
     qtx11extras
     wayland
+    wayland-protocols
     wayland-scanner
     plasma-wayland-protocols
     # otherwise buttons are blank on non-kde
diff --git a/pkgs/applications/kde/kdenetwork-filesharing.nix b/pkgs/applications/kde/kdenetwork-filesharing.nix
index 74ed9386cf052..4cff4a84fc407 100644
--- a/pkgs/applications/kde/kdenetwork-filesharing.nix
+++ b/pkgs/applications/kde/kdenetwork-filesharing.nix
@@ -1,7 +1,7 @@
 {
   mkDerivation, lib,
   extra-cmake-modules, kdoctools,
-  kcoreaddons, kdeclarative, ki18n, kio, kwidgetsaddons, samba,
+  kcoreaddons, kdeclarative, ki18n, kio, kwidgetsaddons, samba, qcoro
 }:
 
 mkDerivation {
@@ -11,5 +11,5 @@ mkDerivation {
     maintainers = [ lib.maintainers.ttuegel ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  buildInputs = [ kcoreaddons kdeclarative ki18n kio kwidgetsaddons samba ];
+  buildInputs = [ kcoreaddons kdeclarative ki18n kio kwidgetsaddons samba qcoro ];
 }
diff --git a/pkgs/applications/plasma-mobile/keysmith.nix b/pkgs/applications/kde/keysmith.nix
index eaca7f68e24be..eaca7f68e24be 100644
--- a/pkgs/applications/plasma-mobile/keysmith.nix
+++ b/pkgs/applications/kde/keysmith.nix
diff --git a/pkgs/applications/kde/kidentitymanagement.nix b/pkgs/applications/kde/kidentitymanagement.nix
index c2f2abcd32d01..6316a86024b2e 100644
--- a/pkgs/applications/kde/kidentitymanagement.nix
+++ b/pkgs/applications/kde/kidentitymanagement.nix
@@ -17,4 +17,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ kcoreaddons kpimtextedit ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kimap.nix b/pkgs/applications/kde/kimap.nix
index ece32e3ee0571..b910328c2cada 100644
--- a/pkgs/applications/kde/kimap.nix
+++ b/pkgs/applications/kde/kimap.nix
@@ -1,7 +1,7 @@
 {
   mkDerivation, lib, kdepimTeam,
   extra-cmake-modules, kdoctools,
-  cyrus_sasl, kcoreaddons, ki18n, kio, kmime
+  cyrus_sasl, kcoreaddons, ki18n, kio, kmime, kitemmodels
 }:
 
 mkDerivation {
@@ -12,6 +12,10 @@ mkDerivation {
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [ ki18n kio ];
-  propagatedBuildInputs = [ cyrus_sasl kcoreaddons kmime ];
+  propagatedBuildInputs = [ cyrus_sasl kcoreaddons kmime kitemmodels ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kio-admin.nix b/pkgs/applications/kde/kio-admin.nix
new file mode 100644
index 0000000000000..4734d447a1ac8
--- /dev/null
+++ b/pkgs/applications/kde/kio-admin.nix
@@ -0,0 +1,16 @@
+{ mkDerivation, lib, extra-cmake-modules, qtbase, kio, ki18n, polkit-qt }:
+
+mkDerivation {
+  pname = "kio-admin";
+
+  nativeBuildInputs = [ extra-cmake-modules ];
+  buildInputs = [ qtbase kio ki18n polkit-qt ];
+
+  meta = with lib; {
+    description = "Manage files as administrator using the admin:// KIO protocol.";
+    homepage = "https://invent.kde.org/system/kio-admin";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ k900 ];
+  };
+}
diff --git a/pkgs/applications/kde/kitinerary.nix b/pkgs/applications/kde/kitinerary.nix
index f69e705bb2f92..d795e4fac4c89 100644
--- a/pkgs/applications/kde/kitinerary.nix
+++ b/pkgs/applications/kde/kitinerary.nix
@@ -1,7 +1,7 @@
 { mkDerivation, lib, extra-cmake-modules
 , qtdeclarative, ki18n, kmime, kpkpass
 , poppler, kcontacts, kcalendarcore
-, shared-mime-info
+, shared-mime-info, zxing-cpp
 }:
 
 mkDerivation {
@@ -16,11 +16,7 @@ mkDerivation {
   ];
   buildInputs = [
     qtdeclarative kmime kpkpass poppler
-    kcontacts kcalendarcore
-  ];
-
-  CXXFLAGS = [
-    "-I${lib.getDev ki18n}/include/KF5"  # Fixes: ki18n_version.h: No such file or directory
+    kcontacts kcalendarcore ki18n zxing-cpp
   ];
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/applications/kde/kldap.nix b/pkgs/applications/kde/kldap.nix
index 6016cfd090c83..b7c7777a9a5ef 100644
--- a/pkgs/applications/kde/kldap.nix
+++ b/pkgs/applications/kde/kldap.nix
@@ -14,4 +14,8 @@ mkDerivation {
   buildInputs = [ ki18n kio kmbox libsecret qtkeychain ];
   propagatedBuildInputs = [ cyrus_sasl openldap ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kleopatra.nix b/pkgs/applications/kde/kleopatra.nix
index a02e7b08aa651..fc844796acd02 100644
--- a/pkgs/applications/kde/kleopatra.nix
+++ b/pkgs/applications/kde/kleopatra.nix
@@ -2,7 +2,7 @@
   mkDerivation, lib, kdepimTeam,
   extra-cmake-modules, kdoctools,
   boost, gpgme, kcmutils, kdbusaddons, kiconthemes, kitemmodels, kmime,
-  knotifications, kwindowsystem, kxmlgui, libkleo, kcrash
+  knotifications, kwindowsystem, kxmlgui, libkleo, kcrash, kpipewire
 }:
 
 mkDerivation {
@@ -12,7 +12,7 @@ mkDerivation {
 
   buildInputs = [
     boost gpgme kcmutils kdbusaddons kiconthemes kitemmodels kmime
-    knotifications kwindowsystem kxmlgui libkleo kcrash
+    knotifications kwindowsystem kxmlgui libkleo kcrash kpipewire
   ];
 
   meta = {
diff --git a/pkgs/applications/kde/kmailtransport.nix b/pkgs/applications/kde/kmailtransport.nix
index 577beb8d5ec8e..ab6700144a815 100644
--- a/pkgs/applications/kde/kmailtransport.nix
+++ b/pkgs/applications/kde/kmailtransport.nix
@@ -19,4 +19,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ akonadi-mime cyrus_sasl kmime kwallet ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kmbox.nix b/pkgs/applications/kde/kmbox.nix
index d2b4dbde8ac40..9a835116c42f9 100644
--- a/pkgs/applications/kde/kmbox.nix
+++ b/pkgs/applications/kde/kmbox.nix
@@ -13,4 +13,8 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [ kmime qtbase kcodecs ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kmime.nix b/pkgs/applications/kde/kmime.nix
index 8dfd910eeded0..fe8442e9d19dd 100644
--- a/pkgs/applications/kde/kmime.nix
+++ b/pkgs/applications/kde/kmime.nix
@@ -13,4 +13,8 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules ];
   buildInputs = [ kcodecs ki18n qtbase ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/plasma-mobile/koko.nix b/pkgs/applications/kde/koko.nix
index 3543a7284bffd..3543a7284bffd 100644
--- a/pkgs/applications/plasma-mobile/koko.nix
+++ b/pkgs/applications/kde/koko.nix
diff --git a/pkgs/applications/kde/kongress.nix b/pkgs/applications/kde/kongress.nix
new file mode 100644
index 0000000000000..be5efcdb9e23a
--- /dev/null
+++ b/pkgs/applications/kde/kongress.nix
@@ -0,0 +1,36 @@
+{ mkDerivation
+, lib
+, extra-cmake-modules
+, qtquickcontrols2
+, kcalendarcore
+, kconfig
+, kcoreaddons
+, kdbusaddons
+, kirigami2
+, ki18n
+, knotifications
+}:
+
+mkDerivation {
+  pname = "kongress";
+
+  nativeBuildInputs = [ extra-cmake-modules ];
+
+  buildInputs = [
+    qtquickcontrols2
+    kcalendarcore
+    kconfig
+    kcoreaddons
+    kdbusaddons
+    kirigami2
+    ki18n
+    knotifications
+  ];
+
+  meta = {
+    description = "A companion application for conferences";
+    homepage = "https://apps.kde.org/kongress/";
+    license = lib.licenses.gpl3;
+    maintainers = [];
+  };
+}
diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix
index 220cd6a16d573..9771e269faafd 100644
--- a/pkgs/applications/kde/konsole.nix
+++ b/pkgs/applications/kde/konsole.nix
@@ -4,7 +4,7 @@
   kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
   ki18n, kiconthemes, kinit, kio, knotifications,
   knotifyconfig, kparts, kpty, kservice, ktextwidgets, kwidgetsaddons,
-  kwindowsystem, kxmlgui, qtscript, knewstuff
+  kwindowsystem, kxmlgui, qtscript, knewstuff, qtmultimedia
 }:
 
 mkDerivation {
@@ -19,7 +19,7 @@ mkDerivation {
   buildInputs = [
     kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons
     kguiaddons ki18n kiconthemes kinit kio knotifications knotifyconfig kparts kpty
-    kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff
+    kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff qtmultimedia
   ];
 
   passthru.tests.test = nixosTests.terminal-emulators.konsole;
diff --git a/pkgs/applications/kde/kontactinterface.nix b/pkgs/applications/kde/kontactinterface.nix
index b680a088a6ea9..43e09777bddd1 100644
--- a/pkgs/applications/kde/kontactinterface.nix
+++ b/pkgs/applications/kde/kontactinterface.nix
@@ -1,7 +1,8 @@
 {
   mkDerivation, lib, kdepimTeam,
   extra-cmake-modules, kdoctools,
-  kiconthemes, kparts, kwindowsystem, kxmlgui
+  kiconthemes, kparts, kwindowsystem, kxmlgui,
+  qtx11extras
 }:
 
 mkDerivation {
@@ -12,7 +13,11 @@ mkDerivation {
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
-    kiconthemes kwindowsystem kxmlgui
+    kiconthemes kwindowsystem kxmlgui qtx11extras
   ];
   propagatedBuildInputs = [ kparts ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$out/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kpimtextedit.nix b/pkgs/applications/kde/kpimtextedit.nix
index 040fbd122ef88..de5afb72d1fab 100644
--- a/pkgs/applications/kde/kpimtextedit.nix
+++ b/pkgs/applications/kde/kpimtextedit.nix
@@ -19,4 +19,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ ktextwidgets ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/kpublictransport.nix b/pkgs/applications/kde/kpublictransport.nix
index fbfd3fcc8a465..0678aa10daff5 100644
--- a/pkgs/applications/kde/kpublictransport.nix
+++ b/pkgs/applications/kde/kpublictransport.nix
@@ -1,6 +1,9 @@
 { mkDerivation
 , lib
 , extra-cmake-modules
+, qtquickcontrols2
+, networkmanager-qt
+, ki18n
 }:
 
 mkDerivation {
@@ -10,4 +13,10 @@ mkDerivation {
     maintainers = [ maintainers.samueldr ];
   };
   nativeBuildInputs = [ extra-cmake-modules ];
+
+  buildInputs = [
+    qtquickcontrols2
+    networkmanager-qt
+    ki18n
+  ];
 }
diff --git a/pkgs/applications/plasma-mobile/krecorder.nix b/pkgs/applications/kde/krecorder.nix
index 71164d1b02d43..71164d1b02d43 100644
--- a/pkgs/applications/plasma-mobile/krecorder.nix
+++ b/pkgs/applications/kde/krecorder.nix
diff --git a/pkgs/applications/kde/krfb.nix b/pkgs/applications/kde/krfb.nix
index 65213fa15afb6..367e9ab010812 100644
--- a/pkgs/applications/kde/krfb.nix
+++ b/pkgs/applications/kde/krfb.nix
@@ -1,7 +1,7 @@
 { mkDerivation, lib
 , extra-cmake-modules, kdoctools
 , kconfig, kcoreaddons, kcrash, kdbusaddons, kdnssd, knotifications, kwallet
-, kwidgetsaddons, kwindowsystem, kxmlgui, kwayland
+, kwidgetsaddons, kwindowsystem, kxmlgui, kwayland, kpipewire
 , libvncserver, libXtst, libXdamage
 , qtx11extras, pipewire, plasma-wayland-protocols, wayland
 }:
@@ -18,7 +18,7 @@ mkDerivation {
   buildInputs = [
     libvncserver libXtst libXdamage
     kconfig kcoreaddons kcrash kdbusaddons knotifications kwallet kwidgetsaddons
-    kwindowsystem kxmlgui kwayland
+    kwindowsystem kxmlgui kwayland kpipewire
     qtx11extras
     pipewire
     plasma-wayland-protocols
diff --git a/pkgs/applications/kde/ksmtp/0001-Use-KDE_INSTALL_TARGETS_DEFAULT_ARGS-when-installing.patch b/pkgs/applications/kde/ksmtp/0001-Use-KDE_INSTALL_TARGETS_DEFAULT_ARGS-when-installing.patch
deleted file mode 100644
index 5f0ad9fac261c..0000000000000
--- a/pkgs/applications/kde/ksmtp/0001-Use-KDE_INSTALL_TARGETS_DEFAULT_ARGS-when-installing.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 749769232e7387ec8c8f2d3da845d8a6ae7d5977 Mon Sep 17 00:00:00 2001
-From: gnidorah <gnidorah@users.noreply.github.com>
-Date: Fri, 22 Dec 2017 19:32:47 +0300
-Subject: [PATCH] Use KDE_INSTALL_TARGETS_DEFAULT_ARGS when installing targets
-
----
- src/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 83c2bcb..5f6d47c 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -51,7 +51,7 @@ ecm_generate_headers(KSMTP_CamelCase_HEADERS
-     REQUIRED_HEADERS KSMTP_HEADERS
- )
- 
--install(TARGETS KPimSMTP EXPORT KPimSMTPTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
-+install(TARGETS KPimSMTP EXPORT KPimSMTPTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
- 
- install(FILES
-     ${CMAKE_CURRENT_BINARY_DIR}/ksmtp_export.h
--- 
-2.15.1
-
diff --git a/pkgs/applications/kde/ksmtp/default.nix b/pkgs/applications/kde/ksmtp/default.nix
index 1e5a43f352132..591426e141e08 100644
--- a/pkgs/applications/kde/ksmtp/default.nix
+++ b/pkgs/applications/kde/ksmtp/default.nix
@@ -13,5 +13,8 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [ kcoreaddons kio kmime ];
   propagatedBuildInputs = [ cyrus_sasl ];
-  patches = [ ./0001-Use-KDE_INSTALL_TARGETS_DEFAULT_ARGS-when-installing.patch ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$out/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/ktnef.nix b/pkgs/applications/kde/ktnef.nix
index fec85644aa715..4b0e751734e15 100644
--- a/pkgs/applications/kde/ktnef.nix
+++ b/pkgs/applications/kde/ktnef.nix
@@ -15,4 +15,8 @@ mkDerivation {
     kcalendarcore kcalutils kcontacts
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/plasma-mobile/ktrip.nix b/pkgs/applications/kde/ktrip.nix
index 5377dd1065865..5377dd1065865 100644
--- a/pkgs/applications/plasma-mobile/ktrip.nix
+++ b/pkgs/applications/kde/ktrip.nix
diff --git a/pkgs/applications/plasma-mobile/kweather.nix b/pkgs/applications/kde/kweather.nix
index d6a1f999ce651..d6a1f999ce651 100644
--- a/pkgs/applications/plasma-mobile/kweather.nix
+++ b/pkgs/applications/kde/kweather.nix
diff --git a/pkgs/applications/kde/libgravatar.nix b/pkgs/applications/kde/libgravatar.nix
index 2055d7bd36b39..0335ded006521 100644
--- a/pkgs/applications/kde/libgravatar.nix
+++ b/pkgs/applications/kde/libgravatar.nix
@@ -15,4 +15,8 @@ mkDerivation {
     kconfig kio ktextwidgets kwidgetsaddons pimcommon
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/libkcddb.nix b/pkgs/applications/kde/libkcddb.nix
index 3dde496050253..d7523de0db8a5 100644
--- a/pkgs/applications/kde/libkcddb.nix
+++ b/pkgs/applications/kde/libkcddb.nix
@@ -1,5 +1,5 @@
 { mkDerivation, lib, extra-cmake-modules, qtbase, kdoctools
-, kcodecs, ki18n, kio, kwidgetsaddons
+, kcodecs, ki18n, kio, kwidgetsaddons, kcmutils
 , libmusicbrainz5 }:
 
 mkDerivation {
@@ -9,7 +9,7 @@ mkDerivation {
     maintainers = with maintainers; [ peterhoeg ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  buildInputs = [ qtbase ];
+  buildInputs = [ qtbase kcmutils ];
   propagatedBuildInputs = [
     kcodecs ki18n kio kwidgetsaddons
     libmusicbrainz5
diff --git a/pkgs/applications/kde/libkdepim.nix b/pkgs/applications/kde/libkdepim.nix
index 5fafd2e1effc2..7e66a17e5dc43 100644
--- a/pkgs/applications/kde/libkdepim.nix
+++ b/pkgs/applications/kde/libkdepim.nix
@@ -18,4 +18,8 @@ mkDerivation {
     kconfigwidgets kcontacts ki18n kiconthemes kio kitemviews kjobwidgets kldap
     kwallet
   ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$out/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/libkleo.nix b/pkgs/applications/kde/libkleo.nix
index 0cd858ea6e0a0..32369495aefa3 100644
--- a/pkgs/applications/kde/libkleo.nix
+++ b/pkgs/applications/kde/libkleo.nix
@@ -18,4 +18,8 @@ mkDerivation {
   ];
   propagatedBuildInputs = [ qgpgme ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/mailcommon.nix b/pkgs/applications/kde/mailcommon.nix
index af29ff41681e2..d9885058ef895 100644
--- a/pkgs/applications/kde/mailcommon.nix
+++ b/pkgs/applications/kde/mailcommon.nix
@@ -19,4 +19,8 @@ mkDerivation {
     kwindowsystem mailimporter messagelib phonon libkdepim
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/mailimporter.nix b/pkgs/applications/kde/mailimporter.nix
index 745316fbaf9ae..08503ba9e8312 100644
--- a/pkgs/applications/kde/mailimporter.nix
+++ b/pkgs/applications/kde/mailimporter.nix
@@ -16,4 +16,8 @@ mkDerivation {
     akonadi akonadi-mime karchive kcompletion kconfig kcoreaddons ki18n kmime
     kxmlgui libkdepim pimcommon
   ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$out/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/kde/messagelib.nix b/pkgs/applications/kde/messagelib.nix
index d52989d3ffc0a..abd9382a1f0ff 100644
--- a/pkgs/applications/kde/messagelib.nix
+++ b/pkgs/applications/kde/messagelib.nix
@@ -26,4 +26,8 @@ mkDerivation {
     qtwebengine
   ];
   outputs = [ "out" "dev" ];
+  postInstall = ''
+    # added as an include directory by cmake files and fails to compile if it's missing
+    mkdir -p "$dev/include/KF5"
+  '';
 }
diff --git a/pkgs/applications/plasma-mobile/neochat.nix b/pkgs/applications/kde/neochat.nix
index 8b3da82b8b885..4df33add6795e 100644
--- a/pkgs/applications/plasma-mobile/neochat.nix
+++ b/pkgs/applications/kde/neochat.nix
@@ -1,6 +1,5 @@
-{ gcc12Stdenv
+{ mkDerivation
 , lib
-, srcs
 
 , cmake
 , extra-cmake-modules
@@ -30,10 +29,8 @@
 , sonnet
 }:
 
-# Workaround for AArch64 not using GCC11 yet.
-gcc12Stdenv.mkDerivation rec {
+mkDerivation {
   pname = "neochat";
-  inherit (srcs.neochat) version src;
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix
index e2d468b4ff7b2..727fc673b1745 100644
--- a/pkgs/applications/kde/okular.nix
+++ b/pkgs/applications/kde/okular.nix
@@ -5,7 +5,7 @@
 , kdbusaddons, kdegraphics-mobipocket, kiconthemes, kjs, khtml, kio, kparts
 , kpty, kpurpose, kwallet, kwindowsystem, libkexiv2, libspectre, libzip, phonon, poppler
 , qca-qt5, qtdeclarative, qtsvg, threadweaver, kcrash
-, withSpeech ? true, qtspeech
+, withSpeech ? true, qtspeech, qtx11extras
 }:
 
 mkDerivation {
@@ -18,7 +18,7 @@ mkDerivation {
     kcompletion kconfig kconfigwidgets kcoreaddons kdbusaddons
     kdegraphics-mobipocket kiconthemes kjs khtml kio kparts kpty kpurpose kwallet
     kwindowsystem libkexiv2 libspectre libzip phonon poppler qca-qt5
-    qtdeclarative qtsvg threadweaver kcrash chmlib
+    qtdeclarative qtsvg threadweaver kcrash chmlib qtx11extras
   ] ++ lib.optional withSpeech qtspeech;
 
   # InitialPreference values are too high and end up making okular
diff --git a/pkgs/applications/kde/pimcommon.nix b/pkgs/applications/kde/pimcommon.nix
index 896c202529a67..d82bc3f506b50 100644
--- a/pkgs/applications/kde/pimcommon.nix
+++ b/pkgs/applications/kde/pimcommon.nix
@@ -4,7 +4,7 @@
   akonadi, akonadi-contacts, akonadi-mime, akonadi-search, grantlee, karchive, kcmutils, kcodecs,
   kcompletion, kconfig, kconfigwidgets, kcontacts, kdbusaddons,
   kiconthemes, kimap, kio, kitemmodels, kjobwidgets, kldap, knewstuff, kpimtextedit,
-  kpurpose, kwallet, kwindowsystem, libkdepim, qtwebengine
+  kpurpose, kwallet, kwindowsystem, libkdepim, qtwebengine, ktextaddons
 }:
 
 mkDerivation {
@@ -17,7 +17,7 @@ mkDerivation {
   buildInputs = [
     akonadi-mime grantlee karchive kcmutils kcodecs kcompletion kconfigwidgets
     kdbusaddons kiconthemes kio kitemmodels kjobwidgets knewstuff kldap
-    kpurpose kwallet kwindowsystem libkdepim qtwebengine
+    kpurpose kwallet kwindowsystem libkdepim qtwebengine ktextaddons
   ];
   propagatedBuildInputs = [
     akonadi akonadi-contacts akonadi-search kconfig kcontacts kimap kpimtextedit
diff --git a/pkgs/applications/plasma-mobile/plasmatube/default.nix b/pkgs/applications/kde/plasmatube/default.nix
index c9753babeaaf0..555b9f801c228 100644
--- a/pkgs/applications/plasma-mobile/plasmatube/default.nix
+++ b/pkgs/applications/kde/plasmatube/default.nix
@@ -11,7 +11,6 @@
 , mpv
 , qtmultimedia
 , qtquickcontrols2
-, yt-dlp
 }:
 
 mkDerivation {
@@ -37,15 +36,6 @@ mkDerivation {
     gstreamer
   ]);
 
-  patches = [
-    ./0001-Add-placeholders-for-runtime-dependencies.patch
-  ];
-
-  postPatch = ''
-    substituteInPlace src/videomodel.cpp \
-      --replace "@yt-dlp@" "${yt-dlp}/bin/yt-dlp"
-  '';
-
   preFixup = ''
     qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
diff --git a/pkgs/applications/plasma-mobile/qmlkonsole.nix b/pkgs/applications/kde/qmlkonsole.nix
index da892fb47c0e4..da892fb47c0e4 100644
--- a/pkgs/applications/plasma-mobile/qmlkonsole.nix
+++ b/pkgs/applications/kde/qmlkonsole.nix
diff --git a/pkgs/applications/kde/spectacle.nix b/pkgs/applications/kde/spectacle.nix
index cbba15beebc72..93e3f8563980d 100644
--- a/pkgs/applications/kde/spectacle.nix
+++ b/pkgs/applications/kde/spectacle.nix
@@ -4,20 +4,30 @@
 , kconfig, kcoreaddons, kdbusaddons, kdeclarative, kio, kipi-plugins
 , knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi
 , qtx11extras, knewstuff, kwayland, qttools, kcolorpicker, kimageannotator
+, qcoro, qtquickcontrols2, wayland, plasma-wayland-protocols, kpurpose, kpipewire
+, wrapGAppsHook
 }:
 
 mkDerivation {
   pname = "spectacle";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
   buildInputs = [
     kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
     kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras xcb-util-cursor
-    knewstuff kwayland kcolorpicker kimageannotator
+    knewstuff kwayland kcolorpicker kimageannotator qcoro qtquickcontrols2
+    wayland plasma-wayland-protocols kpurpose kpipewire
   ];
   postPatch = ''
     substituteInPlace desktop/org.kde.spectacle.desktop.cmake \
       --replace "Exec=@QtBinariesDir@/qdbus" "Exec=${lib.getBin qttools}/bin/qdbus"
   '';
+
+  dontWrapGApps = true;
+
+  preFixup = ''
+    qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   propagatedUserEnvPkgs = [ kipi-plugins libkipi ];
   meta = with lib; {
     homepage = "https://apps.kde.org/spectacle/";
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 91f2e0be1cca5..09fa4856ed939 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -4,1875 +4,2051 @@
 
 {
   akonadi = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-22.12.3.tar.xz";
-      sha256 = "18w0rrdqawxsgzzv3a9f6fic0dcj3cgq58xa74d09s7150k377mp";
-      name = "akonadi-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-23.04.0.tar.xz";
+      sha256 = "1kjf148mxlsq9gb1civic4vrgmv5izqp2nrlb7iv4hn76zbw6a75";
+      name = "akonadi-23.04.0.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-calendar-22.12.3.tar.xz";
-      sha256 = "1bksdbghqzql055lz7k90npjd7ql925ykpprshdgsaf3kxrw9qpb";
-      name = "akonadi-calendar-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-calendar-23.04.0.tar.xz";
+      sha256 = "1nkc1vdsm5mc26hslm96f3pwcwd1wjra88a1s58rrbr0x1vcyn7f";
+      name = "akonadi-calendar-23.04.0.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-calendar-tools-22.12.3.tar.xz";
-      sha256 = "0fi96vdh92y9in1yzphc59zjnisd9i9wck1d28542c2s2qbmjmcn";
-      name = "akonadi-calendar-tools-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-calendar-tools-23.04.0.tar.xz";
+      sha256 = "1wav48zg9hxh9s80w3096v7528cyskqjr0hq8vizgs3vbhdkk0db";
+      name = "akonadi-calendar-tools-23.04.0.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-contacts-22.12.3.tar.xz";
-      sha256 = "1vh34g7665all7bxps3akxvlg40rhddrwk8mw9nfpv4gfzyqv33p";
-      name = "akonadi-contacts-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-contacts-23.04.0.tar.xz";
+      sha256 = "0fzqsx0j26hwn8nm55cnd4ibhisdn99g1w31kfkzvm13hw2idn5g";
+      name = "akonadi-contacts-23.04.0.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-import-wizard-22.12.3.tar.xz";
-      sha256 = "0j7jav3nymhajwwhixapip9dvw7gx8wcjrf94ap1d1xr44kvmh32";
-      name = "akonadi-import-wizard-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-import-wizard-23.04.0.tar.xz";
+      sha256 = "16ym0dsvrrrax3araz0626sh6yja2apw2hv2z4mg2yh2gzcccs89";
+      name = "akonadi-import-wizard-23.04.0.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-mime-22.12.3.tar.xz";
-      sha256 = "00y1w9nzvdy7124552gi587z320c17gfqghxacvc45hiwq4c5p45";
-      name = "akonadi-mime-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-mime-23.04.0.tar.xz";
+      sha256 = "105pjp303jyc5x1j7d8cxvzr1snd50i0qhvnvb4yyzi7rv2pa4m9";
+      name = "akonadi-mime-23.04.0.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-notes-22.12.3.tar.xz";
-      sha256 = "13gc8ihraqh80a467cw7q9yf9h4l5m55n27h38inj4aw503zb4j7";
-      name = "akonadi-notes-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-notes-23.04.0.tar.xz";
+      sha256 = "0gzr9zcx1vyl8c273pb9mskfv6qxjyq2mq4kzkc19bhnk3w4zxn4";
+      name = "akonadi-notes-23.04.0.tar.xz";
     };
   };
   akonadi-search = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadi-search-22.12.3.tar.xz";
-      sha256 = "1hp5aq4w85fwml8r45q6gxwss2ihh6rsb3hdhxsdsvyyx5lr0mqv";
-      name = "akonadi-search-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadi-search-23.04.0.tar.xz";
+      sha256 = "18bg2qn041skiscqv63273g6hfz6nvl5dcjrnr8l51zc08wqkla6";
+      name = "akonadi-search-23.04.0.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akonadiconsole-22.12.3.tar.xz";
-      sha256 = "0ch93g5dajgp96yzsrh9sj0xbhy494bci1xx8jrfz6zdl3m6l9hr";
-      name = "akonadiconsole-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akonadiconsole-23.04.0.tar.xz";
+      sha256 = "018sdkd6fpca9jcdbapb9582ga3gzv4gxxp7yaxg3a5k03rmbp50";
+      name = "akonadiconsole-23.04.0.tar.xz";
     };
   };
   akregator = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/akregator-22.12.3.tar.xz";
-      sha256 = "1zrcfw9h8plrmba7ax0pg34mc8zgqc4yvb8bvqfcq635ahgb9cdm";
-      name = "akregator-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/akregator-23.04.0.tar.xz";
+      sha256 = "0zh05vbrac59j9fwrsnva0445m6r3345dd96ljyxi5w312nhkv9f";
+      name = "akregator-23.04.0.tar.xz";
+    };
+  };
+  alligator = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/alligator-23.04.0.tar.xz";
+      sha256 = "1zdm37bzbczd5149zynd6wxk51ipccmifr1if0km2igg5ajw687s";
+      name = "alligator-23.04.0.tar.xz";
     };
   };
   analitza = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/analitza-22.12.3.tar.xz";
-      sha256 = "155rv5lg4acf5bpamv2ksw63m61zndmjybvh64mr9cdgpip2db3r";
-      name = "analitza-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/analitza-23.04.0.tar.xz";
+      sha256 = "137iq0mwyiy007kbm78xv3szzmr7zp89pc80lajng5q76c6ynybx";
+      name = "analitza-23.04.0.tar.xz";
+    };
+  };
+  angelfish = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/angelfish-23.04.0.tar.xz";
+      sha256 = "06v9y3fn1i213rffvyrsj68pjpw76b5svlqvqvjkmp6q17rap543";
+      name = "angelfish-23.04.0.tar.xz";
     };
   };
   ark = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ark-22.12.3.tar.xz";
-      sha256 = "06kw6l0r0ynfcaq0icw55xs3yimbl3ybw717i08ksg96ks9rggl2";
-      name = "ark-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ark-23.04.0.tar.xz";
+      sha256 = "1r9haddbzbqzngv7867v49rffmv0z9w56sbg37y9gi2w1834armf";
+      name = "ark-23.04.0.tar.xz";
     };
   };
   artikulate = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/artikulate-22.12.3.tar.xz";
-      sha256 = "1lpx9rwcfsyhwxa9xzggy2l8kdbrjcfvccb4m309j2ww4n0ym6ij";
-      name = "artikulate-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/artikulate-23.04.0.tar.xz";
+      sha256 = "0kd1grmbp9q2ax0bzay19xqlv1hb66s58rsxvlhjdyz9lcn6y7fl";
+      name = "artikulate-23.04.0.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/audiocd-kio-23.04.0.tar.xz";
+      sha256 = "11z7kdr4xi3361qds6glhs61i9szm08k2pi5bj07vd8rah5nigzy";
+      name = "audiocd-kio-23.04.0.tar.xz";
+    };
+  };
+  audiotube = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/audiocd-kio-22.12.3.tar.xz";
-      sha256 = "19fi0ph9h5hk2n55qmg3jygq8zzynjz8xxyca2k60z0d426m23mq";
-      name = "audiocd-kio-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/audiotube-23.04.0.tar.xz";
+      sha256 = "0lcxbsajdz34mnjchkbx8nj4iddyqhsjyclyfywknyn8w23vh8mi";
+      name = "audiotube-23.04.0.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/baloo-widgets-22.12.3.tar.xz";
-      sha256 = "0cl4n591yjw6i6wjav56pq0070cn514ydqcap1jhkpw7xhi0d785";
-      name = "baloo-widgets-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/baloo-widgets-23.04.0.tar.xz";
+      sha256 = "15aw2ark1nh99adk49lcj33fpci8g6f9d610xkd77rr786g3pbjf";
+      name = "baloo-widgets-23.04.0.tar.xz";
     };
   };
   blinken = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/blinken-22.12.3.tar.xz";
-      sha256 = "0kn04iagw9dkpn1l75c9djl20waiyay4dxfs8iq8r7l6ai36v806";
-      name = "blinken-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/blinken-23.04.0.tar.xz";
+      sha256 = "03snnh5cdqcjga525bjl5hnnhwbgv9khpqq32z5v9glp97qddp2x";
+      name = "blinken-23.04.0.tar.xz";
     };
   };
   bomber = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/bomber-22.12.3.tar.xz";
-      sha256 = "0jwgrca2lq3jg42kk2211040s0z8667ckmh32vip267h2zvs33jd";
-      name = "bomber-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/bomber-23.04.0.tar.xz";
+      sha256 = "0lrg5agkkxm0xfjgid2y3vvrbyc73vayfd5y5bhmvcc9j4962dqy";
+      name = "bomber-23.04.0.tar.xz";
     };
   };
   bovo = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/bovo-22.12.3.tar.xz";
-      sha256 = "12rffxwshsbmzi3cflx5dl1hpr3nwdx0680qpzpi86vsk46jj9zs";
-      name = "bovo-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/bovo-23.04.0.tar.xz";
+      sha256 = "1m7wf4mahcn41b3j6inil0wmwhazb96dbwky1czgplhvm3ijpv31";
+      name = "bovo-23.04.0.tar.xz";
     };
   };
   calendarsupport = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/calendarsupport-22.12.3.tar.xz";
-      sha256 = "1dbvn1n947r4miabh2hqfgfs2b02i0wdvd0dxlpmc44xm2r0a8ka";
-      name = "calendarsupport-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/calendarsupport-23.04.0.tar.xz";
+      sha256 = "1jij2a8dqhski6m2rs0r2vpbyn4bpw9m8mysfj5bbn68dv3crw1a";
+      name = "calendarsupport-23.04.0.tar.xz";
+    };
+  };
+  calindori = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/calindori-23.04.0.tar.xz";
+      sha256 = "0c14gbf3h50g049kl4npirrdb3x20sr23r2la2nbgb2x057b65x6";
+      name = "calindori-23.04.0.tar.xz";
     };
   };
   cantor = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/cantor-22.12.3.tar.xz";
-      sha256 = "0awjlnqwvy003gpsmyhp3g865xfxfl1h3vmqgxhrjwwgnv0f4xxn";
-      name = "cantor-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/cantor-23.04.0.tar.xz";
+      sha256 = "19zw91v4snxh18l3n0i8mik8f1rczcd7n520m4rr7kay0v03p7j4";
+      name = "cantor-23.04.0.tar.xz";
     };
   };
   cervisia = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/cervisia-22.12.3.tar.xz";
-      sha256 = "0ksvidsvnzc678gar1dry5yv535x9q022c4cxspl02kyiaqwm2y2";
-      name = "cervisia-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/cervisia-23.04.0.tar.xz";
+      sha256 = "00p4x68zrh6njnaz6pjd0ai3h4z3ax5ic8w195dcymkd1s4jfvdj";
+      name = "cervisia-23.04.0.tar.xz";
     };
   };
   colord-kde = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/colord-kde-22.12.3.tar.xz";
-      sha256 = "0k2qjhlwdm4q7xhlzwxhafcf4fq88saq3v8m4m50xs2gipanmvxf";
-      name = "colord-kde-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/colord-kde-23.04.0.tar.xz";
+      sha256 = "1p4p7j6qswk99xzm99x1s2ci6qsvw38hnxzrp885cpfq85wkl02i";
+      name = "colord-kde-23.04.0.tar.xz";
     };
   };
   dolphin = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/dolphin-22.12.3.tar.xz";
-      sha256 = "0nhbfra4gkk5338fhv91gbndznr3mkki7m1kcvrzs91x067m79qs";
-      name = "dolphin-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/dolphin-23.04.0.tar.xz";
+      sha256 = "0l3c015z737l88m97rpp3nanrci5zvgzn96lhwsja2837f52cjfd";
+      name = "dolphin-23.04.0.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/dolphin-plugins-22.12.3.tar.xz";
-      sha256 = "0fglzs9gix4lqnrb4h3bw4dxxmzx6gmv1dbc5q52q3k1ihgi9fyb";
-      name = "dolphin-plugins-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/dolphin-plugins-23.04.0.tar.xz";
+      sha256 = "1mnhmv7zrnai8ns06cwsdmj7afhsbq1d32vsqy3w8h37kh9di938";
+      name = "dolphin-plugins-23.04.0.tar.xz";
     };
   };
   dragon = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/dragon-22.12.3.tar.xz";
-      sha256 = "1qiq626wm1skrcz2xvhadr8d3rxypvhal1f8ii9qgra1nwhbmxls";
-      name = "dragon-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/dragon-23.04.0.tar.xz";
+      sha256 = "1fx9r74y5hf1w8c9m3z7jk25l5sgx1gb8ji7pzpj7779igbw7if4";
+      name = "dragon-23.04.0.tar.xz";
     };
   };
   elisa = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/elisa-22.12.3.tar.xz";
-      sha256 = "0gxjrf5vxxaz3pwq2vnibxmsw0ppmp1cdkjysg6sl1zy5rj2zcbr";
-      name = "elisa-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/elisa-23.04.0.tar.xz";
+      sha256 = "0qsdg1bp2l1nb8spla1g200swxncq7kli1qs0x5868gps0n5g1m0";
+      name = "elisa-23.04.0.tar.xz";
     };
   };
   eventviews = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/eventviews-22.12.3.tar.xz";
-      sha256 = "0s9n7gq6s4dc5xrx1snc9c4qp79il1r55mjkcjjc7a38h1j0xzrn";
-      name = "eventviews-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/eventviews-23.04.0.tar.xz";
+      sha256 = "03a3yiyljiyzlwrxywyl3lp2fnzwdfs5fszvcmm3cw04ahzq7aqn";
+      name = "eventviews-23.04.0.tar.xz";
     };
   };
   falkon = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/falkon-22.12.3.tar.xz";
-      sha256 = "081cf6qs3ziimzmhx2m976i3cfn0d89ncaxnnmqbamalsdvs5hcf";
-      name = "falkon-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/falkon-23.04.0.tar.xz";
+      sha256 = "0x0jq3vr2w5fkqvbpvpw9zn072b9syf2yvxdy2kqn073x2yj86cz";
+      name = "falkon-23.04.0.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ffmpegthumbs-22.12.3.tar.xz";
-      sha256 = "14y1w7v34ilmbs4hb1sypgmq67cxrik5yfa63z1wlvmx3ww37w7s";
-      name = "ffmpegthumbs-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ffmpegthumbs-23.04.0.tar.xz";
+      sha256 = "0p3giicpp7a5vr7vq4lpsnan47g1k7s0v1jbiq6makjlyzch93fc";
+      name = "ffmpegthumbs-23.04.0.tar.xz";
     };
   };
   filelight = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/filelight-23.04.0.tar.xz";
+      sha256 = "09hg0n9bm9v22g48jmfhh69j9dl0a6y56aqgq2hyzbpfsw74baic";
+      name = "filelight-23.04.0.tar.xz";
+    };
+  };
+  ghostwriter = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/filelight-22.12.3.tar.xz";
-      sha256 = "105v861b8w3a89rng7agjhhcx4kh58djrpi6n0azd6r01f8yxhmc";
-      name = "filelight-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ghostwriter-23.04.0.tar.xz";
+      sha256 = "1ymwsg9a9x7a18kgir5ji76salll39llqkwsd4qwhnb4nfl7q31x";
+      name = "ghostwriter-23.04.0.tar.xz";
     };
   };
   granatier = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/granatier-22.12.3.tar.xz";
-      sha256 = "1l8w9frqnh6lqyq8345igilsabavg37wk8vaabzjh4bg5lv5ngxl";
-      name = "granatier-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/granatier-23.04.0.tar.xz";
+      sha256 = "0qp7d9hxzjqnr2ap9icbl99r33xn9d6yfzgi640bjri49607c1dh";
+      name = "granatier-23.04.0.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/grantlee-editor-22.12.3.tar.xz";
-      sha256 = "09rrgqwjk1430vl84bp3xm3wbfdm0kz952kk723jz9b7xhm0sz0k";
-      name = "grantlee-editor-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/grantlee-editor-23.04.0.tar.xz";
+      sha256 = "0mf2f08i1fabs3s23i1p0014c8rsphnksxq9r79rkmi96dzppg92";
+      name = "grantlee-editor-23.04.0.tar.xz";
     };
   };
   grantleetheme = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/grantleetheme-22.12.3.tar.xz";
-      sha256 = "0lpsjj8k3dq0b9i2q9psk1smgkh07kjc7bsha3z0kxwy7ldadaz4";
-      name = "grantleetheme-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/grantleetheme-23.04.0.tar.xz";
+      sha256 = "15bkmgkkg2paanva0hwgq8dlbqh43041jjfvc454cms8rga64r2w";
+      name = "grantleetheme-23.04.0.tar.xz";
     };
   };
   gwenview = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/gwenview-22.12.3.tar.xz";
-      sha256 = "0q2l01zapw6lnm6qcsp3vhvbfsq837hzszmmzb2w7xnpaq4wf7aa";
-      name = "gwenview-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/gwenview-23.04.0.tar.xz";
+      sha256 = "0355fsf5kaiv1p29qz7alp4n0gyzfcrji3ysn0k7blqv8ys82gdn";
+      name = "gwenview-23.04.0.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/incidenceeditor-22.12.3.tar.xz";
-      sha256 = "15g9432175wqrkl5s9mj558lyrc2bdc7w54skkwkaai14i14s0pm";
-      name = "incidenceeditor-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/incidenceeditor-23.04.0.tar.xz";
+      sha256 = "0j0c06yr86l5pmjpsdq144sga31fap51z0f2bp565c89wiia24ci";
+      name = "incidenceeditor-23.04.0.tar.xz";
     };
   };
   itinerary = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/itinerary-22.12.3.tar.xz";
-      sha256 = "1qlx401vw6xh6hdcypvzm7wbcw72ljkzaxp6sywpcdz4xfpkdml0";
-      name = "itinerary-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/itinerary-23.04.0.tar.xz";
+      sha256 = "0zpac80f56bmy90jhv6iwa3qn0vb3kaijyc5imbw4iiqdv1z32j3";
+      name = "itinerary-23.04.0.tar.xz";
     };
   };
   juk = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/juk-22.12.3.tar.xz";
-      sha256 = "0y3v0754ax0w6zn9rbydl0jfshgpm5czcckyz3vp7p2sv2bkmqmc";
-      name = "juk-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/juk-23.04.0.tar.xz";
+      sha256 = "0ij8galk8g8pcdy9ax4b6cyjrw6gpcwfka7fhj1jnzrxl5c2sbwq";
+      name = "juk-23.04.0.tar.xz";
     };
   };
   k3b = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/k3b-22.12.3.tar.xz";
-      sha256 = "0alavrz6rd8i1amb06b0fynadygqsh9pwx9njvli6gl959paj94r";
-      name = "k3b-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/k3b-23.04.0.tar.xz";
+      sha256 = "0gh1ib5q8l41891ba1lw89xhsfpq90z9dnyzahq9n3850d0i4m4b";
+      name = "k3b-23.04.0.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kaccounts-integration-22.12.3.tar.xz";
-      sha256 = "0rp8km77vbrjmxyg1sizq6cprl7hjx1x31qqj12pnr35vmzbi8fa";
-      name = "kaccounts-integration-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kaccounts-integration-23.04.0.tar.xz";
+      sha256 = "1676i8fw8cs8ibc09wni1054nm56nah1rqxygai7d8wwazvqq1ls";
+      name = "kaccounts-integration-23.04.0.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kaccounts-providers-22.12.3.tar.xz";
-      sha256 = "1x1lf24aw9phyr20cjfqhwmmlb6r1iqlb4kvk39hdjzapzw3g505";
-      name = "kaccounts-providers-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kaccounts-providers-23.04.0.tar.xz";
+      sha256 = "07kvahlnxgcqmnqb6yzgk2vxgk46y5h5qcfjlvara62vrwx82dyg";
+      name = "kaccounts-providers-23.04.0.tar.xz";
     };
   };
   kaddressbook = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kaddressbook-22.12.3.tar.xz";
-      sha256 = "1dhcifdm15q0har47z9xicjgk5rffr8q7l6bvzza5i281nkxbdby";
-      name = "kaddressbook-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kaddressbook-23.04.0.tar.xz";
+      sha256 = "0v69q1s1vwwqrifkwlrs28bbzyjf5dn0s20v0fadz9cq1mn7749w";
+      name = "kaddressbook-23.04.0.tar.xz";
     };
   };
   kajongg = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kajongg-22.12.3.tar.xz";
-      sha256 = "13bn6mgfbjxpp4xp6xn3nbxjrxfhxblvjnhjcvc3qxcbkjniqzlh";
-      name = "kajongg-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kajongg-23.04.0.tar.xz";
+      sha256 = "013p7smfsmdp6j7cwdca0n0616jyn8y2rrq3lxgv997ngb4bsc9h";
+      name = "kajongg-23.04.0.tar.xz";
     };
   };
   kalarm = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kalarm-22.12.3.tar.xz";
-      sha256 = "074c99an6hawvklgpm6jc415cffa8fadv7r1c5sbiydl7jxkwlh5";
-      name = "kalarm-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kalarm-23.04.0.tar.xz";
+      sha256 = "0cd1b8jhnkizj9yy77gd0hz8r5ya8fqng91ggxc0xicqk4w4db9s";
+      name = "kalarm-23.04.0.tar.xz";
     };
   };
   kalendar = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kalendar-22.12.3.tar.xz";
-      sha256 = "1d82hs7dlrpixfp097i7kh3s1hi23h61cb491rbx0y76c2kp9ian";
-      name = "kalendar-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kalendar-23.04.0.tar.xz";
+      sha256 = "0rl7yrknvbipn04f4rznqgddic3rhyxip5ljv3qmgis49gxk2qzf";
+      name = "kalendar-23.04.0.tar.xz";
     };
   };
   kalgebra = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kalgebra-22.12.3.tar.xz";
-      sha256 = "1rv72c3z1zwbym4lrmd1k9mnsh6bk3jhgwg9jynlsbn68wwk2d6y";
-      name = "kalgebra-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kalgebra-23.04.0.tar.xz";
+      sha256 = "16pvs4qbwx7k7sz1wk7dl2p1d90clgzpcn9xg0vwqg9qzs7f31dl";
+      name = "kalgebra-23.04.0.tar.xz";
+    };
+  };
+  kalk = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kalk-23.04.0.tar.xz";
+      sha256 = "1xhz1igya9b3g6p3xs90p6ax663biszh27i5biw954h2vjyx3csb";
+      name = "kalk-23.04.0.tar.xz";
     };
   };
   kalzium = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kalzium-22.12.3.tar.xz";
-      sha256 = "0vd6r2n3vlszwn4qnapasczgkmi7llh8izk1mn4cfc3dprp2jq8b";
-      name = "kalzium-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kalzium-23.04.0.tar.xz";
+      sha256 = "0vl17ni60q8y2rh8ihh9gvqq6f231aclvyiv110bqxhhlmy63jrp";
+      name = "kalzium-23.04.0.tar.xz";
     };
   };
   kamera = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kamera-22.12.3.tar.xz";
-      sha256 = "03hfc8rb3ykkmcgyjvm8ywxr5cs98zr6yk468n380pax523c958h";
-      name = "kamera-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kamera-23.04.0.tar.xz";
+      sha256 = "1a0x92xm9c62mvav2w7iymjyabzw34d6l5ia4p2aji761lynzghj";
+      name = "kamera-23.04.0.tar.xz";
     };
   };
   kamoso = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kamoso-22.12.3.tar.xz";
-      sha256 = "1pisjv5c8d79j8hvssajwc60w1dkp0xnmlask15qaywk1a8ql7p4";
-      name = "kamoso-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kamoso-23.04.0.tar.xz";
+      sha256 = "1whj3h328vmnfxw4fn4g223sia17rjn81z670pi8fq318l76kf3a";
+      name = "kamoso-23.04.0.tar.xz";
     };
   };
   kanagram = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kanagram-22.12.3.tar.xz";
-      sha256 = "1cliapj1lshs153h012wkqsl6366x96pp69wrn5k70bkxa2pr7hl";
-      name = "kanagram-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kanagram-23.04.0.tar.xz";
+      sha256 = "1jhx5l0d15pajpw30v7gpxp9rlhg38sk8sm05lwmzvw41r5jqcas";
+      name = "kanagram-23.04.0.tar.xz";
     };
   };
   kapman = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kapman-22.12.3.tar.xz";
-      sha256 = "0wy1b60gpwl6495kq06jxrc604y5k0cglhg9brvqd15yqvrpiwm7";
-      name = "kapman-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kapman-23.04.0.tar.xz";
+      sha256 = "0d3078sy9zlnqfz1wdvyfcgf09awz3xajm9xyk4bcgk4viyb7748";
+      name = "kapman-23.04.0.tar.xz";
     };
   };
   kapptemplate = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kapptemplate-23.04.0.tar.xz";
+      sha256 = "0yq3z8mfai1b1h4w59f0nzkr7sxh33cr1zmzmv02rp4i96bvm2ak";
+      name = "kapptemplate-23.04.0.tar.xz";
+    };
+  };
+  kasts = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kapptemplate-22.12.3.tar.xz";
-      sha256 = "0v115r2b108l22bf4vyqhw71mnqzkb30vsy7k385hjirzkpfjx1h";
-      name = "kapptemplate-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kasts-23.04.0.tar.xz";
+      sha256 = "0kqkx5i8yw0139kycxy51akrxxi2zikhvqcjzfnncn7pr8bkcpwq";
+      name = "kasts-23.04.0.tar.xz";
     };
   };
   kate = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kate-22.12.3.tar.xz";
-      sha256 = "0gj4iwc5bs5kb4m92h4gq47cyyny866rk8d03lqcghyhvaw0bysv";
-      name = "kate-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kate-23.04.0.tar.xz";
+      sha256 = "038w3kyca2dm498g3rg4dis1z8r2bqamq1z3lwvpkylq3x83772q";
+      name = "kate-23.04.0.tar.xz";
     };
   };
   katomic = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/katomic-22.12.3.tar.xz";
-      sha256 = "064khd6c2zrw02f0jjp52qmx073p0zrlzn9vbqbq6rswpzbskam8";
-      name = "katomic-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/katomic-23.04.0.tar.xz";
+      sha256 = "16ym7c4w58krdxq0qplfyz9bifdbc5phz4dd69p4zwrl5bq7ibfk";
+      name = "katomic-23.04.0.tar.xz";
     };
   };
   kbackup = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kbackup-22.12.3.tar.xz";
-      sha256 = "04nq7sfynk9bsb1jhra7qrhiyc8hm2gwyb4x68jsqajszl3krjqg";
-      name = "kbackup-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kbackup-23.04.0.tar.xz";
+      sha256 = "1wzdkcnbqxzwwjvya7ii3fm65p0kmmbsbxpys9cwd5q4cjk9fjvc";
+      name = "kbackup-23.04.0.tar.xz";
     };
   };
   kblackbox = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kblackbox-22.12.3.tar.xz";
-      sha256 = "0gn1kj5az1i35jfcsj2dbx8h2ndq5iiqjwhv3v0gil98vfk11zxi";
-      name = "kblackbox-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kblackbox-23.04.0.tar.xz";
+      sha256 = "1qmkfvgnx9kmvb9cl3jkqpicwxgrvy6irpgbwwxnncphbcpchja9";
+      name = "kblackbox-23.04.0.tar.xz";
     };
   };
   kblocks = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kblocks-22.12.3.tar.xz";
-      sha256 = "0pnad7p16cfb8arffn0b019ciq0li6bnb7qmwr32jad6gvjhnbx4";
-      name = "kblocks-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kblocks-23.04.0.tar.xz";
+      sha256 = "04kxwsw9xm8a45ynz6ja0zzkgh4wy3kl9ryghhyklffy2q8q3w2j";
+      name = "kblocks-23.04.0.tar.xz";
     };
   };
   kbounce = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kbounce-22.12.3.tar.xz";
-      sha256 = "1hjw9g0wivxyr6qd08dfbqlfhynvaxg5hfr2zrl6kh0fh7wywzpi";
-      name = "kbounce-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kbounce-23.04.0.tar.xz";
+      sha256 = "0mdzn74bbg11mzzmgfn7yd97qss8ciqb4cgwpj7y1z4br64k9ywr";
+      name = "kbounce-23.04.0.tar.xz";
     };
   };
   kbreakout = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kbreakout-22.12.3.tar.xz";
-      sha256 = "0s32fq3dlakql44db4grizgs0gaavm4scsn8vjj7rabqwmqx2nxs";
-      name = "kbreakout-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kbreakout-23.04.0.tar.xz";
+      sha256 = "0i5a8zpj3kqcwm3w6ipb2y0030li487wr287ks0gam9wbgmsw2ck";
+      name = "kbreakout-23.04.0.tar.xz";
     };
   };
   kbruch = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kbruch-22.12.3.tar.xz";
-      sha256 = "0pr1440p8cwwf9pixli5si1imj0sxlhkpadjmzy58hdwi5yf8dxg";
-      name = "kbruch-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kbruch-23.04.0.tar.xz";
+      sha256 = "0mgn7iylpsw2hcy2cqvs4s70jqnf1x0346r2zdsbfv1nzn5g8m3h";
+      name = "kbruch-23.04.0.tar.xz";
     };
   };
   kcachegrind = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcachegrind-22.12.3.tar.xz";
-      sha256 = "1c2azm416xn33val3bf3q9ffa2bva0hqngfh6kd28x96vrj7chr7";
-      name = "kcachegrind-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcachegrind-23.04.0.tar.xz";
+      sha256 = "1i1840imhh76rwxrw0f404da4k5mj48ra220j5v6hxfajicz88g7";
+      name = "kcachegrind-23.04.0.tar.xz";
     };
   };
   kcalc = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcalc-22.12.3.tar.xz";
-      sha256 = "16gxpxnydqcg59i15dsrbz85wcy7jrr9bqbdcnbl03jiwqjkkrjj";
-      name = "kcalc-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcalc-23.04.0.tar.xz";
+      sha256 = "0snsfzlw6nsn01lin9nqg8rpiqwldbsbhyh0l7nnp8lg7kab6sfj";
+      name = "kcalc-23.04.0.tar.xz";
     };
   };
   kcalutils = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcalutils-22.12.3.tar.xz";
-      sha256 = "0szw42iyrqxfxq8hy5fnn0iyjxj9l9dwy1z3r6v578390z98gqig";
-      name = "kcalutils-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcalutils-23.04.0.tar.xz";
+      sha256 = "0yakkg08190ynpxk3q0pbci6dqi3ifiwwvknwhggfla1z21xqqlv";
+      name = "kcalutils-23.04.0.tar.xz";
     };
   };
   kcharselect = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcharselect-22.12.3.tar.xz";
-      sha256 = "1pd3f9vcjfdqfrniz3adksvjq3hkdpdxvhx04qrv0dbq05qzah1l";
-      name = "kcharselect-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcharselect-23.04.0.tar.xz";
+      sha256 = "08jdn9gnvpn3jqflkvk66a46m45n62cz83i2jvj0bfsq8binajs7";
+      name = "kcharselect-23.04.0.tar.xz";
+    };
+  };
+  kclock = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kclock-23.04.0.tar.xz";
+      sha256 = "17hw14rsv289ri40y0mc240znvyhkyw237qn7jsvg26y6llflxvx";
+      name = "kclock-23.04.0.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcolorchooser-22.12.3.tar.xz";
-      sha256 = "0h6s4r739n1s54kvn2vsq825qigpdyan2jma9195xf2w5ix42im0";
-      name = "kcolorchooser-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcolorchooser-23.04.0.tar.xz";
+      sha256 = "0hlkr3haq998bqrp8hhidvizbvfp997wl4vb6v5k66x9r8jwz5ir";
+      name = "kcolorchooser-23.04.0.tar.xz";
     };
   };
   kcron = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kcron-22.12.3.tar.xz";
-      sha256 = "0khqkdgzbxckksy95p4hqqjyk0gv6vi508gf40zy7mwsjzg04jgb";
-      name = "kcron-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kcron-23.04.0.tar.xz";
+      sha256 = "0nav7lw81v4nd83nrb7g4526zd31cxfc0ja4d6c35m731jycpd70";
+      name = "kcron-23.04.0.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kde-dev-scripts-22.12.3.tar.xz";
-      sha256 = "0y8jhxcbdmb3kq6aq4zpq80p6flgfxqw12v3phqrma7jzxfbi79c";
-      name = "kde-dev-scripts-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kde-dev-scripts-23.04.0.tar.xz";
+      sha256 = "1018mlw151bsn9cbxkvalwqwv7r9gyysldzk6mv5xy0y0zvqr04n";
+      name = "kde-dev-scripts-23.04.0.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kde-dev-utils-23.04.0.tar.xz";
+      sha256 = "1hqwrx7qf9ff02yk2psn0zsmby3qh7mvlhsw39nnnqr6gy9kcgg2";
+      name = "kde-dev-utils-23.04.0.tar.xz";
+    };
+  };
+  kde-inotify-survey = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kde-dev-utils-22.12.3.tar.xz";
-      sha256 = "022vx350xn8kmwvfniclc06qdixw5gi5v70n5alcrw5h7j3l0y10";
-      name = "kde-dev-utils-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kde-inotify-survey-23.04.0.tar.xz";
+      sha256 = "1g8xw6ir75la212mwp5pq3m99qc3x25sdh7hc6k4ilnsarxinn34";
+      name = "kde-inotify-survey-23.04.0.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdebugsettings-22.12.3.tar.xz";
-      sha256 = "12hhimcclp5xm9wpb027d5j25k9n9q6iqyclpgd4gdcclmzcgmiv";
-      name = "kdebugsettings-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdebugsettings-23.04.0.tar.xz";
+      sha256 = "0sycqjlm1109p2rp8079m9529i0zxjwsmvl1xyh40yw2wy5is5gy";
+      name = "kdebugsettings-23.04.0.tar.xz";
     };
   };
   kdeconnect-kde = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdeconnect-kde-22.12.3.tar.xz";
-      sha256 = "16c0p8liq8mw56yczq1zckwbpys874f9i43ii9y6j0avfvldxnib";
-      name = "kdeconnect-kde-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdeconnect-kde-23.04.0.tar.xz";
+      sha256 = "178139w3y9g9gnqjvjl6dmm3947n9ah2wbl7nwqfx26n7z8f1fl0";
+      name = "kdeconnect-kde-23.04.0.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdeedu-data-22.12.3.tar.xz";
-      sha256 = "1j4x84qhrx5qhp87xmhy11szjx8mzvyg824dxvh9rr7aqycr8543";
-      name = "kdeedu-data-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdeedu-data-23.04.0.tar.xz";
+      sha256 = "0njslxdvk9b3h0mpkmck23v6zxy7cz6g42rh2qf1gmhgwkb8p2xg";
+      name = "kdeedu-data-23.04.0.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdegraphics-mobipocket-22.12.3.tar.xz";
-      sha256 = "1wd8z2jkcys91wghp2xfvxm3dhps13agyq98k71069xi77b26h2g";
-      name = "kdegraphics-mobipocket-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdegraphics-mobipocket-23.04.0.tar.xz";
+      sha256 = "1hmh88ax4d5z12yaqnl39j29j7dz8n8nh783c3y9hh31hfikjy15";
+      name = "kdegraphics-mobipocket-23.04.0.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdegraphics-thumbnailers-22.12.3.tar.xz";
-      sha256 = "027hlv38f9185pvkjaalyffciskcpahrj1l541sykrbdl9pqy0h7";
-      name = "kdegraphics-thumbnailers-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdegraphics-thumbnailers-23.04.0.tar.xz";
+      sha256 = "0qnm6v8bbpm6zfxnvg74f7a677i0jj5x2qfnmc0093ra81rligxx";
+      name = "kdegraphics-thumbnailers-23.04.0.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdenetwork-filesharing-22.12.3.tar.xz";
-      sha256 = "1yr7lh46x20b6ra5ax8ikvwy3cr5whz9jmyg7282niw1vjk52pj8";
-      name = "kdenetwork-filesharing-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdenetwork-filesharing-23.04.0.tar.xz";
+      sha256 = "0hdw3cis6380l8vvj5gng18qxylpan2i74vq3v1byrdbpzp6f9wl";
+      name = "kdenetwork-filesharing-23.04.0.tar.xz";
     };
   };
   kdenlive = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdenlive-22.12.3.tar.xz";
-      sha256 = "0s9wgii294irbxcg9rgnjpwpq0d54zjf1h2900bh6brhwfxhrvkj";
-      name = "kdenlive-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdenlive-23.04.0.tar.xz";
+      sha256 = "0slfqjpxkc2nlwshfsw7qrvpcrdhv9cxb69l8fwnxr8l4yv7v8gb";
+      name = "kdenlive-23.04.0.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdepim-addons-22.12.3.tar.xz";
-      sha256 = "0yapb2mq5jk6pysdi95s4ivrdlxap08lh97r2kd95v06028b95bd";
-      name = "kdepim-addons-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdepim-addons-23.04.0.tar.xz";
+      sha256 = "1m9785hy7lfwm4m3499c67vi1c6a23y5dcd5pskhaxg5ii4hdd4z";
+      name = "kdepim-addons-23.04.0.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdepim-runtime-22.12.3.tar.xz";
-      sha256 = "0mvjnzncx52dsr54g6ra8hj06gayxw85chc8ywdv154sch3pbc3x";
-      name = "kdepim-runtime-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdepim-runtime-23.04.0.tar.xz";
+      sha256 = "0jbrg70949bqbx1mlfqqak21dg81jvbll6wpb0f4fmai4fj3kjvf";
+      name = "kdepim-runtime-23.04.0.tar.xz";
     };
   };
   kdesdk-kio = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdesdk-kio-22.12.3.tar.xz";
-      sha256 = "0j3bh7dxgx2javsb3v4c53i15a85x6k00kq0myj9l9272jl9wqbb";
-      name = "kdesdk-kio-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdesdk-kio-23.04.0.tar.xz";
+      sha256 = "1bbrh0zyvkyxfb35hh3qdpnfqgjc1qdyc6z9mrn22bgjb73bd8iz";
+      name = "kdesdk-kio-23.04.0.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdesdk-thumbnailers-22.12.3.tar.xz";
-      sha256 = "0l1hhygdvqcp9rxwwvl0y1is8z86vsqppijvmjvhyyfm6fn5kkg6";
-      name = "kdesdk-thumbnailers-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdesdk-thumbnailers-23.04.0.tar.xz";
+      sha256 = "1zb341mwra444bg4bgn1dr9kb9di66hv7kr60pvmdkbf8nqk7q6y";
+      name = "kdesdk-thumbnailers-23.04.0.tar.xz";
     };
   };
   kdev-php = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdev-php-22.12.3.tar.xz";
-      sha256 = "1iki8zj4a5z69wv7nvycn3fqfndxgqrcaxy9nn4xd97i7bdfzrm8";
-      name = "kdev-php-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdev-php-23.04.0.tar.xz";
+      sha256 = "0zjbv33c8f9z0mcij7r6jm4q41n98c6m2k91dxxhvalvygrxslmy";
+      name = "kdev-php-23.04.0.tar.xz";
     };
   };
   kdev-python = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdev-python-22.12.3.tar.xz";
-      sha256 = "0ybfjgdbfwk9hhvh2h1grzkl3zzkqd6bysbrbfkpbhi3kx8l0rps";
-      name = "kdev-python-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdev-python-23.04.0.tar.xz";
+      sha256 = "0rldq0x019vbp2r490bamqv8cl64zxi15xl3piczqivw01wjvnv5";
+      name = "kdev-python-23.04.0.tar.xz";
     };
   };
   kdevelop = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdevelop-22.12.3.tar.xz";
-      sha256 = "0hq6y0qf572fsqxf5h4k7jxqxdp08d57hx1gw2v6ca5dl69dmrfa";
-      name = "kdevelop-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdevelop-23.04.0.tar.xz";
+      sha256 = "1l5lpmd3q0b5h0r4mfmp3fxmc4hv2hhy8cilzzig5gb8xj3x27wd";
+      name = "kdevelop-23.04.0.tar.xz";
     };
   };
   kdf = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdf-22.12.3.tar.xz";
-      sha256 = "157bk2mgn7dqn97lnnbhcy9aanymdzx6lgp4wf9camrlkpzlmv20";
-      name = "kdf-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdf-23.04.0.tar.xz";
+      sha256 = "1cksxdm63y0k4vkyvjmrwrzmbh4zf6k90bazmrhl1nmhla5lcvnf";
+      name = "kdf-23.04.0.tar.xz";
     };
   };
   kdialog = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdialog-22.12.3.tar.xz";
-      sha256 = "0bgcrc0dqjqc4i2c965bkv4jckmj2v4vgga3s7wa1hx8j1qwm323";
-      name = "kdialog-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdialog-23.04.0.tar.xz";
+      sha256 = "1binhhlj3wazkiyy6sa9vxwqcn2q607gagi97w94sl4in6yim8sa";
+      name = "kdialog-23.04.0.tar.xz";
     };
   };
   kdiamond = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kdiamond-22.12.3.tar.xz";
-      sha256 = "0xf4ganqm6wvzvqi1sy4wy8nh53779fx894kn0khawxivav69r6c";
-      name = "kdiamond-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kdiamond-23.04.0.tar.xz";
+      sha256 = "1zxdaqyskqr247yd2850y68difr3wmxik6wn5jx5g65wpi5jimqd";
+      name = "kdiamond-23.04.0.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/keditbookmarks-23.04.0.tar.xz";
+      sha256 = "12jmqccr8j1kn2mxs3gc7ymvdb4q4lrg4vxrxfgf73dchp69c0nx";
+      name = "keditbookmarks-23.04.0.tar.xz";
+    };
+  };
+  keysmith = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/keditbookmarks-22.12.3.tar.xz";
-      sha256 = "0b1bpqaf3v4y668sspzangsh6jw9hp3li8a9smkg61qnpxlv0ix6";
-      name = "keditbookmarks-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/keysmith-23.04.0.tar.xz";
+      sha256 = "19vliz3v8ba9i5v8zx5x001xj51z38cfzsap4b1vmyvhni7pywg8";
+      name = "keysmith-23.04.0.tar.xz";
     };
   };
   kfind = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kfind-22.12.3.tar.xz";
-      sha256 = "1a0ms6cnzbq3p20q6vfc0m1zddpsdxsaw0y6dsfz804gy1lswk7x";
-      name = "kfind-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kfind-23.04.0.tar.xz";
+      sha256 = "1ssc6vslqad56wbfqygws78qvqyzh453crh0vmxrls7dx0vz61p8";
+      name = "kfind-23.04.0.tar.xz";
     };
   };
   kfloppy = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kfloppy-22.12.3.tar.xz";
-      sha256 = "119m06av50fj5sbbhdcwcjkwxz7jmzhdl74x7g6k742bzf6nn2b6";
-      name = "kfloppy-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kfloppy-23.04.0.tar.xz";
+      sha256 = "0rjz3lw13d9yx0s994fm4lhzb3h3fzcfgxkisjrmgi4dq7x4psd9";
+      name = "kfloppy-23.04.0.tar.xz";
     };
   };
   kfourinline = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kfourinline-22.12.3.tar.xz";
-      sha256 = "1b8w96n788md83r8kjk21wjc3wplbsfq385jrcxq1ivjfyzjzzps";
-      name = "kfourinline-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kfourinline-23.04.0.tar.xz";
+      sha256 = "1dic48qy2ppapxy8pn819x0wb6b5hmyp3wlqyqz4a5zsqhz170yc";
+      name = "kfourinline-23.04.0.tar.xz";
     };
   };
   kgeography = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kgeography-22.12.3.tar.xz";
-      sha256 = "0i7d2n3a2phgvlr3zw2w8lq4mfw2l818z52fqc4y30n85gvzs0m2";
-      name = "kgeography-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kgeography-23.04.0.tar.xz";
+      sha256 = "10mmfpmpazmh7qln1y891h33asqbfrkgpascpi8wyfcfsf1cjgvz";
+      name = "kgeography-23.04.0.tar.xz";
     };
   };
   kget = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kget-22.12.3.tar.xz";
-      sha256 = "048i7ny857k8fsx3ybmcq316pfxlrag06b11l868hrhxnj361mk1";
-      name = "kget-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kget-23.04.0.tar.xz";
+      sha256 = "1wj500xkhlq5kcqnlnn04x3j30p0z1pm7fjpq9j8l64nv3rb451b";
+      name = "kget-23.04.0.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kgoldrunner-22.12.3.tar.xz";
-      sha256 = "10g85x4hks3p35smvfj69g1gfaaggzsms3nqrpmqp5b949z6zjrn";
-      name = "kgoldrunner-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kgoldrunner-23.04.0.tar.xz";
+      sha256 = "13wvxvjlqxni6kr3n7fsxy17s9cxylnwj2jwbnayhsp8n971gb2h";
+      name = "kgoldrunner-23.04.0.tar.xz";
     };
   };
   kgpg = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kgpg-22.12.3.tar.xz";
-      sha256 = "1qrkgq4q391s20azrs8d2nm9x1raz8fbx7yxkg13mcc4gp7zzvp6";
-      name = "kgpg-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kgpg-23.04.0.tar.xz";
+      sha256 = "11qh9h65ww419cv4cj9ypbdfmbp783ybjjswsll0kv95r5myz18b";
+      name = "kgpg-23.04.0.tar.xz";
     };
   };
   khangman = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/khangman-22.12.3.tar.xz";
-      sha256 = "1p1szzisdhsbbid6nb7cngapvpw025263d1lfp03r0x767r5w9zx";
-      name = "khangman-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/khangman-23.04.0.tar.xz";
+      sha256 = "18dqgkylxyicr4d2ycpjy9ap2r4pz69m9zpvpj3mhx51qywb8cd2";
+      name = "khangman-23.04.0.tar.xz";
     };
   };
   khelpcenter = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/khelpcenter-22.12.3.tar.xz";
-      sha256 = "1sv1rpdr57rp2yyfvyfw2iy1k2cq0k0bszd40gb009r0f6zywy0i";
-      name = "khelpcenter-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/khelpcenter-23.04.0.tar.xz";
+      sha256 = "1gxm6fm0hr99mb7jphb4hx80k8n8jx8frrawnkw9nwkq0815vq5n";
+      name = "khelpcenter-23.04.0.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kidentitymanagement-22.12.3.tar.xz";
-      sha256 = "0nr1172ajn4n09zk7dxd1zfsmcrcy50mlmisv9bby7c0lmwzv1pf";
-      name = "kidentitymanagement-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kidentitymanagement-23.04.0.tar.xz";
+      sha256 = "167hzf079qi13siy36g4ljjfzirh1182ra63z4lsvpi4sh7nva2r";
+      name = "kidentitymanagement-23.04.0.tar.xz";
     };
   };
   kig = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kig-22.12.3.tar.xz";
-      sha256 = "1ndiwmgg2bawq2is4sspdrssfwamnkpghpq81bs5lxazi0ixnyk5";
-      name = "kig-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kig-23.04.0.tar.xz";
+      sha256 = "0rb2qfh9l16nk8yfg1xzlc5nf0vdh9mrxi3804h0xcy0ck081np4";
+      name = "kig-23.04.0.tar.xz";
     };
   };
   kigo = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kigo-22.12.3.tar.xz";
-      sha256 = "1j5pplhyb6cq76b4avflw0rb4r8lmkas38mh70s2mjw5c8mj19gg";
-      name = "kigo-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kigo-23.04.0.tar.xz";
+      sha256 = "0348lmd84gv5qz2d0pk2wrhmkam14737016hdxn8fm1g14q81qgq";
+      name = "kigo-23.04.0.tar.xz";
     };
   };
   killbots = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/killbots-22.12.3.tar.xz";
-      sha256 = "1xchgipbs61azzcf0qjm1liwdkppg7nml9ga0mwswhzpw9ylp5yi";
-      name = "killbots-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/killbots-23.04.0.tar.xz";
+      sha256 = "0fpsxs10vx65wk48iskmf3x3spf1zcpjg710lm50anwakc2v4kzp";
+      name = "killbots-23.04.0.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kimagemapeditor-22.12.3.tar.xz";
-      sha256 = "0f2nif2wlcgql345xfg1h0x31ms2l6w1i8wwc2iy0a679971w8mx";
-      name = "kimagemapeditor-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kimagemapeditor-23.04.0.tar.xz";
+      sha256 = "0fagwdhm706lnyrj8q0przpvzas6xsajwwvc2gr3gfc12f2mgv3b";
+      name = "kimagemapeditor-23.04.0.tar.xz";
     };
   };
   kimap = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kimap-23.04.0.tar.xz";
+      sha256 = "0r5izw3rscmynj72f7a6v3ra5mi6vgw24scvmak6h8ya4zwhzhk4";
+      name = "kimap-23.04.0.tar.xz";
+    };
+  };
+  kio-admin = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kimap-22.12.3.tar.xz";
-      sha256 = "1xn5gmry4fgm9yc5z6dn9g7yp2hyjry5r5fvkdhm3jh3n11bgq6j";
-      name = "kimap-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kio-admin-23.04.0.tar.xz";
+      sha256 = "1s5a21biixvcfsdfasfqpig54waifzcyds5w99in1zxd59kg7qwi";
+      name = "kio-admin-23.04.0.tar.xz";
     };
   };
   kio-extras = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kio-extras-22.12.3.tar.xz";
-      sha256 = "15qh2w6fm1j33scvlb2cjjimvfvisa0vp7d5n4mwm82s15a7ahv5";
-      name = "kio-extras-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kio-extras-23.04.0.tar.xz";
+      sha256 = "1lb0gfyyqs5d7xxvzxg4x0q063q04jf3zgmc0cn9qq3d4xj73f8d";
+      name = "kio-extras-23.04.0.tar.xz";
     };
   };
   kio-gdrive = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kio-gdrive-22.12.3.tar.xz";
-      sha256 = "12r44b68vyzc1yhfm4pmp7g1af2ysqybvjzr12pl8xw4zgyd3qd3";
-      name = "kio-gdrive-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kio-gdrive-23.04.0.tar.xz";
+      sha256 = "0hjlbdw7cm75hrj5nxxfjn2fxscjqrs9chz2cc4wkk40sf5fx61r";
+      name = "kio-gdrive-23.04.0.tar.xz";
     };
   };
   kio-zeroconf = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kio-zeroconf-22.12.3.tar.xz";
-      sha256 = "1azx6f6dh2nwmzp4vbn4qwxlh4f4zxq211p4pqvf29yi2fyp8ix1";
-      name = "kio-zeroconf-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kio-zeroconf-23.04.0.tar.xz";
+      sha256 = "0n78qkn9pjm63pb9p2xngyma3aplhhrw47j3g4gq7izhpmwxzisz";
+      name = "kio-zeroconf-23.04.0.tar.xz";
     };
   };
   kipi-plugins = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kipi-plugins-22.12.3.tar.xz";
-      sha256 = "1zfp05biddxpggl3b158dg2sdjrqp8rdbymqfbr9p3w7gl6hk7av";
-      name = "kipi-plugins-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kipi-plugins-23.04.0.tar.xz";
+      sha256 = "19jrr20b3h1yh6gvjpbnr9902lwll16pf5m277kin6sc4n1lwlah";
+      name = "kipi-plugins-23.04.0.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kirigami-gallery-22.12.3.tar.xz";
-      sha256 = "1zbsnfs25nqkwfqhkjn7idcypzhzfb0ldjxarlp104ycjh70v5ls";
-      name = "kirigami-gallery-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kirigami-gallery-23.04.0.tar.xz";
+      sha256 = "1bfh6ynx5jk5216mmms6ll0md7phcpjwcjs8g3k99cbnccfgh80h";
+      name = "kirigami-gallery-23.04.0.tar.xz";
     };
   };
   kiriki = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kiriki-22.12.3.tar.xz";
-      sha256 = "05csmqy7kdn5kga1lrg6bf7qjg36w7wyd23c0nnizzh51d7h13f7";
-      name = "kiriki-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kiriki-23.04.0.tar.xz";
+      sha256 = "0ify2g0cd5aagbl3q27k57zlcrcswgsnsp3ii732fywwi6mgllv7";
+      name = "kiriki-23.04.0.tar.xz";
     };
   };
   kiten = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kiten-22.12.3.tar.xz";
-      sha256 = "0xqj62hwlqsar1ziwgzrmk7bj9hqwwxpfwhrfm661vib0qsn82kn";
-      name = "kiten-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kiten-23.04.0.tar.xz";
+      sha256 = "1aa37is7l09phn6r8pi6xcdpzmdmd1c1i06cshxnklqsh0186a3f";
+      name = "kiten-23.04.0.tar.xz";
     };
   };
   kitinerary = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kitinerary-22.12.3.tar.xz";
-      sha256 = "0qrfhrf9fgslagds6qr46a9p5iwzy5d07ilk8r29xcvm6l9s95x6";
-      name = "kitinerary-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kitinerary-23.04.0.tar.xz";
+      sha256 = "07xb25q4r5w8yzxm1r9x1ra9lffqrh2h29nc9v6r2mcbjm388yds";
+      name = "kitinerary-23.04.0.tar.xz";
+    };
+  };
+  kjournald = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kjournald-23.04.0.tar.xz";
+      sha256 = "1dnbpvs3cdj9bbp1xayprhh0y03wlkbxs7ch7j63082dk8ps345s";
+      name = "kjournald-23.04.0.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kjumpingcube-22.12.3.tar.xz";
-      sha256 = "09wg0k92yb4wfqfq3hhai2rbviwpj7kwgi3m19dv1xr40n7kfgaz";
-      name = "kjumpingcube-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kjumpingcube-23.04.0.tar.xz";
+      sha256 = "0swgngmqf87d87xrah8ipzr3xljrbm5w4rl2q3sj5l7cw4f09ldw";
+      name = "kjumpingcube-23.04.0.tar.xz";
     };
   };
   kldap = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kldap-22.12.3.tar.xz";
-      sha256 = "0a0cmr7vjpk7c0mkgvbnf65qq24dqwx8f1cyv6phfb6yr8ffwcqd";
-      name = "kldap-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kldap-23.04.0.tar.xz";
+      sha256 = "0cafm0llr46lmzravgfkh1rgy55xix4sp3jb6fpqq6820l66jymj";
+      name = "kldap-23.04.0.tar.xz";
     };
   };
   kleopatra = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kleopatra-22.12.3.tar.xz";
-      sha256 = "15nrg63xyb2jaxix8ijnp3ikbnj74d430ilvxa9k7kbzjp59kw9i";
-      name = "kleopatra-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kleopatra-23.04.0.tar.xz";
+      sha256 = "1xpr2q5718jyhdgrnpkq52177fr4nhmskac87p5s2q8yc22m0jwq";
+      name = "kleopatra-23.04.0.tar.xz";
     };
   };
   klettres = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/klettres-22.12.3.tar.xz";
-      sha256 = "09s2fiyqhbr9jhm76v84rlzvrbcbwrra1m3ajbf2vkrk7fiwaav2";
-      name = "klettres-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/klettres-23.04.0.tar.xz";
+      sha256 = "0a2ifnhnsmvsl8vs118mjb43bfq5hx5c4w3zalx5jlq8f9q7wy7j";
+      name = "klettres-23.04.0.tar.xz";
     };
   };
   klickety = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/klickety-22.12.3.tar.xz";
-      sha256 = "10xiwd1yr1y7gfw7hb8qsxs2x689xsxcimwdnwyi6bcy5kcj63zi";
-      name = "klickety-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/klickety-23.04.0.tar.xz";
+      sha256 = "1addg9797bpzi3a1hnq1xva50bq5vv0w0v97hp1qncg1jh8b0ffk";
+      name = "klickety-23.04.0.tar.xz";
     };
   };
   klines = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/klines-22.12.3.tar.xz";
-      sha256 = "1l3j4ig2sjga64vrl75z409dy0kgc2f784ggza94v6hklq39p06z";
-      name = "klines-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/klines-23.04.0.tar.xz";
+      sha256 = "087sh57kyq37kmxpxsiqh4yxpv7j59wq69k576bwcl7hlqknbz29";
+      name = "klines-23.04.0.tar.xz";
     };
   };
   kmag = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmag-22.12.3.tar.xz";
-      sha256 = "0lj6glichvs0wk9fdzznplas3mdvi98m6m92whimgvkj4fslwknv";
-      name = "kmag-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmag-23.04.0.tar.xz";
+      sha256 = "01xjs7bvdra5gigcvgnx71yqqqhhxjzr5nzrpwlck1z9378xirkg";
+      name = "kmag-23.04.0.tar.xz";
     };
   };
   kmahjongg = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmahjongg-22.12.3.tar.xz";
-      sha256 = "1rsvk0vy85z27g0ldli8lm6bqywggvwp0kkz860yfjnlbi0wznxr";
-      name = "kmahjongg-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmahjongg-23.04.0.tar.xz";
+      sha256 = "1r4rwhy3m25002qnc2l35my2hla9xzhmsjbikv6n7r9wfvmyr0nm";
+      name = "kmahjongg-23.04.0.tar.xz";
     };
   };
   kmail = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmail-22.12.3.tar.xz";
-      sha256 = "13h2s78bsmzbdc45iixvpc6ba23zng2f579s81935pvcb412lvbq";
-      name = "kmail-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmail-23.04.0.tar.xz";
+      sha256 = "1fyr3w6c1plm41px97vma2yf7n5f6jrh68plk1w507ggvm5ws1ja";
+      name = "kmail-23.04.0.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmail-account-wizard-22.12.3.tar.xz";
-      sha256 = "0ij54xx7clz7nxgfzw3kf9xjb84qn1llm041x0l6cydfhw60bjw8";
-      name = "kmail-account-wizard-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmail-account-wizard-23.04.0.tar.xz";
+      sha256 = "1i0q6pkfz7lra5921fmcbwli4qna6slhph74f21ggmbhj2zw66hz";
+      name = "kmail-account-wizard-23.04.0.tar.xz";
     };
   };
   kmailtransport = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmailtransport-22.12.3.tar.xz";
-      sha256 = "1h53mmd25ydyqdazn4h9k2gq24d694khdbwsb0dpw7fv4x9ihvyk";
-      name = "kmailtransport-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmailtransport-23.04.0.tar.xz";
+      sha256 = "1by6jsrry5s8xb510m14bknryviwhsk6yak9igh7s6xlcgbd2723";
+      name = "kmailtransport-23.04.0.tar.xz";
     };
   };
   kmbox = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmbox-22.12.3.tar.xz";
-      sha256 = "0wshp1i789j3ijn6p230xx0bdkpx439imaif5acxw0m9bjrvbfrd";
-      name = "kmbox-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmbox-23.04.0.tar.xz";
+      sha256 = "0srq4rf18cs0zmqplf3i6vilsjpavzkfkiwm0izqv3imnmzzi1ym";
+      name = "kmbox-23.04.0.tar.xz";
     };
   };
   kmime = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmime-22.12.3.tar.xz";
-      sha256 = "1n6353diasl50xd280ydpdmg3c1966q5sxfx8h96gbjfcqgiyg4v";
-      name = "kmime-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmime-23.04.0.tar.xz";
+      sha256 = "0jxjj60ba7hvm51lhaamra09qpvgjj7ky8salhrs6q20cjnv1kx3";
+      name = "kmime-23.04.0.tar.xz";
     };
   };
   kmines = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmines-22.12.3.tar.xz";
-      sha256 = "05zmhzh09bdgi3jx2hv2m1lycnj6ifhgr86l2jkqfby6yl6n7sf6";
-      name = "kmines-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmines-23.04.0.tar.xz";
+      sha256 = "1hvq88gp3dd2gpklv1zfsr1yskvkr79r2zkmlbwa2fdls5nqlgxf";
+      name = "kmines-23.04.0.tar.xz";
     };
   };
   kmix = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmix-22.12.3.tar.xz";
-      sha256 = "0s8ff91daa9gf90vz39hzryv19biy4jlvn1slimqvbrlpvii7p2v";
-      name = "kmix-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmix-23.04.0.tar.xz";
+      sha256 = "1f3gwkpdn0zzigx1kw74gpxwsvpy72k2pfiy5nb3nhdk5ji0lgjj";
+      name = "kmix-23.04.0.tar.xz";
     };
   };
   kmousetool = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmousetool-22.12.3.tar.xz";
-      sha256 = "1j2gqdbrif78cp0jvxhq1dmj5vrqdmnqaipx478h50r8ykzc8yfs";
-      name = "kmousetool-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmousetool-23.04.0.tar.xz";
+      sha256 = "0151fwjzlcpkgiadq18hx6x0rrab2zakd6rzcwvzijqj4hdqlgfd";
+      name = "kmousetool-23.04.0.tar.xz";
     };
   };
   kmouth = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmouth-22.12.3.tar.xz";
-      sha256 = "1kp03hr07qk8707zqvlh3w6hsdmv6ry9gaydi3klc832w57y21b9";
-      name = "kmouth-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmouth-23.04.0.tar.xz";
+      sha256 = "0z2xjn1dg15nwxib2lj84k7sjhv8vjddy0m902mw8mfa5hhrd5ic";
+      name = "kmouth-23.04.0.tar.xz";
     };
   };
   kmplot = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kmplot-22.12.3.tar.xz";
-      sha256 = "0hg77qg6yzhk7d7jfbp1544qlmw5wwgv97p9p992lxcm234h560j";
-      name = "kmplot-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kmplot-23.04.0.tar.xz";
+      sha256 = "1g3n6mwa0ysrm1f0l9j6klm59d8hb9dz93mfzvni5ffj9d0p1ksx";
+      name = "kmplot-23.04.0.tar.xz";
     };
   };
   knavalbattle = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/knavalbattle-22.12.3.tar.xz";
-      sha256 = "17zsmk7n2cxdfaxk63c958aydparcca2dw10yfdafq4a3wjhnqqf";
-      name = "knavalbattle-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/knavalbattle-23.04.0.tar.xz";
+      sha256 = "12hqw8p5c5v8vq5y8d3kbxw0jwsnzkszh6b5gpk2xi1jif9r9yih";
+      name = "knavalbattle-23.04.0.tar.xz";
     };
   };
   knetwalk = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/knetwalk-22.12.3.tar.xz";
-      sha256 = "16p57ixq1h8wfv4ggv91m8d8pfjy486phi2yvsxnkib12yiv13yj";
-      name = "knetwalk-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/knetwalk-23.04.0.tar.xz";
+      sha256 = "0b2r4x5lbv9bgxfa4nq0rm0lfcjw9s8gqnpiivxc5m1p61db2cms";
+      name = "knetwalk-23.04.0.tar.xz";
     };
   };
   knights = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/knights-22.12.3.tar.xz";
-      sha256 = "1rc2xrb6s1ncqnbbxr5c3ccy98mk2ljhxp32nmfzxd6l97qm0mnj";
-      name = "knights-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/knights-23.04.0.tar.xz";
+      sha256 = "09cqh1m371s021f9pp9bagblbbkxx69v30c9yzhf2s417q64fzq6";
+      name = "knights-23.04.0.tar.xz";
     };
   };
   knotes = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/knotes-22.12.3.tar.xz";
-      sha256 = "1nav1c1q65f3zsrwyq2j5nikhxp4mz45yg0zfymw24n4qi2b9xc2";
-      name = "knotes-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/knotes-23.04.0.tar.xz";
+      sha256 = "148wsjp2m76sh90swrijy4zn5dm0r7ss5jynjwrxdvij6bf700v8";
+      name = "knotes-23.04.0.tar.xz";
+    };
+  };
+  koko = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/koko-23.04.0.tar.xz";
+      sha256 = "1rk7m9n8icqn5yamfnna491vllmkb15k32vvi4ggp70apxqnv6lk";
+      name = "koko-23.04.0.tar.xz";
     };
   };
   kolf = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kolf-22.12.3.tar.xz";
-      sha256 = "01czns2gqvjnydc2bz8y2gq4m4lz50l9z71i0nf3nidihvgs96vl";
-      name = "kolf-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kolf-23.04.0.tar.xz";
+      sha256 = "19gai1l7wp78gz07ix0d576n0ysr56xavsr11ag9hbs8fzca0zlg";
+      name = "kolf-23.04.0.tar.xz";
     };
   };
   kollision = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kollision-22.12.3.tar.xz";
-      sha256 = "1dfr4ghg9yly0fv8fyjcs4ahf2xp9c08sssli1kph6qspvpmd8qq";
-      name = "kollision-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kollision-23.04.0.tar.xz";
+      sha256 = "0lnk289967gxgpxk2jzm55vf96znpdpqqd50wshhxybmgg0kcfdc";
+      name = "kollision-23.04.0.tar.xz";
     };
   };
   kolourpaint = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kolourpaint-22.12.3.tar.xz";
-      sha256 = "1gwpf5rb1hx49a18d5hd4l4p72bpgamy4yqiyixa75hmxhj09kwq";
-      name = "kolourpaint-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kolourpaint-23.04.0.tar.xz";
+      sha256 = "0s12glgh9sh3k82kk0yh7vkm3gkwyc8dnpllx9kv6qmc8r3l60wf";
+      name = "kolourpaint-23.04.0.tar.xz";
     };
   };
   kompare = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kompare-23.04.0.tar.xz";
+      sha256 = "0qamyq45k25ny2rzw2fg7573509r85mxwyrjrrqmlp291p043bx4";
+      name = "kompare-23.04.0.tar.xz";
+    };
+  };
+  kongress = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kompare-22.12.3.tar.xz";
-      sha256 = "0bg76vgz6b6dx0zrnh92r4ny1dh0bdakkyb17jl4fd28crixy4ds";
-      name = "kompare-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kongress-23.04.0.tar.xz";
+      sha256 = "11lsf9pz0289h650y09b7ivg18kbvsv0cqb4jb437pjz3jmr5yb9";
+      name = "kongress-23.04.0.tar.xz";
     };
   };
   konqueror = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/konqueror-22.12.3.tar.xz";
-      sha256 = "1m4szi3jskcjzqdgqqhniydrv8qcbq0p0s8cb6q3b1iap9b509xh";
-      name = "konqueror-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/konqueror-23.04.0.tar.xz";
+      sha256 = "11nv9vn2xzbmvi37v56pbfqmmvwkfsm6jcpvwp5p6wf8sjckfn77";
+      name = "konqueror-23.04.0.tar.xz";
     };
   };
   konquest = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/konquest-22.12.3.tar.xz";
-      sha256 = "0p2h1vj90p7xg30b5d002kfk724apj0zifi1nk4nlrmnb2iwmani";
-      name = "konquest-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/konquest-23.04.0.tar.xz";
+      sha256 = "001zdm2y7358n17h791b5ap4my3nn0694s51vln3ljcdss043pig";
+      name = "konquest-23.04.0.tar.xz";
     };
   };
   konsole = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/konsole-22.12.3.tar.xz";
-      sha256 = "0vzqmdn2pl3nxdsvx7db8ah9wklkap729cq41jifpjkf8javraar";
-      name = "konsole-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/konsole-23.04.0.tar.xz";
+      sha256 = "1755ny73v8n7vv96c9bxdq81q03ibym352kvq8rimpcsphy6zki1";
+      name = "konsole-23.04.0.tar.xz";
     };
   };
   kontact = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kontact-22.12.3.tar.xz";
-      sha256 = "1j10hnp4lk9wsa2m5w00h198wafzvbhz3z28rg2xgwf426q7hp91";
-      name = "kontact-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kontact-23.04.0.tar.xz";
+      sha256 = "0vh0z43yr4j941bjlmc0cmvd6ffwzrsqa1fr551m45mfxf62dnqm";
+      name = "kontact-23.04.0.tar.xz";
     };
   };
   kontactinterface = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kontactinterface-22.12.3.tar.xz";
-      sha256 = "1nx06c08xi3as8kms9fdbkc35d2m8f0vdskg31khl9wi2c8skxya";
-      name = "kontactinterface-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kontactinterface-23.04.0.tar.xz";
+      sha256 = "1fww09n3zmry1pvia05ars28s4gmjsnc8y5aynm9x05lpnd5yiyp";
+      name = "kontactinterface-23.04.0.tar.xz";
     };
   };
   kontrast = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kontrast-22.12.3.tar.xz";
-      sha256 = "1hhmjjdpb8ppsv7djxi8dlzmz2chivw9wjpx83vghlyx8463gicc";
-      name = "kontrast-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kontrast-23.04.0.tar.xz";
+      sha256 = "0m0j2cmgdiypb292wavln4pw8ddzfbx3lg4cpl0km5i4qh3rs0di";
+      name = "kontrast-23.04.0.tar.xz";
     };
   };
   konversation = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/konversation-22.12.3.tar.xz";
-      sha256 = "0p404wpdhsiz9w04kgwx8smmsbnh2szikdkf3c74krcl7w1ksckl";
-      name = "konversation-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/konversation-23.04.0.tar.xz";
+      sha256 = "0ra7mb461lnxh4liiq9lpqyxsylyp2wf6n9xislml6cwc164qr4v";
+      name = "konversation-23.04.0.tar.xz";
     };
   };
   kopeninghours = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kopeninghours-22.12.3.tar.xz";
-      sha256 = "1p55w3h300gjpyd970l5ka2lfa5srbiprzc50rsanl1z8l9k9zic";
-      name = "kopeninghours-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kopeninghours-23.04.0.tar.xz";
+      sha256 = "0vzsrbkxpz4bqgi6vlvz10q61klrpd9iijkvjwziwjkr51wjc55v";
+      name = "kopeninghours-23.04.0.tar.xz";
     };
   };
   kopete = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kopete-22.12.3.tar.xz";
-      sha256 = "1r87rck04jws5khim95mq70c7g2yr4kzf5hf8icv5nc4c820im0m";
-      name = "kopete-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kopete-23.04.0.tar.xz";
+      sha256 = "0w63si67zm7y9qlakjyywdbwsi5r0s52n79f934239zld3r14piz";
+      name = "kopete-23.04.0.tar.xz";
     };
   };
   korganizer = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/korganizer-22.12.3.tar.xz";
-      sha256 = "0hmdmg7njvm12xz64xcasz9bvx72s0f2s1430d6h75b6f2x8fhmc";
-      name = "korganizer-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/korganizer-23.04.0.tar.xz";
+      sha256 = "0fibb2y1j6crj7qj4qjk46chi09irki1m16asqd2a6qyspghidj6";
+      name = "korganizer-23.04.0.tar.xz";
     };
   };
   kosmindoormap = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kosmindoormap-22.12.3.tar.xz";
-      sha256 = "1m2cyp4irr1r4fssx6pw78f273i6hlzjdqcrrcsh1r01z0klpbzp";
-      name = "kosmindoormap-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kosmindoormap-23.04.0.tar.xz";
+      sha256 = "1d5i4m1sjr6nx6q8i9hzrp01593nakjlyfas0hmkqgvfl17ky1bf";
+      name = "kosmindoormap-23.04.0.tar.xz";
     };
   };
   kpat = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kpat-22.12.3.tar.xz";
-      sha256 = "0m8kwcf69wxl7x7z6bjkwyf34dwd7qw55pwbsh77wv0l9mk2v8gf";
-      name = "kpat-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kpat-23.04.0.tar.xz";
+      sha256 = "0fajsdm523wad5m8mc5y73ijpvxnaakcwkpia53p2i2bca38pblz";
+      name = "kpat-23.04.0.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kpimtextedit-22.12.3.tar.xz";
-      sha256 = "0z4j02g73lrc88rf3b1vjyav6nsqkfwsfw8nxcyf8x51skczchy7";
-      name = "kpimtextedit-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kpimtextedit-23.04.0.tar.xz";
+      sha256 = "1wcw644zh7mxg0g4bw69p79z2jfgg6dngw5qnglslwsy9l01js6c";
+      name = "kpimtextedit-23.04.0.tar.xz";
     };
   };
   kpkpass = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kpkpass-22.12.3.tar.xz";
-      sha256 = "1pg6p3b41vpg07bf6xfxqw98x8s681h18x0bm5b031ais0p10dv8";
-      name = "kpkpass-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kpkpass-23.04.0.tar.xz";
+      sha256 = "0f2bgp977i3p4bcvdc1zvj8971dhqw48glnqh8r99kvjbvri0l7n";
+      name = "kpkpass-23.04.0.tar.xz";
     };
   };
   kpmcore = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kpmcore-22.12.3.tar.xz";
-      sha256 = "07mzxb7qjbqkz5khafmyj16yj7221c6pwp0p72ayilwykwwrylsi";
-      name = "kpmcore-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kpmcore-23.04.0.tar.xz";
+      sha256 = "0vkiqj203n2s2nlkiiwblnw4zflrfkhbbijd1m72l446ddgn3j0d";
+      name = "kpmcore-23.04.0.tar.xz";
     };
   };
   kpublictransport = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kpublictransport-22.12.3.tar.xz";
-      sha256 = "1ljxz5dl4rpkdbm1jqlhnzls1cjmcyya1q5q7pzdwr99czs7jpwc";
-      name = "kpublictransport-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kpublictransport-23.04.0.tar.xz";
+      sha256 = "00q6cmjdcjff4xiz4ca0hq45z36ni0nw2v22km75f2jjsnxk040z";
+      name = "kpublictransport-23.04.0.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kqtquickcharts-22.12.3.tar.xz";
-      sha256 = "1rv4fava7zjhvdxgj1l6lh823fz93dpawmgdkjw95y1h2fc85jd1";
-      name = "kqtquickcharts-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kqtquickcharts-23.04.0.tar.xz";
+      sha256 = "0bcshq397av63k32ql55c2zrlgwdmjpmds30a0wgx4r3qd97ay91";
+      name = "kqtquickcharts-23.04.0.tar.xz";
     };
   };
   krdc = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/krdc-22.12.3.tar.xz";
-      sha256 = "1pyxx48vkjidzrivccpz55ys1b3bipdd8pkfz1sn3b70vw4h3rs2";
-      name = "krdc-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/krdc-23.04.0.tar.xz";
+      sha256 = "1njzm3lszdv3jfs4m8sh4pjv7c9a3a518cz9w1063df63cpp4fbi";
+      name = "krdc-23.04.0.tar.xz";
+    };
+  };
+  krecorder = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/krecorder-23.04.0.tar.xz";
+      sha256 = "05npzjm3qpaj6dkffyijmc4kxwpf7hfb7pyc9dxmq1szgd05cz39";
+      name = "krecorder-23.04.0.tar.xz";
     };
   };
   kreversi = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kreversi-22.12.3.tar.xz";
-      sha256 = "1cwl9yhl54nd7wqasfic09a6lwjz65w72kmracknrvihpz4b3ilk";
-      name = "kreversi-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kreversi-23.04.0.tar.xz";
+      sha256 = "05sdgjdllqfihirycrd1j90r40cmj2l4fvfphckpjwmlp4x9llcd";
+      name = "kreversi-23.04.0.tar.xz";
     };
   };
   krfb = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/krfb-22.12.3.tar.xz";
-      sha256 = "1r4n66abm01n5vkxzpw93f4rgxh963azq8jpkhhhsdlz22wjd3fw";
-      name = "krfb-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/krfb-23.04.0.tar.xz";
+      sha256 = "1dmh4yp4mvx5wk6r6vd5dcvs3and328rriy2ng30xg7lg6bs27rj";
+      name = "krfb-23.04.0.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kross-interpreters-22.12.3.tar.xz";
-      sha256 = "1ypi1r62nmw023xr6zsgs9iigmkxpbzmr2j9ibxdpidm2nnjw2w8";
-      name = "kross-interpreters-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kross-interpreters-23.04.0.tar.xz";
+      sha256 = "0dyyaj6wdaf0ij1xkf6asxc50nh1wjqlsq3gc4j8s7h1mwbd7asy";
+      name = "kross-interpreters-23.04.0.tar.xz";
     };
   };
   kruler = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kruler-22.12.3.tar.xz";
-      sha256 = "0v8qmrgvc8k4cc8rxjvypsfb8j13whpz036kn144hr8jfzb6mb3g";
-      name = "kruler-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kruler-23.04.0.tar.xz";
+      sha256 = "0j8b5y7x117phkc4jhq7k8s8jkfl90hfxrdw7ii9imh3h1h0xn37";
+      name = "kruler-23.04.0.tar.xz";
     };
   };
   ksanecore = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksanecore-22.12.3.tar.xz";
-      sha256 = "0m3dbx1vww11qg7ydixb75xpazdgxss9fbxhpjpi4m1vv6siq6zg";
-      name = "ksanecore-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksanecore-23.04.0.tar.xz";
+      sha256 = "1n42yhvq57873mc5f6ka7f6gqbz5w6n6h1f9l69q5wvwwq7lcd14";
+      name = "ksanecore-23.04.0.tar.xz";
     };
   };
   kshisen = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kshisen-22.12.3.tar.xz";
-      sha256 = "0n7vq7qvh0sdnxwv9fvbna4cimbb9002pnx6a56f6i6v0f6i5gyb";
-      name = "kshisen-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kshisen-23.04.0.tar.xz";
+      sha256 = "1wmq2b78iqpcg8z1pady3xczqjib6qf71d0d7931lfv4lg145iis";
+      name = "kshisen-23.04.0.tar.xz";
     };
   };
   ksirk = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksirk-22.12.3.tar.xz";
-      sha256 = "0vyrlqxp026i8i6f111fsh290jkhdvzhm19s488bdrfm0xhh8y71";
-      name = "ksirk-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksirk-23.04.0.tar.xz";
+      sha256 = "04qds90n481j8kkgawyplazhfvpz9vqi5hif2jd68svy1f5jyx52";
+      name = "ksirk-23.04.0.tar.xz";
     };
   };
   ksmtp = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksmtp-22.12.3.tar.xz";
-      sha256 = "1yzhf02fn6h7xx7kl9hghbd8ppzx1favgkr0jd7nf6i479n03cw8";
-      name = "ksmtp-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksmtp-23.04.0.tar.xz";
+      sha256 = "0lzvg13g6x7gha56f0qvv8wrnrc1wf9mw0mxrb7v4n61bvy8pym0";
+      name = "ksmtp-23.04.0.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksnakeduel-22.12.3.tar.xz";
-      sha256 = "1s8iiknfpi0k1577ywm6d6y4fm92sp7zpwjylf8mys0a6yqbwbfc";
-      name = "ksnakeduel-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksnakeduel-23.04.0.tar.xz";
+      sha256 = "06670nks1brkvfvph39qnn48pga1gcwijphpgqxv5rpvcgiapvkd";
+      name = "ksnakeduel-23.04.0.tar.xz";
     };
   };
   kspaceduel = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kspaceduel-22.12.3.tar.xz";
-      sha256 = "1lkz6w2is3pjzn1is3zv2yy1vy5pga5jv4y955inm194b94v8amp";
-      name = "kspaceduel-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kspaceduel-23.04.0.tar.xz";
+      sha256 = "0058ixgb0d4slp6nsfd85z5icbh7im0p7dvvw391ixcdf72xgv1r";
+      name = "kspaceduel-23.04.0.tar.xz";
     };
   };
   ksquares = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksquares-22.12.3.tar.xz";
-      sha256 = "1dqc16bibpykya03104inr8pvn86m174ilrs94y4wc26w21a4i3i";
-      name = "ksquares-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksquares-23.04.0.tar.xz";
+      sha256 = "0fv9lv6xkmaa9rbwvjlznmahc6yc0v25aca32da0qy9ck68hqd57";
+      name = "ksquares-23.04.0.tar.xz";
     };
   };
   ksudoku = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksudoku-22.12.3.tar.xz";
-      sha256 = "1sk7cs521jgdlr51wpm9vdxv8m83nwgd02y4qkx705f0hvqmwwb9";
-      name = "ksudoku-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksudoku-23.04.0.tar.xz";
+      sha256 = "0s0g5x8qp45k3havp48s7bp98afy10dmnlh7n2g54mwn807my55h";
+      name = "ksudoku-23.04.0.tar.xz";
     };
   };
   ksystemlog = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ksystemlog-22.12.3.tar.xz";
-      sha256 = "0plf5p34l8727xdy5mlvv7wlkfb15xip7jdraifnvkiy9x82gk05";
-      name = "ksystemlog-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ksystemlog-23.04.0.tar.xz";
+      sha256 = "0hkzirpc3mfxm264fm6r51d3qjcs3gn4jqiz7b48g821jr99rxqc";
+      name = "ksystemlog-23.04.0.tar.xz";
     };
   };
   kteatime = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kteatime-22.12.3.tar.xz";
-      sha256 = "1wjr2nndrflly27dvp9gbgvk25cvm2nd32h0whb399dwl3niva1f";
-      name = "kteatime-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kteatime-23.04.0.tar.xz";
+      sha256 = "1abwks7hwlcvrzl8j9q4v279kvi99m8vlf2fw371mzv9pxifbwfq";
+      name = "kteatime-23.04.0.tar.xz";
     };
   };
   ktimer = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktimer-22.12.3.tar.xz";
-      sha256 = "1kxpnlz8k5hxbp4irbnhnz52jxfwh1yz9d63l8dxhw3likcbp52j";
-      name = "ktimer-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktimer-23.04.0.tar.xz";
+      sha256 = "1fd8bwj0k5qdppjbx6hhk6cxp1hh9g97cdllbqgy9i8g5n9inzx4";
+      name = "ktimer-23.04.0.tar.xz";
     };
   };
   ktnef = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktnef-22.12.3.tar.xz";
-      sha256 = "08j7a0lzkqxb2s2fzm5h26i560lk4l1f3r4wjb24znf1rk9zjslj";
-      name = "ktnef-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktnef-23.04.0.tar.xz";
+      sha256 = "1a3b8j6yhld0jhmblxajjy1f2iqcfnp21cc8cknffyylb0yjbp2a";
+      name = "ktnef-23.04.0.tar.xz";
     };
   };
   ktorrent = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktorrent-22.12.3.tar.xz";
-      sha256 = "07ppw041zwywkkjd87n6bwr37a2a6va78nr5yxshlxckz8x17bl5";
-      name = "ktorrent-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktorrent-23.04.0.tar.xz";
+      sha256 = "0gmmgy6ypw9y9hw8c3wyifvrd0zbxf9p8ixy7da8mnx0lgp26sm0";
+      name = "ktorrent-23.04.0.tar.xz";
     };
   };
   ktouch = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktouch-22.12.3.tar.xz";
-      sha256 = "0hzz0lnx4w0bl7kd52n01z8h165icycfx9kw8rgaidq1r5csp2fm";
-      name = "ktouch-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktouch-23.04.0.tar.xz";
+      sha256 = "01fq2lb0kyhh1a7rkxg6mc26ans5vvmqp2icf8bxifvq2ggd17b2";
+      name = "ktouch-23.04.0.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-accounts-kcm-22.12.3.tar.xz";
-      sha256 = "04g68x1xl9s46sinnwknb43pgvz6w71f8pn1j9bpgmg3qmmqx84g";
-      name = "ktp-accounts-kcm-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-accounts-kcm-23.04.0.tar.xz";
+      sha256 = "1d61fmcs3bsjdnxfpcnsyxfw3lbcsqrx0yjh6a551g2gm1gwf2wn";
+      name = "ktp-accounts-kcm-23.04.0.tar.xz";
     };
   };
   ktp-approver = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-approver-22.12.3.tar.xz";
-      sha256 = "06a856xx2xnw7ryazcyhwwwwhc23w22wrrjvbxs8ram54pzvphyh";
-      name = "ktp-approver-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-approver-23.04.0.tar.xz";
+      sha256 = "087psblyqxg4scvwilqb6mva484n5iyzmhyb64hjbhb633vcszhq";
+      name = "ktp-approver-23.04.0.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-auth-handler-22.12.3.tar.xz";
-      sha256 = "0mrj12c7igs8z6904ishx5zv5qvsasv3c4i7zyrr9i5f6ncdgrh6";
-      name = "ktp-auth-handler-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-auth-handler-23.04.0.tar.xz";
+      sha256 = "09fzc8xgj3p4mfha0s2y6hcik28bi3zgf4wd4kz7fdcp06mgim6q";
+      name = "ktp-auth-handler-23.04.0.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-call-ui-22.12.3.tar.xz";
-      sha256 = "1a2gys0p42kmar7mxxwzwmcjfvdcwa6b23cb913c1ficwx4rbma2";
-      name = "ktp-call-ui-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-call-ui-23.04.0.tar.xz";
+      sha256 = "08pqj2r6dlsa2x92ay1h3956gdxjhajf3rd508dpgkabsiq1d107";
+      name = "ktp-call-ui-23.04.0.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-common-internals-22.12.3.tar.xz";
-      sha256 = "0rapw141bvrgaaa9wb7vbs1m0z01pky8c0pdsm294i72kiadrcw3";
-      name = "ktp-common-internals-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-common-internals-23.04.0.tar.xz";
+      sha256 = "139wfb7mz7d9ikwq5n1y8dcyaa1ysmzvx1fpp180fdzmr277sv15";
+      name = "ktp-common-internals-23.04.0.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-contact-list-22.12.3.tar.xz";
-      sha256 = "171d48s1dh2i8zk43sd7xl3nrialij0nvn0ib82f45fag2wa4f8v";
-      name = "ktp-contact-list-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-contact-list-23.04.0.tar.xz";
+      sha256 = "0hpnlpailgx4wkbb78fp4738qj63a308405grpckf39jwfz2pz4c";
+      name = "ktp-contact-list-23.04.0.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-contact-runner-22.12.3.tar.xz";
-      sha256 = "0a4bhaq3jc9290lf1cgnlaysw2jszdfqwk9l6fi0bmdk2mx0xl3d";
-      name = "ktp-contact-runner-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-contact-runner-23.04.0.tar.xz";
+      sha256 = "0s00g6dqh6rpz2is7hyjx2piblpd1m60v7hi03zjihnwyq8a3iq4";
+      name = "ktp-contact-runner-23.04.0.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-desktop-applets-22.12.3.tar.xz";
-      sha256 = "18w4dq676yxhmgwmq5bv7nnfcai18xiy1hwyj7pxmb45f42vxzh2";
-      name = "ktp-desktop-applets-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-desktop-applets-23.04.0.tar.xz";
+      sha256 = "0d60fcyhaq2cjllc8xsrn3xa4wpd617a6x5zs150pj97vavf9dks";
+      name = "ktp-desktop-applets-23.04.0.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-filetransfer-handler-22.12.3.tar.xz";
-      sha256 = "1qlx2bhm22nzrizcyvxn355g3m3fkmcr4ics8gl0m2m80mgr70v0";
-      name = "ktp-filetransfer-handler-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-filetransfer-handler-23.04.0.tar.xz";
+      sha256 = "147vq0cf5a0hb8ybl773q9v6wlhz5gwcqhf5hg2cbz86w4gdb4pm";
+      name = "ktp-filetransfer-handler-23.04.0.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-kded-module-22.12.3.tar.xz";
-      sha256 = "1rhq3ry126ds5kd3jdjsla6q1185xhs1zni24vdkvx045f7l9ppd";
-      name = "ktp-kded-module-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-kded-module-23.04.0.tar.xz";
+      sha256 = "1grs5sqznsqq7aawp99mxgc9y5h387fgm11w7kmkab89md1g01rh";
+      name = "ktp-kded-module-23.04.0.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-send-file-22.12.3.tar.xz";
-      sha256 = "0qlw5z1im54sl3n1ysgz58f66chph35q5hf7831dnva8ahnzaa6w";
-      name = "ktp-send-file-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-send-file-23.04.0.tar.xz";
+      sha256 = "145c80d4wjzq9s9iqnygxg0l8ddx0q0svlmwg2cyy66bqrxl7052";
+      name = "ktp-send-file-23.04.0.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/ktp-text-ui-23.04.0.tar.xz";
+      sha256 = "11r4f23k0ag9gyqlacmkk2r5jnvdd4z998104a44jmxjd4kg2cfb";
+      name = "ktp-text-ui-23.04.0.tar.xz";
+    };
+  };
+  ktrip = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktp-text-ui-22.12.3.tar.xz";
-      sha256 = "0ypasdncgljjy5hg4na1lrxql8rjqfwyawhsb4gif8ihfvc8ibw1";
-      name = "ktp-text-ui-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktrip-23.04.0.tar.xz";
+      sha256 = "1xi3lk142cgx3l04w1p891k77zgn8mz91qmbr1qbzx66nw5d5psf";
+      name = "ktrip-23.04.0.tar.xz";
     };
   };
   ktuberling = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/ktuberling-22.12.3.tar.xz";
-      sha256 = "0njl3g7pygk5v8cirmjg7pmlpyrhalpgwywr8na55cv5ib54m3s9";
-      name = "ktuberling-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/ktuberling-23.04.0.tar.xz";
+      sha256 = "04fv6izvi9n5xill120934miacf1p707mqw4wv3cr5aj7nz6n9sz";
+      name = "ktuberling-23.04.0.tar.xz";
     };
   };
   kturtle = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kturtle-22.12.3.tar.xz";
-      sha256 = "0idbfmxz3fx23xcssdvfhs6xyrv0y56k3jl7g4f22p0yvcp0lkb2";
-      name = "kturtle-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kturtle-23.04.0.tar.xz";
+      sha256 = "12r5hm9s78pwpwc9ira3ymh93pl7fg7fb5agyrjml3yx4h1mimcf";
+      name = "kturtle-23.04.0.tar.xz";
     };
   };
   kubrick = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kubrick-22.12.3.tar.xz";
-      sha256 = "0b3v5daa6h0rr4gwp605rvn1ygnx29z49h2lv8mcdpd8k4wm5jac";
-      name = "kubrick-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kubrick-23.04.0.tar.xz";
+      sha256 = "153g46alm996pndnl3vw7bibikgb5cs2kv1ipwwjclk0sp584hha";
+      name = "kubrick-23.04.0.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kwalletmanager-22.12.3.tar.xz";
-      sha256 = "1vilih22nfhavqkcbjphkwz978w2alqw2nic3nfvxwdnpa17j6hb";
-      name = "kwalletmanager-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kwalletmanager-23.04.0.tar.xz";
+      sha256 = "1262mjg6vyf2bb2xw34dpy3f7pd0i0rn46jdy07dqbrslpm45n7y";
+      name = "kwalletmanager-23.04.0.tar.xz";
     };
   };
   kwave = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kwave-22.12.3.tar.xz";
-      sha256 = "0dyyd5pddk4gp3gpzsfjgwhj6s8i04cgx916hyaxac75wpffbbv1";
-      name = "kwave-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kwave-23.04.0.tar.xz";
+      sha256 = "0c6kiah32v3pjrkjl8wy2wfkd7a4ap3gdqzir1xaqlk1rq7jscw8";
+      name = "kwave-23.04.0.tar.xz";
+    };
+  };
+  kweather = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/kweather-23.04.0.tar.xz";
+      sha256 = "130wiwss0plls5rrla5csjxsmd9c7vv5rcpislpk1vv683ndip9h";
+      name = "kweather-23.04.0.tar.xz";
     };
   };
   kwordquiz = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/kwordquiz-22.12.3.tar.xz";
-      sha256 = "176hxsfcgjb5x4a6mk0q5azv7466y861xa64vskss2f5ivznx26j";
-      name = "kwordquiz-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/kwordquiz-23.04.0.tar.xz";
+      sha256 = "170zkc2lw141wxp7jwjz6i9sx483xyf6yhy16gghsp3bxrjcdlqh";
+      name = "kwordquiz-23.04.0.tar.xz";
     };
   };
   libgravatar = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libgravatar-22.12.3.tar.xz";
-      sha256 = "0a7954m4i78nqf50yp81a3nlzx4pa5i9i44xn7lcxpglkl9qgd9r";
-      name = "libgravatar-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libgravatar-23.04.0.tar.xz";
+      sha256 = "096gwscc4mddhyb9b1ir8s9d2bml4309d8iqz5v6dnpfxghbr4b8";
+      name = "libgravatar-23.04.0.tar.xz";
     };
   };
   libkcddb = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkcddb-22.12.3.tar.xz";
-      sha256 = "06ks0lggbaimj8c42cm273z4j3aif7xqx6vqzv40jm6mgcvmw2jk";
-      name = "libkcddb-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkcddb-23.04.0.tar.xz";
+      sha256 = "052rwidi1i2k49qqs4jyin403f5fcyq88jjcmq2z7ixd2gh781cq";
+      name = "libkcddb-23.04.0.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkcompactdisc-22.12.3.tar.xz";
-      sha256 = "0wh89q2lf0fvly9bpg4b7aflb7bmaz0bd4v8gvslkff5nzi01y5h";
-      name = "libkcompactdisc-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkcompactdisc-23.04.0.tar.xz";
+      sha256 = "05d24a2za2692v7qgvbhz9vc9xf7hql8504pcb6x12z7w1y8q80v";
+      name = "libkcompactdisc-23.04.0.tar.xz";
     };
   };
   libkdcraw = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkdcraw-22.12.3.tar.xz";
-      sha256 = "1287jjnw0x869bxhd34vmb83igskhx98nmyp6gs136rdms8war0f";
-      name = "libkdcraw-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkdcraw-23.04.0.tar.xz";
+      sha256 = "1a0vj0m5hw3l9mhn85dfx8is4sxdyxlsjxd8dhim520wf98mvbzp";
+      name = "libkdcraw-23.04.0.tar.xz";
     };
   };
   libkdegames = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkdegames-22.12.3.tar.xz";
-      sha256 = "072zabp7ss6x8241fl3gnvxx0ihw68h8znzk6wf277idj296x3ww";
-      name = "libkdegames-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkdegames-23.04.0.tar.xz";
+      sha256 = "1wjmpy05l6d5krdiwa4hnb7gxmybgsxdlfdqxd0zw7jbsbzszhr6";
+      name = "libkdegames-23.04.0.tar.xz";
     };
   };
   libkdepim = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkdepim-22.12.3.tar.xz";
-      sha256 = "13p6j3vk0rg2hhxvv7b21lvz52ciwwwsb1rfd0nvyw6qc6b9a97v";
-      name = "libkdepim-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkdepim-23.04.0.tar.xz";
+      sha256 = "1jzb83a86a3mvmwxxrsmwnwswk1m34qnx89yzwb60rfwq8jifnv0";
+      name = "libkdepim-23.04.0.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkeduvocdocument-22.12.3.tar.xz";
-      sha256 = "04igxxmp5y2pwj914wf14shfaa38q0aif1is634j9yibja874x2g";
-      name = "libkeduvocdocument-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkeduvocdocument-23.04.0.tar.xz";
+      sha256 = "1y2bsmc34vlags1l99xxll1rj4y9vgyndwcpyv8mn4vf0j7bf3vp";
+      name = "libkeduvocdocument-23.04.0.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkexiv2-22.12.3.tar.xz";
-      sha256 = "151a6dkww9k150xh52jn2s335nkaidw0y2xvpcycfvbfpcl6x7bg";
-      name = "libkexiv2-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkexiv2-23.04.0.tar.xz";
+      sha256 = "14fkh1dmbnrvrnl1jvl5s1va3aq5wf3riv9lhhfy7lgrdp8fxlqq";
+      name = "libkexiv2-23.04.0.tar.xz";
     };
   };
   libkgapi = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkgapi-22.12.3.tar.xz";
-      sha256 = "0f2phhcmmbx60rfh5qjl990mjxrz871jgk6wisfv9ndylkxk3k4p";
-      name = "libkgapi-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkgapi-23.04.0.tar.xz";
+      sha256 = "0lb5kmqb2vc9qcha9r4n87lh0hp90qz7p98yzn4fxjn7nxnibsxc";
+      name = "libkgapi-23.04.0.tar.xz";
     };
   };
   libkipi = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkipi-22.12.3.tar.xz";
-      sha256 = "0p96cgivrsilam8laagc2imlh0966fiqn4mhpy1l0il2iwka8rsl";
-      name = "libkipi-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkipi-23.04.0.tar.xz";
+      sha256 = "19ncx8np5ji6krhbw4sxfcpa75f83s61n7xwd851776bspp5jy50";
+      name = "libkipi-23.04.0.tar.xz";
     };
   };
   libkleo = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkleo-22.12.3.tar.xz";
-      sha256 = "0na8155w79kgzqby1xl1v35sc2ragmx0cjbp7jhx9dfrprz4q544";
-      name = "libkleo-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkleo-23.04.0.tar.xz";
+      sha256 = "0sbfvank4j9jlf8wja19fa8vw2g28qkvkiwcfyz48l1r94w0w8df";
+      name = "libkleo-23.04.0.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkmahjongg-22.12.3.tar.xz";
-      sha256 = "04sc6362nsdbihy9w00ppp0x9dkllf0gj45cxi9mxg8q1nbn86m0";
-      name = "libkmahjongg-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkmahjongg-23.04.0.tar.xz";
+      sha256 = "1yn3krnm21vch9ggnxamwsanrfqgkxyjbh4d5w4xx4sjl674snwr";
+      name = "libkmahjongg-23.04.0.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libkomparediff2-22.12.3.tar.xz";
-      sha256 = "1m7n25b7hlrkspq59n54gxfid4jjj28fa2dya5mc21r5z6jxn3jr";
-      name = "libkomparediff2-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libkomparediff2-23.04.0.tar.xz";
+      sha256 = "0591h5l64mn44sfs6y4jk92kndf57hx91h53qndm8gr0cgv58nih";
+      name = "libkomparediff2-23.04.0.tar.xz";
     };
   };
   libksane = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libksane-22.12.3.tar.xz";
-      sha256 = "1kfvh4ggdrwj5gbzc9x20b7qahjklvq0qshraf3nyjp1fh237l6d";
-      name = "libksane-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libksane-23.04.0.tar.xz";
+      sha256 = "0pn7mqfrr6v2hdxw0czmxkbmaf9pi9iqkhj407j9zc1lzjd6w3cy";
+      name = "libksane-23.04.0.tar.xz";
     };
   };
   libksieve = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libksieve-22.12.3.tar.xz";
-      sha256 = "04ch9ffscmbfwmq0s173bz8pxnssqr87zwiqrz4sl2jy446r3a04";
-      name = "libksieve-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libksieve-23.04.0.tar.xz";
+      sha256 = "06szca9s6vflas5q71hiy121mfdfhp9lm8v6frpinw8csfmfjsql";
+      name = "libksieve-23.04.0.tar.xz";
     };
   };
   libktorrent = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/libktorrent-22.12.3.tar.xz";
-      sha256 = "0rf9q4gy3l3mqs88kckwcicabrzz5hm1nsff259i9bzvbzhbzhlw";
-      name = "libktorrent-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/libktorrent-23.04.0.tar.xz";
+      sha256 = "16ks5wwmxpyl7is7s2ralfa3yaqbzl58aid34akjympx4jf8lhlj";
+      name = "libktorrent-23.04.0.tar.xz";
     };
   };
   lokalize = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/lokalize-22.12.3.tar.xz";
-      sha256 = "0cqpikx65mpz2as8idlcq5hy149vpqlhx7jq58pkjaj0dnig8hf1";
-      name = "lokalize-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/lokalize-23.04.0.tar.xz";
+      sha256 = "01q7r4m4yl08jhnx4vblcfrv6fpbfm7ppq9zkkx2s4zjb3102rgv";
+      name = "lokalize-23.04.0.tar.xz";
     };
   };
   lskat = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/lskat-22.12.3.tar.xz";
-      sha256 = "0rld0xljg4pxja2qzp7qw9dylcv4d455qihd1hapy1gf8mpdc2dn";
-      name = "lskat-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/lskat-23.04.0.tar.xz";
+      sha256 = "13krjmlnpyrln6h4ky9inlhdcfs688d0lyaiszz57v5ql9lsnwh9";
+      name = "lskat-23.04.0.tar.xz";
     };
   };
   mailcommon = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/mailcommon-22.12.3.tar.xz";
-      sha256 = "03ffsh5b1w70bywyifbirsmiv0kxxbx1x0szg7xw9aw4nfvnmzaf";
-      name = "mailcommon-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/mailcommon-23.04.0.tar.xz";
+      sha256 = "0larqz7m39458s1n3rnn5flw4h3fip502kipdswmrhzmrb64vspl";
+      name = "mailcommon-23.04.0.tar.xz";
     };
   };
   mailimporter = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/mailimporter-22.12.3.tar.xz";
-      sha256 = "0i740gn18z4lmc5c4vgqq6gjvz9v7vpk88xf954rd100b21wlvj8";
-      name = "mailimporter-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/mailimporter-23.04.0.tar.xz";
+      sha256 = "1k020h86lwzjs0fpryls6q5qfkf00xrxq9jah9av3ydil4kqkbaj";
+      name = "mailimporter-23.04.0.tar.xz";
     };
   };
   marble = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/marble-22.12.3.tar.xz";
-      sha256 = "0wcdjqvmiiy8fwl3yxnmq0wi585zck5g1fxaqy4w7jvvn4qislc8";
-      name = "marble-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/marble-23.04.0.tar.xz";
+      sha256 = "0m5ffy187syah4qxphkz417h95yd8nzp6h6zs7i99x0n3j97spqr";
+      name = "marble-23.04.0.tar.xz";
     };
   };
   markdownpart = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/markdownpart-22.12.3.tar.xz";
-      sha256 = "1jzzgm666pmgxgas73mm611k19lg2593j5ffq53l1wwiva3278j9";
-      name = "markdownpart-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/markdownpart-23.04.0.tar.xz";
+      sha256 = "1h2vknqmc8fngwpki97crq3spg5dlpbswwhcasizqsdanbkg8h6v";
+      name = "markdownpart-23.04.0.tar.xz";
     };
   };
   mbox-importer = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/mbox-importer-22.12.3.tar.xz";
-      sha256 = "09aglnys5j5imjn8yhk5jay3sqlhkiza7p9x877s3lyy3xlfch5x";
-      name = "mbox-importer-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/mbox-importer-23.04.0.tar.xz";
+      sha256 = "1xa3i9g7rfimxlw5aa9sg51li89m2k9fq59xz18da08135fpkmak";
+      name = "mbox-importer-23.04.0.tar.xz";
     };
   };
   messagelib = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/messagelib-22.12.3.tar.xz";
-      sha256 = "19l27l5qbp0cfjpqcbw5dvi2granzrj1293dahf9z77v0m9bxmjm";
-      name = "messagelib-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/messagelib-23.04.0.tar.xz";
+      sha256 = "1pmgy501iircnrznpx1001rap1vm8xpxls3fryi3vyg86bq66qlz";
+      name = "messagelib-23.04.0.tar.xz";
     };
   };
   minuet = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/minuet-23.04.0.tar.xz";
+      sha256 = "01wbfsrqrxnnka536k12rzfhm9py752zy5yg8r6k3w4drhr0bwd1";
+      name = "minuet-23.04.0.tar.xz";
+    };
+  };
+  neochat = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/minuet-22.12.3.tar.xz";
-      sha256 = "0m3w3vcg3i532i0rza8igx5sp344k9jlm4wmhzkmw1mln1nqynnl";
-      name = "minuet-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/neochat-23.04.0.tar.xz";
+      sha256 = "1a6pmqim9xdxy73h7xdk1d37c5my4yam55zxdk858x727zi9lh5s";
+      name = "neochat-23.04.0.tar.xz";
     };
   };
   okular = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/okular-22.12.3.tar.xz";
-      sha256 = "00ns8qmf6vpp1fxqg71rzhzq2za9h1fs5a12rmd0vklkb5sjivq1";
-      name = "okular-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/okular-23.04.0.tar.xz";
+      sha256 = "036lpjply4557jmh3a6cl9skfqy2vb8k2zbfv24dz1mzk8lzy3bc";
+      name = "okular-23.04.0.tar.xz";
     };
   };
   palapeli = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/palapeli-22.12.3.tar.xz";
-      sha256 = "0wlr086374fg4kj827xcnqn6zk00sxpb36jdzc62q3w0sjzw1irj";
-      name = "palapeli-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/palapeli-23.04.0.tar.xz";
+      sha256 = "0vn9128fsvb3vmcap7v2l6az6ljq8nl79g06md5z4sp60v80wwyi";
+      name = "palapeli-23.04.0.tar.xz";
     };
   };
   parley = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/parley-22.12.3.tar.xz";
-      sha256 = "0jrddgfwc77lpdmfmydwmgpcqa0figv6rmmjw0xlw2f8dd4i2ghd";
-      name = "parley-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/parley-23.04.0.tar.xz";
+      sha256 = "159x0a4fjiql72ifcmyhqzxp5hnfjyld4pl55wkm37jxwn7zwjy2";
+      name = "parley-23.04.0.tar.xz";
     };
   };
   partitionmanager = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/partitionmanager-22.12.3.tar.xz";
-      sha256 = "0bdxf19yb4wnrb50vapabqjqwxccfvp3gaspagh4wgcyz7p5icjp";
-      name = "partitionmanager-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/partitionmanager-23.04.0.tar.xz";
+      sha256 = "0xqha9bai2hrl12w3xi7xjs8lyn0krzzc7s3l8hwmwvg3ds909ds";
+      name = "partitionmanager-23.04.0.tar.xz";
     };
   };
   picmi = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/picmi-22.12.3.tar.xz";
-      sha256 = "0ygryzl5x94icgr0p1qvwp4fmk51wiqzk2frj9768m4pzk0b6y50";
-      name = "picmi-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/picmi-23.04.0.tar.xz";
+      sha256 = "12fwv2blpavf8mcc1w3cj6wk7wqzksm2hapmmbfad2p7nrcssc4p";
+      name = "picmi-23.04.0.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/pim-data-exporter-22.12.3.tar.xz";
-      sha256 = "113yfrz68wab4bmzncwqmzh5bz18lidp0naax4kbaa30p95qd40b";
-      name = "pim-data-exporter-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/pim-data-exporter-23.04.0.tar.xz";
+      sha256 = "17xf5ghsxbqv0mr1pjx07lzrbqlrdanykqk39l5hk40izwmxn8a1";
+      name = "pim-data-exporter-23.04.0.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/pim-sieve-editor-22.12.3.tar.xz";
-      sha256 = "19wgpgzmmpfakm249val3fjxjx4wzb3ip4yk9m00aa0d2lb99ysn";
-      name = "pim-sieve-editor-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/pim-sieve-editor-23.04.0.tar.xz";
+      sha256 = "179cy1a7saqq1ryxxvq7c0qqkv9z5dcgwm5fvglm8wndf01ym21d";
+      name = "pim-sieve-editor-23.04.0.tar.xz";
     };
   };
   pimcommon = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/pimcommon-22.12.3.tar.xz";
-      sha256 = "1yp0h8rp9nqgwc70f4knp05jnqhygb78z8sbdxq5dn5k09ciqr8v";
-      name = "pimcommon-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/pimcommon-23.04.0.tar.xz";
+      sha256 = "1b41csnqw1ws7nqcda9hr8df5a3dprl778pyis249r2g2m5k8iil";
+      name = "pimcommon-23.04.0.tar.xz";
+    };
+  };
+  plasmatube = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/plasmatube-23.04.0.tar.xz";
+      sha256 = "0zjvlgv7jf476lk31ahb0hrj840kcgbz7vcqinn05dd5m135hglq";
+      name = "plasmatube-23.04.0.tar.xz";
     };
   };
   poxml = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/poxml-22.12.3.tar.xz";
-      sha256 = "03ymrkqp8ysmnc10brqp83zq58mjcrksafjwlpd3sqcc2crpjy90";
-      name = "poxml-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/poxml-23.04.0.tar.xz";
+      sha256 = "1y8kn6cjqlc2hxw2bi5fc9j8dgwrkg08rc3zjarzwclvrxcljj3a";
+      name = "poxml-23.04.0.tar.xz";
     };
   };
   print-manager = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/print-manager-23.04.0.tar.xz";
+      sha256 = "1gf5ia39nq5vnmh6casgjvdd73sd17z2ikiqhjw0ma2kyvn2dqxb";
+      name = "print-manager-23.04.0.tar.xz";
+    };
+  };
+  qmlkonsole = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/print-manager-22.12.3.tar.xz";
-      sha256 = "0rblnlv95zxdflnd7wb63wp8j45k2ysmykyh5l3vkyni1k2127mm";
-      name = "print-manager-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/qmlkonsole-23.04.0.tar.xz";
+      sha256 = "0ninw5bvdrgq72vc5m0q342jv25gf3w2f6n8jxw1rl1ixfhbs910";
+      name = "qmlkonsole-23.04.0.tar.xz";
     };
   };
   rocs = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/rocs-22.12.3.tar.xz";
-      sha256 = "0pgsvvdq5qnsfhh9a48ww6sbk5194c1h52dvmvz0gqgsp8k1kd47";
-      name = "rocs-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/rocs-23.04.0.tar.xz";
+      sha256 = "1mlzxqm47ia391xb4imih91xb40r9gwsdgbw0f3cl6rxzjzmv83h";
+      name = "rocs-23.04.0.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/signon-kwallet-extension-22.12.3.tar.xz";
-      sha256 = "0afzrn88nl3hn33a5zqhz8zf0dsg1n4i53ml0xw4ri57p9yfz6wm";
-      name = "signon-kwallet-extension-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/signon-kwallet-extension-23.04.0.tar.xz";
+      sha256 = "1yz85pdps997bm2074n9gq3xbg5dla716q8np3hx930d8zjdpj87";
+      name = "signon-kwallet-extension-23.04.0.tar.xz";
     };
   };
   skanlite = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/skanlite-22.12.3.tar.xz";
-      sha256 = "1kf776842hdq1jiln3dvk2qa0xh1ak96cag5lpc0yg344lvarvrz";
-      name = "skanlite-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/skanlite-23.04.0.tar.xz";
+      sha256 = "136xswpr98xd9cd19rg82iv1243lzyy2rgwplmgf6xdjbv99i0cz";
+      name = "skanlite-23.04.0.tar.xz";
     };
   };
   skanpage = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/skanpage-22.12.3.tar.xz";
-      sha256 = "0hazx7i09gs3gmglv33pnch99s17lji7vbww875lq8jsyad12rzz";
-      name = "skanpage-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/skanpage-23.04.0.tar.xz";
+      sha256 = "1r149qkjvxs3ywdqjhb52d66j9dllbn3fd3s9dkaqr89hib9yfcr";
+      name = "skanpage-23.04.0.tar.xz";
     };
   };
   spectacle = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/spectacle-22.12.3.tar.xz";
-      sha256 = "01yd2x3k019bzjk4m4hc0k1w6c9brnrnv9hkc92j0fyayiqlnzj9";
-      name = "spectacle-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/spectacle-23.04.0.tar.xz";
+      sha256 = "05sbs4qq2s99zr0fp12h1dh2sgf889xh6f0h0fq4fa2kidk4m3fv";
+      name = "spectacle-23.04.0.tar.xz";
     };
   };
   step = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/step-22.12.3.tar.xz";
-      sha256 = "08gk72l57c9x7malksg76aclxh6bmmikpnn7bg8adm92jl0jlmpy";
-      name = "step-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/step-23.04.0.tar.xz";
+      sha256 = "0jnv8y5lb0bfszx4yrl2bm480js6njjb9db7qzhgdbyh2r0lqgpx";
+      name = "step-23.04.0.tar.xz";
     };
   };
   svgpart = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/svgpart-22.12.3.tar.xz";
-      sha256 = "0x0ynzjq550f0k79rm9zrqikhv6bp4a49m5ngg556kzfhzvswlxk";
-      name = "svgpart-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/svgpart-23.04.0.tar.xz";
+      sha256 = "1jwqna54852pa3zjmcayvkwf64cgh4r4238kipf4x2yin47g5j2i";
+      name = "svgpart-23.04.0.tar.xz";
     };
   };
   sweeper = {
-    version = "22.12.3";
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/sweeper-23.04.0.tar.xz";
+      sha256 = "0zzc78g4ka4jvnmjkf3yqcni58gy6cjm795nhf6s5yjjgfg436vj";
+      name = "sweeper-23.04.0.tar.xz";
+    };
+  };
+  telly-skout = {
+    version = "23.04.0";
+    src = fetchurl {
+      url = "${mirror}/stable/release-service/23.04.0/src/telly-skout-23.04.0.tar.xz";
+      sha256 = "148smsx6sz5zlsa27g3qqzq8qzw0a1pd2a9kagdiarfcv9ifhhc2";
+      name = "telly-skout-23.04.0.tar.xz";
+    };
+  };
+  tokodon = {
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/sweeper-22.12.3.tar.xz";
-      sha256 = "0cr92xzdirwwb8v30r5qkr7n54gn47sjspbig2czrzh8jrmr9dc0";
-      name = "sweeper-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/tokodon-23.04.0.tar.xz";
+      sha256 = "1ajqf0irjlvmqzlw2v4ybl79g3j4qc9fclh6dillxakwdcn76j40";
+      name = "tokodon-23.04.0.tar.xz";
     };
   };
   umbrello = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/umbrello-22.12.3.tar.xz";
-      sha256 = "0i7h9nfljc860hyfy7xxrk4w3y5f6pqviylz7qs6gzmq4yi0q45b";
-      name = "umbrello-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/umbrello-23.04.0.tar.xz";
+      sha256 = "0id4cjs7pc0b5j901gnnj8cai9x0c6ly7nplw4b3164yazc9w878";
+      name = "umbrello-23.04.0.tar.xz";
     };
   };
   yakuake = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/yakuake-22.12.3.tar.xz";
-      sha256 = "1nqdixfdha1gxq0zhzq347v5s6ym90aj25gq8jb5df0qp0w432mx";
-      name = "yakuake-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/yakuake-23.04.0.tar.xz";
+      sha256 = "0qf02amikwwdviaw5yr5bgww2s1s83q1bd42sh1gai3g4axrnxhg";
+      name = "yakuake-23.04.0.tar.xz";
     };
   };
   zanshin = {
-    version = "22.12.3";
+    version = "23.04.0";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/22.12.3/src/zanshin-22.12.3.tar.xz";
-      sha256 = "0mx4wazlqp6aw2lgg5fmyr2x4yvfigds6j5ibvplzhz05d64clzj";
-      name = "zanshin-22.12.3.tar.xz";
+      url = "${mirror}/stable/release-service/23.04.0/src/zanshin-23.04.0.tar.xz";
+      sha256 = "1g8bngw3xllw8wgvc2f8qnkgg2kxnfhmfzk6f54h798ynva13vvn";
+      name = "zanshin-23.04.0.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/kde/telly-skout.nix b/pkgs/applications/kde/telly-skout.nix
new file mode 100644
index 0000000000000..4c84768a693aa
--- /dev/null
+++ b/pkgs/applications/kde/telly-skout.nix
@@ -0,0 +1,24 @@
+{ mkDerivation
+, lib
+, extra-cmake-modules
+, qtquickcontrols2
+, kcoreaddons
+, kconfig
+, ki18n
+, kirigami2
+}:
+
+mkDerivation {
+  pname = "telly-skout";
+
+  nativeBuildInputs = [ extra-cmake-modules ];
+
+  buildInputs = [ qtquickcontrols2 kcoreaddons kconfig ki18n kirigami2 ];
+
+  meta = {
+    description = "A convergent Kirigami TV guide";
+    homepage = "https://apps.kde.org/telly-skout/";
+    license = lib.licenses.gpl2Plus;
+    maintainers = [];
+  };
+}
diff --git a/pkgs/applications/plasma-mobile/tokodon.nix b/pkgs/applications/kde/tokodon.nix
index f93336d40fa8c..bf40a5a001550 100644
--- a/pkgs/applications/plasma-mobile/tokodon.nix
+++ b/pkgs/applications/kde/tokodon.nix
@@ -11,7 +11,6 @@
 , kirigami2
 , kirigami-addons
 , knotifications
-, libwebsockets
 , qqc2-desktop-style
 , qtbase
 , qtkeychain
@@ -21,29 +20,11 @@
 , qtwebsockets
 , kitemmodels
 , pimcommon
-
-# Workarounds for the point release being missing.
-, libsForQt5
-, fetchFromGitLab
 }:
 
-# NOTE: we cannot use `mkDerivation` injected by the Plasma Mobile package
-#       set for the point release, as the point release was not uploaded to
-#       the Plasma Mobile gear repo, and the injected `mkDerivation` only can
-#       use the src (and version) from the `srcs` set.
-libsForQt5.mkDerivation rec {
+mkDerivation {
   pname = "tokodon";
 
-  version = "23.01.0";
-  # NOTE: the tokodon point release was not uploaded to the Plasma Mobile gear repo.
-  src = fetchFromGitLab {
-    domain = "invent.kde.org";
-    owner = "network";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-iJRyKEFdoWtZLZ/nkMvy2S7EF+JRHXi3O0DswfrClDU=";
-  };
-
   nativeBuildInputs = [
     cmake
     extra-cmake-modules
diff --git a/pkgs/applications/maui/default.nix b/pkgs/applications/maui/default.nix
index b91f13d125944..3f5d1d499af5f 100644
--- a/pkgs/applications/maui/default.nix
+++ b/pkgs/applications/maui/default.nix
@@ -60,7 +60,7 @@ let
       # libraries
       mauikit = callPackage ./mauikit.nix { };
       mauikit-accounts = callPackage ./mauikit-accounts.nix { };
-      mauikit-calendar = callPackage ./mauikit-calendar.nix { };
+      mauikit-calendar = callPackage ./mauikit-calendar { };
       mauikit-filebrowsing = callPackage ./mauikit-filebrowsing.nix { };
       mauikit-imagetools = callPackage ./mauikit-imagetools.nix { };
       mauikit-texteditor = callPackage ./mauikit-texteditor.nix { };
diff --git a/pkgs/applications/maui/mauikit-calendar/add-akonadi-calendar.patch b/pkgs/applications/maui/mauikit-calendar/add-akonadi-calendar.patch
new file mode 100644
index 0000000000000..0feb15b615fef
--- /dev/null
+++ b/pkgs/applications/maui/mauikit-calendar/add-akonadi-calendar.patch
@@ -0,0 +1,10 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -89,6 +89,7 @@ set_package_properties(Qt5QuickCompiler PROPERTIES
+ find_package(MauiKit)
+
+ find_package(KF5Akonadi ${AKONADI_VERSION} CONFIG REQUIRED)
++find_package(KF5AkonadiCalendar ${AKONADI_VERSION} CONFIG REQUIRED)
+ find_package(KF5AkonadiContact ${AKONADI_CONTACT_VERSION} CONFIG REQUIRED)
+ find_package(KF5CalendarSupport ${CALENDARSUPPORT_LIB_VERSION} CONFIG REQUIRED)
+ find_package(KF5EventViews ${EVENTVIEW_LIB_VERSION} CONFIG REQUIRED)
\ No newline at end of file
diff --git a/pkgs/applications/maui/mauikit-calendar.nix b/pkgs/applications/maui/mauikit-calendar/default.nix
index 508319f1616d4..e9ea61592c0da 100644
--- a/pkgs/applications/maui/mauikit-calendar.nix
+++ b/pkgs/applications/maui/mauikit-calendar/default.nix
@@ -6,6 +6,7 @@
 , qtquickcontrols2
 , akonadi
 , akonadi-contacts
+, akonadi-calendar
 , calendarsupport
 , eventviews
 }:
@@ -13,6 +14,8 @@
 mkDerivation {
   pname = "mauikit-calendar";
 
+  patches = [ ./add-akonadi-calendar.patch ];
+
   nativeBuildInputs = [
     cmake
     extra-cmake-modules
@@ -21,6 +24,7 @@ mkDerivation {
   buildInputs = [
     akonadi
     akonadi-contacts
+    akonadi-calendar
     calendarsupport
     eventviews
     mauikit
diff --git a/pkgs/applications/misc/1password-gui/default.nix b/pkgs/applications/misc/1password-gui/default.nix
index ef9c234bb76fd..e70f129b607c4 100644
--- a/pkgs/applications/misc/1password-gui/default.nix
+++ b/pkgs/applications/misc/1password-gui/default.nix
@@ -9,43 +9,43 @@
 let
 
   pname = "1password";
-  version = if channel == "stable" then "8.10.0" else "8.10.1-19.BETA";
+  version = if channel == "stable" then "8.10.4" else "8.10.5-10.BETA";
 
   sources = {
     stable = {
       x86_64-linux = {
         url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
-        sha256 = "sha256-mIplIW1XGb7EVlPIHgzL16zvVa/3ypfwTMtVSiSvYYE=";
+        sha256 = "sha256-zFB8bUl0FNmMvNN5AoDeYdUjasJblVxRAi50V2BF5OU=";
       };
       aarch64-linux = {
         url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
-        sha256 = "sha256-xjbqZ/+sw3jBzbqhzd/mP7CZOCLYYi6KpX8Ypy/8/Es=";
+        sha256 = "sha256-gALQ43mAJy3eX/0qmdBp0yfMLgAdqAqD93CbDydvJR8=";
       };
       x86_64-darwin = {
         url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
-        sha256 = "sha256-06wOSKzxZ7xVAUyIa4Fv48Z6nbMsQ/o74mEyVkmgkJs=";
+        sha256 = "sha256-4kpf3U4G3Jx8g24kU4nXZbDA3o29hEpwACOE2zAadhA=";
       };
       aarch64-darwin = {
         url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
-        sha256 = "sha256-zDu3PBj6kvDVpiFuoOuNlmyiSK4ZVuUWX3rBBwlwEvo=";
+        sha256 = "sha256-eTRI7reSZ24S8uwNFPk8BkwMexdoXD5tlL6Bd3zzIGI=";
       };
     };
     beta = {
       x86_64-linux = {
         url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
-        sha256 = "sha256-F/dnA9mqtXXp5vx6OQ5aPrdeEBMg9g6nozzMMNAZWHk=";
+        sha256 = "sha256-GM93nW7kGeC2Mmq1ZtOK72RQc0QHvlWedDLEAmqtPt4=";
       };
       aarch64-linux = {
         url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
-        sha256 = "sha256-u8ktPt7W4teCJoXq1eEdKZCEsKxjhep/7DMHSMtuFBA=";
+        sha256 = "sha256-f0K35utZ/WPv08wRe/ZQPWC/IYiXsf/tBqhKjgeNBHc=";
       };
       x86_64-darwin = {
         url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
-        sha256 = "sha256-dZ1Vv4oocDYlw2sibnokUyAKcZ2W7zKofTX2ELamilI=";
+        sha256 = "sha256-zWS1nmRNm2SjMKWRbCJp4DRCzvVsdATdf/EMlpvRz1k=";
       };
       aarch64-darwin = {
         url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
-        sha256 = "sha256-JA2U/PfW2+qHPjqIGQL5gWIdqtd5G1lL3+hecYh2lcE=";
+        sha256 = "sha256-fQ98NJI5h0IBvrcsV8GBt9RBWDiyYq0NPtS5B5ikz8k=";
       };
     };
   };
diff --git a/pkgs/applications/misc/1password-gui/update.sh b/pkgs/applications/misc/1password-gui/update.sh
index aab589fd37ea5..fc6d350f23305 100755
--- a/pkgs/applications/misc/1password-gui/update.sh
+++ b/pkgs/applications/misc/1password-gui/update.sh
@@ -27,6 +27,18 @@ print_hash() {
     echo "$CHANNEL ${ARCH}-${OS}: $CURRENT_HASH"
 }
 
+if [[ -z "$STABLE_VER" && -n "$1" ]]; then
+    STABLE_VER="$1"
+fi
+
+if [[ -z "$BETA_VER" && -n "$2" ]]; then
+    BETA_VER="$2"
+fi
+
+if [[ "${BETA_VER: -4}" != "BETA" ]]; then
+    BETA_VER="$BETA_VER.BETA"
+fi
+
 if [[ -z "$STABLE_VER" ]]; then
     echo "No 'STABLE_VER' environment variable provided, skipping"
 else
diff --git a/pkgs/applications/misc/authenticator/default.nix b/pkgs/applications/misc/authenticator/default.nix
index 5f6d1c419567f..226219ca24830 100644
--- a/pkgs/applications/misc/authenticator/default.nix
+++ b/pkgs/applications/misc/authenticator/default.nix
@@ -22,20 +22,20 @@
 
 stdenv.mkDerivation rec {
   pname = "authenticator";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = "Authenticator";
     rev = version;
-    hash = "sha256-Nv4QE6gyh42Na/stAgTIapV8GQuUHCdL6IEO//J8dV8=";
+    hash = "sha256-WR5gXGry4wti2M4D/IQvwI7OSak1p+O+XAhr01hdv2Q=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-IS9jdr19VvgX6M1OqM6rjE8veujZcwBuOTuDm5mDXso=";
+    hash = "sha256-ZVDKTJojblVCbbdtnqcL+UVW1vkmu99AXCbgyCGNHCM=";
   };
 
   nativeBuildInputs = [
@@ -67,19 +67,11 @@ stdenv.mkDerivation rec {
     zbar
   ];
 
-  # https://gitlab.gnome.org/World/Authenticator/-/issues/362
-  preBuild = ''
-    export BINDGEN_EXTRA_CLANG_ARGS="$BINDGEN_EXTRA_CLANG_ARGS -DPW_ENABLE_DEPRECATED"
-  '';
-
   meta = {
     description = "Two-factor authentication code generator for GNOME";
     homepage = "https://gitlab.gnome.org/World/Authenticator";
     license = lib.licenses.gpl3Plus;
     maintainers = with lib.maintainers; [ austinbutler ];
     platforms = lib.platforms.linux;
-    # Fails to build on aarch64 with error
-    # "a label can only be part of a statement and a declaration is not a statement"
-    broken = stdenv.isLinux && stdenv.isAarch64;
   };
 }
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 319b264a36e70..df783bdbba5bd 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
       libharu
       libepoxy
     ]
-    ++ lib.optional (!stdenv.isAarch64) [
+    ++ lib.optionals (!stdenv.isAarch64) [
       openimagedenoise
       embree
     ]
diff --git a/pkgs/applications/misc/bottles/default.nix b/pkgs/applications/misc/bottles/default.nix
index 4f7052f9156fc..1c7a382cb385c 100644
--- a/pkgs/applications/misc/bottles/default.nix
+++ b/pkgs/applications/misc/bottles/default.nix
@@ -1,6 +1,6 @@
 { lib
 , fetchFromGitHub
-, fetchFromGitLab
+, fetchpatch
 , gitUpdater
 , python3Packages
 , blueprint-compiler
@@ -38,7 +38,15 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-8VF/CD0Wu2eV6wOpj/M6peKDthFWlcg+1NzzTSIH4S8=";
   };
 
-  patches = [ ./vulkan_icd.patch ];
+  patches = [
+    ./vulkan_icd.patch
+
+    # Remove next version
+    (fetchpatch {
+      url = "https://github.com/bottlesdevs/Bottles/commit/7cb284f9bac0b71bf632bfc70d94f7a53bc51267.patch";
+      hash = "sha256-mRF+BtQ0qM7Yvx7SONeH2wc04F87fEyNRlBuyQrzN8Y=";
+    })
+  ];
 
   # https://github.com/bottlesdevs/Bottles/wiki/Packaging
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/bottles/fhsenv.nix b/pkgs/applications/misc/bottles/fhsenv.nix
index 34036894d6e67..c5b6f924c3856 100644
--- a/pkgs/applications/misc/bottles/fhsenv.nix
+++ b/pkgs/applications/misc/bottles/fhsenv.nix
@@ -1,5 +1,5 @@
 { lib
-, buildFHSUserEnvBubblewrap
+, buildFHSEnv
 , symlinkJoin
 , bottles-unwrapped
 , gst_all_1
@@ -99,8 +99,8 @@ in
 symlinkJoin {
   name = "bottles";
   paths = [
-    (buildFHSUserEnvBubblewrap (fhsEnv // { name = "bottles"; runScript = "bottles"; }))
-    (buildFHSUserEnvBubblewrap (fhsEnv // { name = "bottles-cli"; runScript = "bottles-cli"; }))
+    (buildFHSEnv (fhsEnv // { name = "bottles"; runScript = "bottles"; }))
+    (buildFHSEnv (fhsEnv // { name = "bottles-cli"; runScript = "bottles-cli"; }))
   ];
   postBuild = ''
     mkdir -p $out/share
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 70f5f16f39c25..6e8f2b949ec53 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -32,11 +32,11 @@
 
 stdenv.mkDerivation rec {
   pname = "calibre";
-  version = "6.15.1";
+  version = "6.16.0";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz";
-    hash = "sha256-t9fG1hBlQmDh0i5ezBoqk9C9oliNNF0peKDz1YH7RBo=";
+    hash = "sha256-2Lhp9PBZ19svq26PoldJ1H8tmt95MwY0l7+g6mPUvFI=";
   };
 
   # https://sources.debian.org/patches/calibre/${version}+dfsg-1
@@ -48,8 +48,8 @@ stdenv.mkDerivation rec {
       hash = "sha256-uL1mSjgCl5ZRLbSuKxJM6XTfvVwog70F7vgKtQzQNEQ=";
     })
     (fetchpatch {
-      name = "0006-Hardening-Qt-code.patch";
-      url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}-1/debian/patches/0006-Hardening-Qt-code.patch";
+      name = "0007-Hardening-Qt-code.patch";
+      url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}-1/debian/patches/0007-Hardening-Qt-code.patch";
       hash = "sha256-9P1kGrQbWAWDzu5EUiQr7TiCPHRWUA8hxPpEvFpK20k=";
     })
   ]
diff --git a/pkgs/applications/misc/chatblade/default.nix b/pkgs/applications/misc/chatblade/default.nix
new file mode 100644
index 0000000000000..aee760a31fa9e
--- /dev/null
+++ b/pkgs/applications/misc/chatblade/default.nix
@@ -0,0 +1,47 @@
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "chatblade";
+  version = "0.2.1";
+  format = "setuptools";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-1syZyqdv+0iyAOWDychv3bGnkHs9SCxsEotxQ+G1UPo=";
+  };
+
+  doCheck = false; # there are no tests
+
+  pythonImportsCheck = [ "chatblade" ];
+  propagatedBuildInputs = with python3Packages; [
+    aiohttp
+    aiosignal
+    async-timeout
+    attrs
+    certifi
+    charset-normalizer
+    frozenlist
+    idna
+    markdown-it-py
+    mdurl
+    multidict
+    openai
+    platformdirs
+    pygments
+    pyyaml
+    regex
+    requests
+    rich
+    tiktoken
+    tqdm
+    urllib3
+    yarl
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/npiv/chatblade/";
+    description = "A CLI Swiss Army Knife for ChatGPT";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ deejayem ];
+  };
+}
diff --git a/pkgs/applications/misc/copyq/default.nix b/pkgs/applications/misc/copyq/default.nix
index d7919d2a71d1a..79317e7211217 100644
--- a/pkgs/applications/misc/copyq/default.nix
+++ b/pkgs/applications/misc/copyq/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "CopyQ";
-  version = "7.0.0";
+  version = "unstable-2023-04-14";
 
   src = fetchFromGitHub {
     owner = "hluk";
     repo = "CopyQ";
-    rev = "v${version}";
-    hash = "sha256-Wk1kTbL6LYgs1edazU39LlNZMAAm6wDbEPjuXvb5EkE=";
+    rev = "c4e481315be5a1fa35503c9717b396319b43aa9b";
+    hash = "sha256-XLuawTKzDi+ixEUcsllyW5tCVTPlzIozu1UzYOjTqDU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/cpu-x/default.nix b/pkgs/applications/misc/cpu-x/default.nix
index 197e7ec86d085..d6e3bb28e18e5 100644
--- a/pkgs/applications/misc/cpu-x/default.nix
+++ b/pkgs/applications/misc/cpu-x/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cpu-x";
-  version = "4.5.2";
+  version = "4.5.3";
 
   src = fetchFromGitHub {
     owner = "X0rg";
     repo = "CPU-X";
     rev = "v${version}";
-    sha256 = "sha256-VPmwnzoOBNLDYZsoEknbcX7QP2Tcm08pL/rw1uCK8xM=";
+    sha256 = "sha256-o48NkOPabfnwsu+nyXJOstW6g0JSUgIrEFx1nNCR7XE=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapGAppsHook nasm makeWrapper ];
diff --git a/pkgs/applications/misc/crow-translate/default.nix b/pkgs/applications/misc/crow-translate/default.nix
index 7ec45226785f6..906cf082e2979 100644
--- a/pkgs/applications/misc/crow-translate/default.nix
+++ b/pkgs/applications/misc/crow-translate/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "crow-translate";
-  version = "2.10.3";
+  version = "2.10.4";
 
   src = fetchzip {
     url = "https://github.com/${pname}/${pname}/releases/download/${version}/${pname}-${version}-source.tar.gz";
-    hash = "sha256-K6mYzR4EIBHd0w/6Dpx4ldX4iDFszmfSLT6jNTfJlDQ=";
+    hash = "sha256-M2vAH1YAvNOhDsz+BWxvteR8YX89FHtbUcQZr1uVoCs=";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/diffuse/default.nix b/pkgs/applications/misc/diffuse/default.nix
index 7623cc5d3a7f8..a75587335cada 100644
--- a/pkgs/applications/misc/diffuse/default.nix
+++ b/pkgs/applications/misc/diffuse/default.nix
@@ -14,13 +14,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "diffuse";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "MightyCreak";
     repo = "diffuse";
     rev = "v${version}";
-    sha256 = "L+6QwM7w/16IVbiyakBpP7vkbd2/BCGTiRlQG0v1XmU=";
+    sha256 = "aGg5uh9KitVP2bBUizgGIZWvzTxfJGid0WUGVNyHdlk=";
   };
 
   format = "other";
diff --git a/pkgs/applications/misc/elastic/default.nix b/pkgs/applications/misc/elastic/default.nix
new file mode 100644
index 0000000000000..316df2e02d4a0
--- /dev/null
+++ b/pkgs/applications/misc/elastic/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, vala
+, gtk4
+, libgee
+, libadwaita
+, gtksourceview5
+, blueprint-compiler
+, wrapGAppsHook4
+, appstream-glib
+, desktop-file-utils
+, template-glib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "elastic";
+  version = "0.1.3";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "elastic";
+    rev = version;
+    hash = "sha256-CZ+EeGbCzkeNx4GD+2+n3jYwz/cQStjMV2+wm/JNsYU=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    vala
+    pkg-config
+    wrapGAppsHook4
+    appstream-glib
+    desktop-file-utils
+    blueprint-compiler
+  ];
+
+  buildInputs = [
+    gtk4
+    libadwaita
+    libgee
+    gtksourceview5
+    template-glib
+  ];
+
+  meta = with lib; {
+    description = "Design spring animations";
+    homepage = "https://gitlab.gnome.org/World/elastic/";
+    mainProgram = "app.drey.Elastic";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ _0xMRTT ];
+  };
+}
diff --git a/pkgs/applications/misc/eos-installer/default.nix b/pkgs/applications/misc/eos-installer/default.nix
index 8234a77ba1456..5200907ff0dbb 100644
--- a/pkgs/applications/misc/eos-installer/default.nix
+++ b/pkgs/applications/misc/eos-installer/default.nix
@@ -1,40 +1,44 @@
-{ lib, stdenv, fetchFromGitHub
-, autoconf, autoconf-archive, automake, glib, intltool, libtool, pkg-config
-, gnome-desktop, gnupg, gtk3, udisks
+{ lib, stdenv, fetchFromGitHub, writeText
+, glib, meson, ninja, pkg-config, python3
+, coreutils, gnome-desktop, gnupg, gtk3, systemdMinimal, udisks
 }:
 
 stdenv.mkDerivation rec {
   pname = "eos-installer";
-  version = "4.0.3";
+  version = "5.0.2";
 
   src = fetchFromGitHub {
     owner = "endlessm";
     repo = "eos-installer";
     rev = "Release_${version}";
-    sha256 = "1nl6vim5dd83kvskmf13xp9d6zx39fayz4z0wqwf7xf4nwl07gwz";
+    sha256 = "utTTux8o8TN51bvnGldrtMEatiLA1AiHf/9XJZ7k7KM=";
     fetchSubmodules = true;
   };
 
   strictDeps = true;
   nativeBuildInputs = [
-    autoconf autoconf-archive automake glib intltool libtool pkg-config
+    glib gnupg meson ninja pkg-config python3
   ];
-  buildInputs = [ gnome-desktop gtk3 udisks ];
+  buildInputs = [ gnome-desktop gtk3 systemdMinimal udisks ];
 
   preConfigure = ''
-    ./autogen.sh
+    patchShebangs tests
+    substituteInPlace tests/test-scribe.c \
+        --replace /bin/true ${coreutils}/bin/true \
+        --replace /bin/false ${coreutils}/bin/false
   '';
 
-  configureFlags = [
+  mesonFlags = [
     "--libexecdir=${placeholder "out"}/bin"
-    "--localstatedir=/var"
-    "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
+    "--cross-file=${writeText "crossfile.ini" ''
+      [binaries]
+      gpg = '${gnupg}/bin/gpg'
+    ''}"
   ];
 
-  # These are for runtime, so can't be discovered from PATH, which
-  # is constructed from nativeBuildInputs.
-  GPG_PATH = "${gnupg}/bin/gpg";
-  GPGCONF_PATH = "${gnupg}/bin/gpgconf";
+  PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system";
+
+  doCheck = true;
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index 7ffe4836a3932..d6463a7b4dfb8 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonApplication rec {
   pname = "gallery-dl";
-  version = "1.25.1";
+  version = "1.25.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "gallery_dl";
-    sha256 = "sha256-us9lzchdsCD4sY4XQ1f4j3wKuFtEZnEuBrlSa3FpDP4=";
+    sha256 = "sha256-T9PzvjOdcLaO7iTxBZxucQdiAPVpk1+9wDfcpShIBdM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/misc/geoipupdate/default.nix b/pkgs/applications/misc/geoipupdate/default.nix
index 822717ca1d656..7108b80685f6c 100644
--- a/pkgs/applications/misc/geoipupdate/default.nix
+++ b/pkgs/applications/misc/geoipupdate/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "geoipupdate";
-  version = "4.11.1";
+  version = "5.0.4";
 
   src = fetchFromGitHub {
     owner = "maxmind";
     repo = "geoipupdate";
     rev = "v${version}";
-    sha256 = "sha256-85xPXqvRfc6zip3tPcxFsE+niPmnnPqi9gLF+ioqbV8=";
+    sha256 = "sha256-jes4MWJh0y5ddWjU/Hp6xwZU7/HUi/q0vF5AYQRBKiE=";
   };
 
-  vendorHash = "sha256-cPdQ7AIYUacoq885K8XBF+zChUPwbZ7YI4aDCIBOvMY=";
+  vendorHash = "sha256-OnByMNjs6C3R7v5PRDYGYekamsesz9yq2KNsI+NHcQ4=";
 
   ldflags = [ "-X main.version=${version}" ];
 
diff --git a/pkgs/applications/misc/girara/default.nix b/pkgs/applications/misc/girara/default.nix
index a6736c7a2dd3a..20ea300d127c3 100644
--- a/pkgs/applications/misc/girara/default.nix
+++ b/pkgs/applications/misc/girara/default.nix
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
     gettext
     check
     dbus
+    glib # for glib-compile-resources
   ];
 
   buildInputs = [
@@ -64,6 +65,7 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Ddocs=disabled" # docs do not seem to be installed
+    (lib.mesonEnable "tests" (stdenv.buildPlatform.canExecute stdenv.hostPlatform))
   ];
 
   checkPhase = ''
diff --git a/pkgs/applications/misc/haunt/default.nix b/pkgs/applications/misc/haunt/default.nix
index 87656d730b278..885c68f64daa2 100644
--- a/pkgs/applications/misc/haunt/default.nix
+++ b/pkgs/applications/misc/haunt/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "haunt";
-  version = "0.2.4";
+  version = "0.2.6";
 
   src = fetchurl {
     url = "https://files.dthompson.us/${pname}/${pname}-${version}.tar.gz";
-    hash = "sha256-zOkICg7KmJJhPWPtJRT3C9sYB1Oig1xLtgPNGe0n3xQ=";
+    hash = "sha256-vPKLQ9hDJdimEAXwIBGgRRlefM8/77xFQoI+0J/lkNs=";
   };
 
   nativeBuildInputs = [
@@ -27,7 +27,8 @@ stdenv.mkDerivation rec {
     guile-reader
   ];
 
-  doCheck = true;
+  # Test suite is non-determinisitic in later versions
+  doCheck = false;
 
   postInstall =
     let
diff --git a/pkgs/applications/misc/holochain-launcher/default.nix b/pkgs/applications/misc/holochain-launcher/default.nix
index f4989b2c3f036..38965da9db1e0 100644
--- a/pkgs/applications/misc/holochain-launcher/default.nix
+++ b/pkgs/applications/misc/holochain-launcher/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   name = "holochain-launcher";
-  version = "0.9.3";
+  version = "0.9.4";
 
   src = fetchurl {
     url = "https://github.com/holochain/launcher/releases/download/v${version}/holochain-launcher_${version}_amd64.deb";
-    sha256 = "sha256-hvnOB6cTL+VffwtBulrEzujxVZEQMSDoJx2HjivJ9z8=";
+    sha256 = "sha256-qTzm4pwhYbEN96a/Dz/JcJcZ2OobyQJRNC2yH4CbhzQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/houdini/default.nix b/pkgs/applications/misc/houdini/default.nix
index b9f78afda4bb3..9c560b7f8313b 100644
--- a/pkgs/applications/misc/houdini/default.nix
+++ b/pkgs/applications/misc/houdini/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, writeScript, callPackage, buildFHSUserEnv, unwrapped ? callPackage ./runtime.nix {} }:
+{ lib, stdenv, writeScript, callPackage, buildFHSEnv, unwrapped ? callPackage ./runtime.nix {} }:
 
-buildFHSUserEnv rec {
+buildFHSEnv rec {
   name = "houdini-${unwrapped.version}";
 
   targetPkgs = pkgs: with pkgs; [
diff --git a/pkgs/applications/misc/hstr/default.nix b/pkgs/applications/misc/hstr/default.nix
index e7ad05b5085ae..2963ba732f059 100644
--- a/pkgs/applications/misc/hstr/default.nix
+++ b/pkgs/applications/misc/hstr/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hstr";
-  version = "2.6";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner  = "dvorka";
     repo   = "hstr";
     rev    = version;
-    sha256 = "sha256-yfaDISnTDb20DgMOvh6jJYisV6eL/Mp5jafnWEnFG8c=";
+    hash   = "sha256-OuLy1aiEwUJDGy3+UXYF1Vx1nNXic46WIZEM1xrIPfA=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix
index 68e03b8902de3..9d621ee54177a 100644
--- a/pkgs/applications/misc/joplin-desktop/default.nix
+++ b/pkgs/applications/misc/joplin-desktop/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, appimageTools, fetchurl, undmg }:
+{ lib, stdenv, appimageTools, fetchurl, makeWrapper, undmg }:
 
 let
   pname = "joplin-desktop";
@@ -51,6 +51,9 @@ let
     extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
     extraInstallCommands = ''
       mv $out/bin/{${name},${pname}}
+      source "${makeWrapper}/nix-support/setup-hook"
+      wrapProgram $out/bin/${pname} \
+        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland}}"
       install -Dm444 ${appimageContents}/@joplinapp-desktop.desktop -t $out/share/applications
       install -Dm444 ${appimageContents}/@joplinapp-desktop.png -t $out/share/pixmaps
       substituteInPlace $out/share/applications/@joplinapp-desktop.desktop \
diff --git a/pkgs/applications/misc/kickoff/default.nix b/pkgs/applications/misc/kickoff/default.nix
new file mode 100644
index 0000000000000..a17be0e092ec1
--- /dev/null
+++ b/pkgs/applications/misc/kickoff/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, fontconfig
+, pkg-config
+, wayland
+, libxkbcommon
+, makeWrapper
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kickoff";
+  version = "0.7.0";
+
+  src = fetchFromGitHub {
+    owner = "j0ru";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-AolJXFolMEwoK3AtC93naphZetytzRl1yI10SP9Rnzo=";
+  };
+
+  cargoHash = "sha256-Twg2C29OwXfCK/rYXnyjbhmCClnsFHz8le9h4AmzXfA=";
+
+  libPath = lib.makeLibraryPath [
+    wayland
+    libxkbcommon
+  ];
+
+  buildInputs = [ fontconfig ];
+  nativeBuildInputs = [ makeWrapper pkg-config ];
+
+  postInstall = ''
+    wrapProgram "$out/bin/kickoff" --prefix LD_LIBRARY_PATH : "${libPath}"
+  '';
+
+  meta = with lib; {
+    description = "Minimalistic program launcher";
+    homepage = "https://github.com/j0ru/kickoff";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ pyxels ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/klipper-estimator/default.nix b/pkgs/applications/misc/klipper-estimator/default.nix
index 02de02c5794b5..488e4da9b7257 100644
--- a/pkgs/applications/misc/klipper-estimator/default.nix
+++ b/pkgs/applications/misc/klipper-estimator/default.nix
@@ -23,7 +23,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs =
     [ openssl ]
-    ++ lib.optional stdenv.isDarwin [ libgit2 Security ];
+    ++ lib.optionals stdenv.isDarwin [ libgit2 Security ];
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -36,4 +36,3 @@ rustPlatform.buildRustPackage rec {
     maintainers = with maintainers; [ tmarkus ];
   };
 }
-
diff --git a/pkgs/applications/misc/logseq/default.nix b/pkgs/applications/misc/logseq/default.nix
index df6490ebb264f..eb2233c163107 100644
--- a/pkgs/applications/misc/logseq/default.nix
+++ b/pkgs/applications/misc/logseq/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "logseq";
-  version = "0.9.1";
+  version = "0.9.3";
 
   src = fetchurl {
     url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
-    hash = "sha256-8jplCIylG1xbpp/VGnU06MwfqWe2E9iVQApZaWbhuVc=";
+    hash = "sha256-hwBTS6hjD66SPOPctcS2esybnVrgw77fFpt8phGt334=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/misc/lutris/fhsenv.nix b/pkgs/applications/misc/lutris/fhsenv.nix
index da1f0a2824b09..59c8be448d140 100644
--- a/pkgs/applications/misc/lutris/fhsenv.nix
+++ b/pkgs/applications/misc/lutris/fhsenv.nix
@@ -1,4 +1,4 @@
-{ lib, buildFHSUserEnv, lutris-unwrapped
+{ lib, buildFHSEnv, lutris-unwrapped
 , extraPkgs ? pkgs: [ ]
 , extraLibraries ? pkgs: [ ]
 , steamSupport ? true
@@ -13,7 +13,7 @@ let
     libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite
   ];
 
-in buildFHSUserEnv {
+in buildFHSEnv {
   name = "lutris";
 
   runScript = "lutris";
diff --git a/pkgs/applications/misc/mediaelch/default.nix b/pkgs/applications/misc/mediaelch/default.nix
index 533e05264bc82..1024ba8d9a0a0 100644
--- a/pkgs/applications/misc/mediaelch/default.nix
+++ b/pkgs/applications/misc/mediaelch/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 
 , cmake
 , qttools
@@ -33,6 +34,15 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # https://github.com/Komet/MediaElch/issues/1557
+    # build: Fix build issue with Qt 6.5 on macOS (also other platforms)
+    (fetchpatch {
+      url = "https://github.com/Komet/MediaElch/commit/872b21decf95d70073400bedbe1ad183a8267791.patch";
+      hash = "sha256-D1Ui5xg5cpvNX4IHfXQ7wN9I7Y3SuPFOWxWidcAlLEA=";
+    })
+  ];
+
   nativeBuildInputs = [
     cmake
     qttools
diff --git a/pkgs/applications/misc/mob/default.nix b/pkgs/applications/misc/mob/default.nix
index 3081bea8633c8..36855410fa656 100644
--- a/pkgs/applications/misc/mob/default.nix
+++ b/pkgs/applications/misc/mob/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "mob";
-  version = "4.1.1";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "remotemobprogramming";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-P3OxqJNhzO/aPC4Nj3vvBy5cxaahQv0IsjlIKya0p1w=";
+    sha256 = "sha256-g2l/XeSyFem2Xi/lVgfbWW+nWHxAcQV/v+2AIqB0apM=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/applications/misc/navi/default.nix b/pkgs/applications/misc/navi/default.nix
index 90350c03f413f..4049f95b1949d 100644
--- a/pkgs/applications/misc/navi/default.nix
+++ b/pkgs/applications/misc/navi/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "navi";
-  version = "2.20.1";
+  version = "2.22.1";
 
   src = fetchFromGitHub {
     owner = "denisidoro";
     repo = "navi";
     rev = "v${version}";
-    sha256 = "sha256-uu82KG2RHEP0PstoYB4eWZWFjlousT40A1XAaBfkjFE=";
+    sha256 = "sha256-dlK7R9T1AezNr3+5Or8XYAMRlnnXejIs9jXAjwTuvd8=";
   };
 
-  cargoSha256 = "sha256-gpHeyxLcDqwi96BWF6Hwlb27JG2LSUgfsE4FTB1vIoQ=";
+  cargoHash = "sha256-nastb6dsBGM8zIQ/WCfQy3Y50kH3J1dM/vnkOe/q95A=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix
index 4c740852f6af9..e3c67137243b1 100644
--- a/pkgs/applications/misc/octoprint/default.nix
+++ b/pkgs/applications/misc/octoprint/default.nix
@@ -1,5 +1,6 @@
 { pkgs
 , stdenv
+, callPackage
 , lib
 , fetchFromGitHub
 , python3
@@ -242,9 +243,10 @@ let
               ];
 
               passthru = {
-                python = self.python;
+                inherit (self) python;
                 updateScript = nix-update-script { };
                 tests = {
+                  plugins = (callPackage ./plugins.nix { }) super self;
                   inherit (nixosTests) octoprint;
                 };
               };
@@ -258,7 +260,7 @@ let
             };
           }
         )
-        (import ./plugins.nix { inherit pkgs; })
+        (callPackage ./plugins.nix { })
         packageOverrides
       ]
     );
diff --git a/pkgs/applications/misc/octoprint/plugins.nix b/pkgs/applications/misc/octoprint/plugins.nix
index 822f2c13cbeae..b80bf1c09569f 100644
--- a/pkgs/applications/misc/octoprint/plugins.nix
+++ b/pkgs/applications/misc/octoprint/plugins.nix
@@ -1,11 +1,15 @@
-{ pkgs }:
-
-with pkgs;
+{ lib
+, config
+, fetchFromGitHub
+, fetchFromGitLab
+, fetchpatch
+, marlin-calc
+}:
 
 self: super:
 let
   buildPlugin = args: self.buildPythonPackage (args // {
-    pname = "OctoPrintPlugin-${args.pname}";
+    pname = "octoprint-plugin-${args.pname}";
     inherit (args) version;
     propagatedBuildInputs = (args.propagatedBuildInputs or [ ]) ++ [ super.octoprint ];
     # none of the following have tests
@@ -16,7 +20,7 @@ in
   inherit buildPlugin;
 
   m86motorsoff = buildPlugin rec {
-    pname = "M84MotorsOff";
+    pname = "m84motorsoff";
     version = "0.1.0";
 
     src = fetchFromGitHub {
@@ -35,11 +39,13 @@ in
   };
 
   abl-expert = buildPlugin rec {
-    pname = "ABL_Expert";
+    pname = "abl-expert";
     version = "0.6";
 
-    src = fetchgit {
-      url = "https://framagit.org/razer/Octoprint_ABL_Expert/";
+    src = fetchFromGitLab {
+      domain = "framagit.org";
+      owner = "razer";
+      repo = "Octoprint_ABL_Expert";
       rev = version;
       sha256 = "0ij3rvdwya1sbymwm5swlh2j4jagb6fal945g88zrzh5xf26hzjh";
     };
@@ -53,12 +59,12 @@ in
   };
 
   bedlevelvisualizer = buildPlugin rec {
-    pname = "BedLevelVisualizer";
+    pname = "bedlevelvisualizer";
     version = "1.1.0";
 
     src = fetchFromGitHub {
       owner = "jneilliii";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-BedLevelVisualizer";
       rev = version;
       sha256 = "sha256-SKrhtTGyDuvbDmUCXSx83Y+C83ZzVHA78TwMYwE6tcc=";
     };
@@ -74,12 +80,12 @@ in
   };
 
   costestimation = buildPlugin rec {
-    pname = "CostEstimation";
+    pname = "costestimation";
     version = "3.4.0";
 
     src = fetchFromGitHub {
       owner = "OllisGit";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-CostEstimation";
       rev = version;
       sha256 = "sha256-04OPa/RpM8WehUmOp195ocsAjAvKdVY7iD5ybzQO7Dg=";
     };
@@ -93,12 +99,12 @@ in
   };
 
   curaenginelegacy = buildPlugin rec {
-    pname = "CuraEngineLegacy";
+    pname = "curaenginelegacy";
     version = "1.1.2";
 
     src = fetchFromGitHub {
       owner = "OctoPrint";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-CuraEngineLegacy";
       rev = version;
       sha256 = "sha256-54siSmzgPlnCRpkpZhXU9theNQ3hqL3j+Ip4Ie2w2vA=";
     };
@@ -112,12 +118,12 @@ in
   };
 
   displayprogress = buildPlugin rec {
-    pname = "DisplayProgress";
+    pname = "displayprogress";
     version = "0.1.3";
 
     src = fetchFromGitHub {
       owner = "OctoPrint";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-DisplayProgress";
       rev = version;
       sha256 = "080prvfwggl4vkzyi369vxh1n8231hrl8a44f399laqah3dn5qw4";
     };
@@ -131,12 +137,12 @@ in
   };
 
   displaylayerprogress = buildPlugin rec {
-    pname = "OctoPrint-DisplayLayerProgress";
+    pname = "displaylayerprogress";
     version = "1.26.0";
 
     src = fetchFromGitHub {
       owner = "OllisGit";
-      repo = pname;
+      repo = "OctoPrint-DisplayLayerProgress";
       rev = version;
       sha256 = "sha256-hhHc2SPixZCPJzCP8enMMWNYaYbNZAU0lNSx1B0d++4=";
     };
@@ -149,8 +155,8 @@ in
     };
   };
 
-  ender3v2tempfix = buildPlugin rec {
-    pname = "OctoPrintPlugin-ender3v2tempfix";
+  ender3v2tempfix = buildPlugin {
+    pname = "ender3v2tempfix";
     version = "unstable-2021-04-27";
 
     src = fetchFromGitHub {
@@ -169,12 +175,12 @@ in
   };
 
   gcodeeditor = buildPlugin rec {
-    pname = "GcodeEditor";
+    pname = "gcodeeditor";
     version = "0.2.12";
 
     src = fetchFromGitHub {
       owner = "ieatacid";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-GcodeEditor";
       rev = version;
       sha256 = "sha256-1Sk2ri3DKW8q8VJ/scFjpRsz65Pwt8OEURP1k70aydE=";
     };
@@ -188,12 +194,12 @@ in
   };
 
   marlingcodedocumentation = buildPlugin rec {
-    pname = "MarlinGcodeDocumentation";
+    pname = "marlingcodedocumentation";
     version = "0.13.0";
 
     src = fetchFromGitHub {
       owner = "costas-basdekis";
-      repo = pname;
+      repo = "MarlinGcodeDocumentation";
       rev = "v${version}";
       sha256 = "sha256-3ay6iCxZk8QkFM/2Y14VTpPoxr6NXq14BFSHofn3q7I=";
     };
@@ -207,7 +213,7 @@ in
   };
 
   mqtt = buildPlugin rec {
-    pname = "MQTT";
+    pname = "mqtt";
     version = "0.8.10";
 
     src = fetchFromGitHub {
@@ -228,12 +234,12 @@ in
   };
 
   printtimegenius = buildPlugin rec {
-    pname = "PrintTimeGenius";
+    pname = "printtimegenius";
     version = "2.2.8";
 
     src = fetchFromGitHub {
       owner = "eyal0";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-PrintTimeGenius";
       rev = version;
       sha256 = "sha256-Bbpm7y4flzEbUb6Sgkp6hIIHs455A0IsbmzvZwlkbh0=";
     };
@@ -246,7 +252,7 @@ in
     preConfigure = ''
       # PrintTimeGenius ships with marlin-calc binaries for multiple architectures
       rm */analyzers/marlin-calc*
-      sed 's@"{}.{}".format(binary_base_name, machine)@"${pkgs.marlin-calc}/bin/marlin-calc"@' -i */analyzers/analyze_progress.py
+      sed 's@"{}.{}".format(binary_base_name, machine)@"${marlin-calc}/bin/marlin-calc"@' -i */analyzers/analyze_progress.py
     '';
 
     meta = with lib; {
@@ -258,12 +264,12 @@ in
   };
 
   psucontrol = buildPlugin rec {
-    pname = "PSUControl";
+    pname = "psucontrol";
     version = "1.0.6";
 
     src = fetchFromGitHub {
       owner = "kantlivelong";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-PSUControl";
       rev = version;
       sha256 = "sha256-S+lPm85+ZEO/3BXYsrxE4FU29EGWzWrSw3y1DLdByrM=";
     };
@@ -286,12 +292,12 @@ in
   };
 
   simpleemergencystop = buildPlugin rec {
-    pname = "SimpleEmergencyStop";
+    pname = "simpleemergencystop";
     version = "1.0.5";
 
     src = fetchFromGitHub {
       owner = "Sebclem";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-SimpleEmergencyStop";
       rev = version;
       sha256 = "sha256-MbP3cKa9FPElQ/M8ykYh9kVXl8hNvmGiCHDvjgWvm9k=";
     };
@@ -305,7 +311,7 @@ in
   };
 
   stlviewer = buildPlugin rec {
-    pname = "STLViewer";
+    pname = "stlviewer";
     version = "0.4.2";
 
     src = fetchFromGitHub {
@@ -324,12 +330,12 @@ in
   };
 
   telegram = buildPlugin rec {
-    pname = "Telegram";
+    pname = "telegram";
     version = "1.6.5";
 
     src = fetchFromGitHub {
       owner = "fabianonline";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-Telegram";
       rev = version;
       sha256 = "sha256-SckJCbPNCflgGYLHFiXy0juCtpvo8YS1BQsFpc1f5rg=";
     };
@@ -345,14 +351,14 @@ in
   };
 
   themeify = buildPlugin rec {
-    pname = "Themeify";
+    pname = "themeify";
     version = "1.2.2";
 
     src = fetchFromGitHub {
       owner = "Birkbjo";
-      repo = "Octoprint-${pname}";
+      repo = "Octoprint-Themeify";
       rev = "v${version}";
-      sha256 = "0j1qs6kyh947npdy7pqda25fjkqinpas3sy0qyscqlxi558lhvx2";
+      sha256 = "sha256-om9IUSmxU8y0x8DrodW1EU/pilAN3+PbtYck6KfROEg=";
     };
 
     meta = with lib; {
@@ -364,7 +370,7 @@ in
   };
 
   titlestatus = buildPlugin rec {
-    pname = "TitleStatus";
+    pname = "titlestatus";
     version = "0.0.5";
 
     src = fetchFromGitHub {
@@ -383,12 +389,12 @@ in
   };
 
   touchui = buildPlugin rec {
-    pname = "TouchUI";
+    pname = "touchui";
     version = "0.3.18";
 
     src = fetchFromGitHub {
       owner = "BillyBlaze";
-      repo = "OctoPrint-${pname}";
+      repo = "OctoPrint-TouchUI";
       rev = version;
       sha256 = "sha256-PNDCjY7FhfnwK7Nd86el9ZQ00G4uMANH2Sk080iMYXw=";
     };
@@ -402,7 +408,7 @@ in
   };
 
   octoklipper = buildPlugin rec {
-    pname = "OctoKlipper";
+    pname = "octoklipper";
     version = "0.3.8.3";
 
     src = fetchFromGitHub {
@@ -421,36 +427,47 @@ in
   };
 
   octolapse = buildPlugin rec {
-    pname = "Octolapse";
-    version = "0.4.1";
+    pname = "octolapse";
+    version = "0.4.2";
 
     src = fetchFromGitHub {
       owner = "FormerLurker";
-      repo = pname;
+      repo = "Octolapse";
       rev = "v${version}";
-      sha256 = "13q20g7brabplc198jh67lk65rn140r8217iak9b2jy3in8fggv4";
+      sha256 = "sha256-QP6PkKWKUv4uIaYdqTAsZmK7DVes94Q9K/DrBYrWxzY=";
     };
 
+    patches = [
+      # fix version constraint
+      # https://github.com/FormerLurker/Octolapse/pull/894
+      (fetchpatch {
+        url = "https://github.com/FormerLurker/Octolapse/commit/0bd7db2430aef370f2665c6c7011fc3bb559122e.patch";
+        hash = "sha256-z2aEq5sJGarGtIDbTRCvXdSj+kq8HIVvLRWpKutmJNY=";
+      })
+    ];
+
     # Test fails due to code executed on import, see #136513
     #pythonImportsCheck = [ "octoprint_octolapse" ];
 
-    propagatedBuildInputs = with super; [ awesome-slugify setuptools pillow sarge six psutil file-read-backwards ];
+    propagatedBuildInputs = with super; [ awesome-slugify setuptools pillow sarge six pillow psutil file-read-backwards ];
 
     meta = with lib; {
       description = "Stabilized timelapses for Octoprint";
       homepage = "https://github.com/FormerLurker/OctoLapse";
       license = licenses.agpl3Plus;
       maintainers = with maintainers; [ illustris j0hax ];
+      # requires pillow >=6.2.0,<7.0.0
+      broken = true;
     };
   };
 
-  octoprint-dashboard = buildPlugin rec {
-    pname = "OctoPrint-Dashboard";
+  dashboard = buildPlugin rec {
+    pname = "dashboard";
     version = "1.18.3";
 
     src = fetchFromGitHub {
       owner = "StefanCohen";
-      repo = pname;
+      repo = "OctoPrint-Dashboard";
       rev = version;
       sha256 = "sha256-hLHT3Uze/6PlOCEICVZ2ieFTyXgcqCvgHOlIIEquujg=";
     };
@@ -462,4 +479,6 @@ in
       maintainers = with maintainers; [ j0hax ];
     };
   };
+} // lib.optionalAttrs config.allowAliases {
+  octoprint-dashboard = self.dashboard;
 }
diff --git a/pkgs/applications/misc/oxker/default.nix b/pkgs/applications/misc/oxker/default.nix
index 3225b5807df3a..46eb61fbabbdb 100644
--- a/pkgs/applications/misc/oxker/default.nix
+++ b/pkgs/applications/misc/oxker/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "oxker";
-  version = "0.2.5";
+  version = "0.3.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-w0YLSwRv6uhDwi06q0/mhGc5C6O2xq3vc9Se7/xXkhA=";
+    sha256 = "sha256-VIsop0XjadZQecKRbt+2U2qrMVmPaLZGUuMEY8v+aJ8=";
   };
 
-  cargoHash = "sha256-Q0+6YgcdWa4RjNA7ffQJN0uIN8UFuCdbYjTFoM8w8uo=";
+  cargoHash = "sha256-wBTbHHCNZvp1xc6iiK6LzBFYsF9RPHA74YM6SDv6x94=";
 
   meta = with lib; {
     description = "A simple tui to view & control docker containers";
diff --git a/pkgs/applications/misc/pdfstudio/common.nix b/pkgs/applications/misc/pdfstudio/common.nix
index 8d4f7866b8d35..17bbd6dfc8894 100644
--- a/pkgs/applications/misc/pdfstudio/common.nix
+++ b/pkgs/applications/misc/pdfstudio/common.nix
@@ -5,7 +5,8 @@
 , version
 , desktopName
 , longDescription
-, buildFHSUserEnv
+, broken ? false
+, buildFHSEnv
 , extraBuildInputs ? [ ]
 , jdk
 , stdenv
@@ -68,7 +69,7 @@ let
 
 in
 # Package with cups in FHS sandbox, because JAVA bin expects "/usr/bin/lpr" for printing.
-buildFHSUserEnv {
+buildFHSEnv {
   name = pname;
   targetPkgs = pkgs: [
     cups
@@ -94,6 +95,7 @@ buildFHSUserEnv {
     ];
     license = licenses.unfree;
     platforms = platforms.linux;
+    inherit broken;
     mainProgram = pname;
     maintainers = [ maintainers.pwoelfel ];
   };
diff --git a/pkgs/applications/misc/pdfstudio/default.nix b/pkgs/applications/misc/pdfstudio/default.nix
index b5d49aa902123..cc7f0cb906676 100644
--- a/pkgs/applications/misc/pdfstudio/default.nix
+++ b/pkgs/applications/misc/pdfstudio/default.nix
@@ -40,6 +40,8 @@ in
       sha256 = "sha256-cc8YjrMsYZqgmwp5+AA+HsqzjxzFcTT/ga31NQz/OWc=";
     };
     jdk = jdk11;
+
+    broken = true; # Bad hash, probably unstable
   };
 
   pdfstudio2021 = callPackage ./common.nix rec {
@@ -66,5 +68,7 @@ in
       (lib.getLib stdenv.cc.cc)  # for libstdc++.so.6 and libgomp.so.1
     ];
     jdk = jdk17;
+
+    broken = true; # URL 404s, probably unstable
   };
 }.${pname}
diff --git a/pkgs/applications/misc/qcad/default.nix b/pkgs/applications/misc/qcad/default.nix
index c5791c1a1c89a..683f0eb5a8cb2 100644
--- a/pkgs/applications/misc/qcad/default.nix
+++ b/pkgs/applications/misc/qcad/default.nix
@@ -18,14 +18,14 @@
 
 mkDerivation rec {
   pname = "qcad";
-  version = "3.27.9.3";
+  version = "3.28.1.0";
 
   src = fetchFromGitHub {
     name = "qcad-${version}-src";
     owner = "qcad";
     repo = "qcad";
     rev = "v${version}";
-    sha256 = "sha256-JEUV8TtVYSlO+Gmg/ktMTmTlOmH+2zc6/fLkVHD7eBc=";
+    sha256 = "sha256-NizAUyj6YbfjxXDQkVaqzkp11WMJlt4FMr72i3Cn564=";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/rofi-emoji/default.nix b/pkgs/applications/misc/rofi-emoji/default.nix
index 293f214b60736..6d66827138558 100644
--- a/pkgs/applications/misc/rofi-emoji/default.nix
+++ b/pkgs/applications/misc/rofi-emoji/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rofi-emoji";
-  version = "3.1.0";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "Mange";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YMQG0XO6zVei6GfBdgI7jtB7px12e+xvOMxZ1QHf5kQ=";
+    sha256 = "sha256-P7AHLwqicKYj5I0Rl9B5mdD/v9iW9aihkNo7enonRF4=";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/shavee/default.nix b/pkgs/applications/misc/shavee/default.nix
new file mode 100644
index 0000000000000..12ba3fbf6c3b9
--- /dev/null
+++ b/pkgs/applications/misc/shavee/default.nix
@@ -0,0 +1,39 @@
+{ lib, pkgs, rustPlatform, fetchFromGitHub, pkg-config, openssl, zlib,stdenv, pam }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "shavee";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "ashuio";
+    repo = "shavee";
+    rev = "v${version}";
+    sha256 = "sha256-41wJ3QBZdmCl7v/6JetXhzH2zF7tsKYMKZY1cKhByX8=";
+  };
+
+  cargoSha256 = "sha256-iNGn5KknSNgazFSu6Nur7AkKVb6qKMxuFwTdCz5djWU=";
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+    zlib
+    pam
+  ];
+
+   # these tests require network access
+  checkFlags = [
+    "--skip=filehash::tests::remote_file_hash"
+    "--skip=filehash::tests::get_filehash_unit_test"
+  ];
+
+  meta = with lib; {
+    description = "A Program to automatically decrypt and mount ZFS datasets using Yubikey HMAC as 2FA or any File on USB/SFTP/HTTPS.";
+    homepage = "https://github.com/ashuio/shavee";
+    license = licenses.mit;
+    maintainers = with maintainers; [jasonodoom];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/sidequest/default.nix b/pkgs/applications/misc/sidequest/default.nix
index 23684142a09b4..b1c99ab3857eb 100644
--- a/pkgs/applications/misc/sidequest/default.nix
+++ b/pkgs/applications/misc/sidequest/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, buildFHSUserEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
+{ stdenv, lib, fetchurl, buildFHSEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
   let
     pname = "sidequest";
     version = "0.10.24";
@@ -38,7 +38,7 @@
           "$out/lib/SideQuest/sidequest"
       '';
     };
-  in buildFHSUserEnv {
+  in buildFHSEnv {
     name = "SideQuest";
 
     passthru = {
diff --git a/pkgs/applications/misc/snapmaker-luban/default.nix b/pkgs/applications/misc/snapmaker-luban/default.nix
index 266eb511938ea..2c01cf2a0e78f 100644
--- a/pkgs/applications/misc/snapmaker-luban/default.nix
+++ b/pkgs/applications/misc/snapmaker-luban/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "snapmaker-luban";
-  version = "4.7.0";
+  version = "4.7.2";
 
   src = fetchurl {
     url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz";
-    sha256 = "sha256-iIAK4XqxtdV+3FZHhzerMLcpfniKhNMGnfGA+W2inZc=";
+    sha256 = "sha256-Orl3nKqkz1L1MTUEaxpnhD/nzQPDXxzgAP/GfC5tQ/o=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/spicetify-cli/default.nix b/pkgs/applications/misc/spicetify-cli/default.nix
index 4e2cc8078ae4a..53faf60f92e64 100644
--- a/pkgs/applications/misc/spicetify-cli/default.nix
+++ b/pkgs/applications/misc/spicetify-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "spicetify-cli";
-  version = "2.17.1";
+  version = "2.17.2";
 
   src = fetchFromGitHub {
     owner = "spicetify";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hgLJVD3JEehQjPO5T54xk5JxbcVyiBu4PXV+EdOczag=";
+    sha256 = "sha256-WVatvMdCp4BeCe5+hz933OAJIKaR4ChR22nVrl8tmIc=";
   };
 
   vendorHash = "sha256-mAtwbYuzkHUqG4fr2JffcM8PmBsBrnHWyl4DvVzfJCw=";
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 2822d13745491..4ccea88032e66 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -1,5 +1,6 @@
 { mkDerivation
 , lib
+, stdenv
 , fetchFromGitHub
 , substituteAll
 , qtbase
@@ -14,11 +15,12 @@
 , kio
 , plasma-framework
 , qttools
+, iconv
 , webviewSupport ? true
 , jsSupport ? true
-, kioPluginSupport ? true
-, plasmoidSupport  ? true
-, systemdSupport ? true
+, kioPluginSupport ? stdenv.isLinux
+, plasmoidSupport  ? stdenv.isLinux
+, systemdSupport ? stdenv.isLinux
 /* It is possible to set via this option an absolute exec path that will be
 written to the `~/.config/autostart/syncthingtray.desktop` file generated
 during runtime. Alternatively, one can edit the desktop file themselves after
@@ -44,7 +46,7 @@ mkDerivation rec {
     qtutilities
     boost
     qtforkawesome
-  ]
+  ] ++ lib.optionals stdenv.isDarwin [ iconv ]
     ++ lib.optionals webviewSupport [ qtwebengine ]
     ++ lib.optionals jsSupport [ qtdeclarative ]
     ++ lib.optionals kioPluginSupport [ kio ]
@@ -59,7 +61,8 @@ mkDerivation rec {
   ;
 
   # No tests are available by upstream, but we test --help anyway
-  doInstallCheck = true;
+  # Don't test on Darwin because output is .app
+  doInstallCheck = !stdenv.isDarwin;
   installCheckPhase = ''
     $out/bin/syncthingtray --help | grep ${version}
   '';
@@ -79,6 +82,6 @@ mkDerivation rec {
     description = "Tray application and Dolphin/Plasma integration for Syncthing";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ doronbehar ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/applications/misc/todoist/default.nix b/pkgs/applications/misc/todoist/default.nix
index f28797b88e570..0c69c4b1140d6 100644
--- a/pkgs/applications/misc/todoist/default.nix
+++ b/pkgs/applications/misc/todoist/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "todoist";
-  version = "0.18.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "sachaos";
     repo = "todoist";
     rev = "v${version}";
-    sha256 = "sha256-46wNacsK2kGHaq2MgcW4ELI2TIY+4leraGQwU4V7sVo=";
+    sha256 = "sha256-i8q9L8x9LNodL3ilFK5kiq744yclRfsexxS7E0i9JSo=";
   };
 
-  vendorSha256 = "sha256-ly+OcRo8tGeNX4FnqNVaqjPx/A1FALOnScxs04lIOiU=";
+  vendorHash = "sha256-fWFFWFVnLtZivlqMRIi6TjvticiKlyXF2Bx9Munos8M=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/wthrr/default.nix b/pkgs/applications/misc/wthrr/default.nix
new file mode 100644
index 0000000000000..16f73b3026805
--- /dev/null
+++ b/pkgs/applications/misc/wthrr/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, openssl
+, stdenv
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "wthrr";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "tobealive";
+    repo = "wthrr-the-weathercrab";
+    rev = "v${version}";
+    hash = "sha256-u8d3bX0jRe8N7LIhENMVI9MyR5HF2a8kyuMYw8s+PSc=";
+  };
+
+  cargoHash = "sha256-mrPydD45L51OSrVPYpXLli1rPlmUpKMcPWql1XrZu1Y=";
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.CoreFoundation
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  checkFlags = [
+    # requires internet access
+    "--skip=modules::localization::tests::translate_string"
+    "--skip=modules::location::tests::geolocation_response"
+  ];
+
+  meta = with lib; {
+    description = "Weather companion for the terminal";
+    homepage = "https://github.com/tobealive/wthrr-the-weathercrab";
+    changelog = "https://github.com/tobealive/wthrr-the-weathercrab/releases/tag/${src.rev}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/applications/misc/xmrig/moneroocean.nix b/pkgs/applications/misc/xmrig/moneroocean.nix
index 56eca7606522a..b3ba4938abd50 100644
--- a/pkgs/applications/misc/xmrig/moneroocean.nix
+++ b/pkgs/applications/misc/xmrig/moneroocean.nix
@@ -2,13 +2,13 @@
 
 xmrig.overrideAttrs (oldAttrs: rec {
   pname = "xmrig-mo";
-  version = "6.19.1-mo1";
+  version = "6.19.2-mo1";
 
   src = fetchFromGitHub {
     owner = "MoneroOcean";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "sha256-wrjn1QhHI/OeSpPkwuwqQAsTOW8O/lNqIgKjkjxSbbA=";
+    sha256 = "sha256-L2upscNOTEQTbJ9ZnbXIpqPNmQDv56/7UYzlKndEulc=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/avalanchego/default.nix b/pkgs/applications/networking/avalanchego/default.nix
index 9ef5ebe21e72d..170255339a039 100644
--- a/pkgs/applications/networking/avalanchego/default.nix
+++ b/pkgs/applications/networking/avalanchego/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "avalanchego";
-  version = "1.9.16";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "ava-labs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-xskLRQLjLSXXHK39h7e8knP5OtIbcllF7OvefPpIQCU=";
+    hash = "sha256-OQh8xub/4DHZk4sGIJldyoXGR/TQ9F0reERk2lpjYi8=";
   };
 
-  vendorHash = "sha256-lyXP1mkJmHpHHMtH0rXa0orf5u+AbZ4H/MJXt8o49ng=";
+  vendorHash = "sha256-etvCtNCW6tuzKZEEx2RODzMx0W9hGoXNS2jWGJO+Pc0=";
   # go mod vendor has a bug, see: https://github.com/golang/go/issues/57529
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index 7deb802e5b673..d3c4e67b114dc 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -90,11 +90,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "brave";
-  version = "1.50.114";
+  version = "1.50.125";
 
   src = fetchurl {
     url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-    sha256 = "sha256-aZuNxO4whVRUb4Up0VwyMiI50OumWuCDfzm15ywGdIk=";
+    sha256 = "sha256-QVKCH8w593uF948tyavABI0g6sG0oteS/1O8Ncz77ps=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json
index e34595db624a5..aaedbcb780999 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.json
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json
@@ -1,8 +1,8 @@
 {
   "stable": {
-    "version": "112.0.5615.49",
-    "sha256": "0hgzbbmz40235binfn3vkkxzvwxilaxg04dclqrz980z7hvkgzfx",
-    "sha256bin64": "0jq5pbyayk8pa9ksxp2dk3k7j2jic506mfpkq1a1z48j1l4fkr5i",
+    "version": "112.0.5615.165",
+    "sha256": "1zbrgkzcb211y1mvi9g35421dnp5bskkczwnpygzja7lm7z6530n",
+    "sha256bin64": "16da3zi0qy2nc92jf90zvncss3xk9ggiys3ld9j0ghbsrs1jxbvm",
     "deps": {
       "gn": {
         "version": "2023-02-17",
@@ -12,16 +12,16 @@
       }
     },
     "chromedriver": {
-      "version": "112.0.5615.28",
-      "sha256_linux": "13i2y1zd3dxjvs9575m00gg8xxll1g08sn7dayl7l8qr3zy74p98",
-      "sha256_darwin": "0mw8h7ijc0nf7c2j731w30ajh6djy1lk6nak81fpksgk98vkv64f",
-      "sha256_darwin_aarch64": "103b3n7vxqvim4ks8vi5b29d41wdldkj1rz94fnqvgw04lykm9sk"
+      "version": "112.0.5615.49",
+      "sha256_linux": "0acp7hck7p9v1ysyzdyyrj43z2azlj35l8sw2f8fn5nfbl4bsbkf",
+      "sha256_darwin": "14205fqfinlqw9kbs2p6pzb666mnz8rbfim1crpdkzsrfn5dlb9h",
+      "sha256_darwin_aarch64": "17v9k9k5p3rwq1i58xw19p93hzirp0r0aiq5s3gc20i7ka3bk1xj"
     }
   },
   "beta": {
-    "version": "113.0.5672.24",
-    "sha256": "1z7yv5lqi1n4ycymkf0kz1v8ig06n430a37ik8hri3a6db8r9lv8",
-    "sha256bin64": "1y9jaw47dgphqr2l8yc36s7k9lf4qrbmfll1d2d1zdjd5ma3slab",
+    "version": "113.0.5672.53",
+    "sha256": "0k91xx3fm0kywjn00s9b7p776882b1mfajf2ig0iz3jac6rprh56",
+    "sha256bin64": "1pzpigz8l6hsddb7v2g9m5d32hlq979l1cpj2yfnc6dixjs8x053",
     "deps": {
       "gn": {
         "version": "2023-03-18",
@@ -32,22 +32,22 @@
     }
   },
   "dev": {
-    "version": "114.0.5696.0",
-    "sha256": "0hcf971azy3jjsl211qk53b6nk0f4pzf2dwfv3rjh4f6fa3nbwai",
-    "sha256bin64": "1ssj633vdg3ghd87az28q262ly1fk7rc3k70l1531xvj2030ijrl",
+    "version": "114.0.5720.4",
+    "sha256": "1q9r4m1gda1mq0nwi00yfpxsqdghd0qb3k7a0xa9py8l6jcv8ifa",
+    "sha256bin64": "15ss5xix773yn4g24ww9bw38g7wxgwhdqbgmwy44yvp0yl824czb",
     "deps": {
       "gn": {
-        "version": "2023-03-18",
+        "version": "2023-04-07",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "41fef642de70ecdcaaa26be96d56a0398f95abd4",
-        "sha256": "12w4g2dl58283allclpi1c4i6ih9v2xvdb9hpbmfda12v8lizmlq"
+        "rev": "ffeea1b1fd070cb6a8d47154a03f8523486b50a7",
+        "sha256": "0xpwh06a82nb4j9ifr878rij97dikfcjfbc08cnkmxrx7hs1sjdw"
       }
     }
   },
   "ungoogled-chromium": {
-    "version": "112.0.5615.50",
-    "sha256": "006x62z7cpb2aqi2q67l1n3nq1wyrmdgdnkdc46xjw751jax8h8j",
-    "sha256bin64": null,
+    "version": "112.0.5615.165",
+    "sha256": "1zbrgkzcb211y1mvi9g35421dnp5bskkczwnpygzja7lm7z6530n",
+    "sha256bin64": "16da3zi0qy2nc92jf90zvncss3xk9ggiys3ld9j0ghbsrs1jxbvm",
     "deps": {
       "gn": {
         "version": "2023-02-17",
@@ -56,8 +56,8 @@
         "sha256": "075p4jwk1apvwmqmvhwfw5f669ci7nxwjq9mz5aa2g5lz4fkdm4c"
       },
       "ungoogled-patches": {
-        "rev": "112.0.5615.50-1",
-        "sha256": "0axz76hbcc5h6gqv41yxd0yy9vcldps5xn9ffx98iyzghi76z1sa"
+        "rev": "112.0.5615.165-1",
+        "sha256": "1q2870z4k2hkn3jh24xc0xiadd1sxc4apn1jz740yzlwsi6jmcgw"
       }
     }
   }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index f90e64763b454..4267ec80c2ce4 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,1015 +1,1015 @@
 {
-  version = "113.0b2";
+  version = "113.0b4";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ach/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ach/firefox-113.0b4.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "63bc87c112ea0550bf859e5531870a3ca88ead4782fe2b8cd064f29820dd9072";
+      sha256 = "bd2ef5cb7f385ed11a813eb70f7599e9a95045b2095c982ddd33ed1d4c9b9938";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/af/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/af/firefox-113.0b4.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "69c91441b99ed38a4e492c9103f541ee729922aed7f7e1dfc85a62925654b1dd";
+      sha256 = "0f736e3a332bf351703fe6ef3ae5c498497d240891bd722beff3d0cae95b6f42";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/an/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/an/firefox-113.0b4.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "1650b2fab644b920829d55ec7d54267edb3cd46d0ea9a6e9cab27df512882874";
+      sha256 = "46575d630aada9e974dc47099ce03388806ce088fe30ed60112695b3e7df16bc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ar/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ar/firefox-113.0b4.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "8a1e7d94309dd4eeb90638b197b85b8d3538fc6314d2444659f05f673cb89781";
+      sha256 = "06827c3ef613643c4aca61fe608488df1373016f3a601b8352d7f40971f837ca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ast/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ast/firefox-113.0b4.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "3eaa57e4d7c92acad0c27764e1c1328a6056aa6e9499ea3d1be43694526a2966";
+      sha256 = "52b7ed3cf3b4d95a5786dc6ff0ea408268430fb33a702d4e5f15bf101057daec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/az/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/az/firefox-113.0b4.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "4d1baac45cd347ef8fd22c3c5971b8b18115fac37044095fd8342e1826b456aa";
+      sha256 = "e4e5c82337aaa5013d96baa0039e441e642e8343cc14f311b1829190cef85c11";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/be/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/be/firefox-113.0b4.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "82c87b414801cb3b3cc7a48d6e253042154b6668453219d809be040f1b26b663";
+      sha256 = "feaab0297cd50411ee66c277056915b09324753dfb9a9ec5ffa4e95826a0321f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/bg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/bg/firefox-113.0b4.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "a2c5c5cb89cc6a648dbf385cc37a51cd1f27659655c87be464a732cad51cc425";
+      sha256 = "6c3bac53c27d2866bde4a3c7c7df722b8f8b199d22a949f8f4b23ba778fd072c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/bn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/bn/firefox-113.0b4.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "eb61b01a24ca166f735691e6fce4c08ace175e7dc419763f9f6936ddaecc2682";
+      sha256 = "f3a35430f570eca76a18695a6770527d03c3f35f7eb252f3f1ad0ac8a417baf7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/br/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/br/firefox-113.0b4.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "42a1b2c36648d6ae8f253df6be9a4965f206cbf09e4d1a24bed21292ddd23efc";
+      sha256 = "ff645d57d0dd11952cd38bf3c336638f1ef38c58b7e968871f615a3732124c0e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/bs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/bs/firefox-113.0b4.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "6ed113b4831d29b2b52ce12172399a6e3afbf3310a8cb47114e1f8dc81131739";
+      sha256 = "c3b5046b06219af95e0e9f53b24325ef620f614800a2cdd51388b0ddfc9f58b2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ca-valencia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ca-valencia/firefox-113.0b4.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "6dc38c703dc9d54e369b0082952624b8d8dbf24e3cb6216601076e910f1067ef";
+      sha256 = "4381724cdf143d94fe6528ec893f0e66e3eabac31cdf8c42d95cbf1de23c302d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ca/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ca/firefox-113.0b4.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "9926a0525fd056e5bff59aaf57f8129ab51e03f65e47abf0f6f7404275916efc";
+      sha256 = "8a4188c7dd0de8f43273f697915b7339b37f5af9eb87c3298ec3407e10fc1da6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/cak/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/cak/firefox-113.0b4.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "d4afaf2e2b3f9f1130bbed7936d0debd6f44f8e8a856f2400600cb04974b681b";
+      sha256 = "83a21e5fc16de4ab21d5917f50941140b167f3301e59b9ee13b58042b5d5e4fe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/cs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/cs/firefox-113.0b4.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "5c77cfb25086ac444a213f256b02f105f18c887b38bebb6c614ca079d5335a1d";
+      sha256 = "d0bb3f0194490e6a1225606d2f71a8b0f39c6a3bb782286f5f223693f5c94e01";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/cy/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/cy/firefox-113.0b4.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "6ee073b90ac7dd16f974c931fff45a2c1360c0a094862fcdaef457d1c7d13cf0";
+      sha256 = "41dd598b8dc8b672e35cfc3c020138c462cfae50dac94213f026684b7b0c24a8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/da/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/da/firefox-113.0b4.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "f33e59dd6a8a5398915908a91d12c6dae070f7c96a179b72bdceee68ce69369d";
+      sha256 = "4568ab93f3589d1b1afea6a28be4bbdcb743b3a6e161f30046c5f4324ee7b188";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/de/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/de/firefox-113.0b4.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "6168ab1245c4952d94533db0de4bce39be144ad5ae35b9d4637f62e6e60598be";
+      sha256 = "4fc35860d8c4c371382a51f28eeced158dd0fceb5d097907350dac6ae25af798";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/dsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/dsb/firefox-113.0b4.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "b6b881aade26c207768a6ce5f111eaf6dfec7cb0bcad3d1e1ef94e700db6f3a4";
+      sha256 = "26d8cd12f60cf3ed44a24f1c16dd4b8f4bfb34095c457df6ac92ba4a56b35dbe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/el/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/el/firefox-113.0b4.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "d44620052f215b9e1037d6f271f9b4fb23a1184d8c9bbde146c7fe1fc3fb3593";
+      sha256 = "990a93cb5f325f9b4bdec516a780acbad7585ae26f4b90b6483975c1f1236df8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/en-CA/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/en-CA/firefox-113.0b4.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "e699de7bf03c8387f5a0d49d9456231d9153833fa89e0b71f23b9749cd009a57";
+      sha256 = "240578f0a61edf14680d4b9a998259301ba0b04fe467ab77c9bb3755f21bf5d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/en-GB/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/en-GB/firefox-113.0b4.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "6c27aad74c8b8f9462141ef67d0ad68aacf658097136943fadae4e7e0096ba1d";
+      sha256 = "8afbf0f83369ca4d1a96f7551ae25ab247382fa1d768f2b9ee853a63ab7ec7b3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/en-US/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/en-US/firefox-113.0b4.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "511e1eefba5a10cd88ec89eba0c409cf3144de025995931111a8ab269d6e2075";
+      sha256 = "b7fe5cb9d9cf914175d8f6b12f9e162468a9208e40772fac63a15e8e7c3c9a1a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/eo/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/eo/firefox-113.0b4.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "b5a15bc9a92b292607eb1dffa4c40823ace30a158d313f86dc67e5538898bb26";
+      sha256 = "3306326323347a481aa0072b79a5a4a407990f622eae68e220bedc777d3872f1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/es-AR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/es-AR/firefox-113.0b4.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "a53d3d6ba1826668866ad38bee908fd0d4e4b53ac7a1157f5b0f8eaa55ccb3ec";
+      sha256 = "c2b89d9f17b725317c61753e1b3227c3326b5be226514212e8b5d61e6cb7777a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/es-CL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/es-CL/firefox-113.0b4.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "f5646ea1adca35f428024f126b14046007c07e062e6afeb1299f51d4adc75093";
+      sha256 = "715f21235295544fc8e4f90d090f8ecdbb8804c168dc7e3d054db88abd0855c9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/es-ES/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/es-ES/firefox-113.0b4.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "b7a7bb21d651699fc58f6451ddfbe506aede2d0fe261c62442074c6f28ed43c0";
+      sha256 = "db786e3ab0ad59ad1ff8dfed973e738c6fb99283ee715a1539cb00336a7a8416";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/es-MX/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/es-MX/firefox-113.0b4.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "156a2ac4486f887a95fc5ddf08d4769effffd90a1e544a66ff53a46a41411b18";
+      sha256 = "e205fe060805082ada478f5ade6ac2bfc9d3fc6c5261ef84539bddbce0236a56";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/et/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/et/firefox-113.0b4.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "7da54891f5047b7fa86b1c1ad5dcded253c6619a2f9b72826269b4256a021568";
+      sha256 = "88743293ceab6bb4699f52c6e769b24d5efb039d6186161914f3c40ca02f2441";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/eu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/eu/firefox-113.0b4.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "02cad7594db80a1b9031b0a83eecde16c0deb2d2e7b40368b85e8b5424863959";
+      sha256 = "0eac6d0b26ed55bd5599c9da230af362ed75acaa2d5737d9fa328d5416133feb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/fa/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/fa/firefox-113.0b4.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "8acd02298cc36dda92fa5ab61d4750d6af931c6292d0688d10895c7e24355e13";
+      sha256 = "9cd3e924e7b2ef70c3b5520c32aa006b0f080cf2b6bcc553474f83d00c5f908d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ff/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ff/firefox-113.0b4.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "e29869d59e460ce85cae8444f3d01385ce1512694cc321bba37cede7c6d575f4";
+      sha256 = "e512906a47c886c1c2fe50cd666ca354e14b5ce24807c017be323818c66f051f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/fi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/fi/firefox-113.0b4.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "56744eba15b28a99fd9c3bee3e42f7176ff91aab678dd5b533991f9b08138958";
+      sha256 = "0add16ff8823269962cdbd9e7ef84fcbd0c7674d42de2686f673f9cc8a183a45";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/fr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/fr/firefox-113.0b4.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "5ebebcdff31ed8fb2e0c0facff94b09d39d5554f32a117fcce57fcf917c43d6a";
+      sha256 = "ed523134172614b65791b5993b3337cbc0f0949edbb2ede11c955757d482b4e8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/fur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/fur/firefox-113.0b4.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "e6ea051bbc5a5fca3dbc85801a1d875e1acba534b64a1c3fd0d17a89e446f457";
+      sha256 = "9f8ae3d0d5965958a3bea863e5bb460a9d6d7959c10cca39485ae058fef54684";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/fy-NL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/fy-NL/firefox-113.0b4.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "cb6d6ece58907e8e3b94fd72990e8a45b79c5b16b7fa10025e7d411f4020e28f";
+      sha256 = "0588b7c79609fcab6771e3663d65af91ebd63cdb33594fbe7beb654f10cc9912";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ga-IE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ga-IE/firefox-113.0b4.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "5f15ece920201a51fa11dc05cfefd5e1c95d94805937c68562b39ed64cdd2de8";
+      sha256 = "84f7447193a5888006838c7dbc7b3df4f5cc81491140f64235079548c0d47fba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/gd/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/gd/firefox-113.0b4.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "5f741f15b45961000de625412e6409ba12811eebb1a46c5c549adfc36996f115";
+      sha256 = "75a8a8df62ab893c652b7f4b3a714488298fee905855b9123a93fe1ffb0a730f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/gl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/gl/firefox-113.0b4.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "54644d3e6d222e2e5baf2e7067e1854be0ea39134c6c5109718c94ff6e874907";
+      sha256 = "bbfb47bab16dbb83eff9897b6ee223dc4e9147670c9879fc8a16269f0c895556";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/gn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/gn/firefox-113.0b4.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "5e635b012a7cf872454dffa4966e693e50d9f9857b6f2c64231f34c4791e68f7";
+      sha256 = "4a80d30ed2ca80904f975fac1fcad49b3708f9ccc5370b4a124c0408ec44b0a8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/gu-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/gu-IN/firefox-113.0b4.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "a32aaac1ee9444aab09d86f3a9e0663c85d256a0012e94e7d68aa369124a4fdf";
+      sha256 = "7a12884054a47b62671e640a94b9766cf607cd7072212afed05172d8005a62fc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/he/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/he/firefox-113.0b4.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "852a5608aad550d92ab265f01be4e7a36781390d6a07d6eb006e2cb95c78f5c3";
+      sha256 = "fe5b8e14ddb06970d999102e319007c8d18b38db675eee6058b25987be9fb354";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/hi-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/hi-IN/firefox-113.0b4.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "58f4a003137d7103ffbef22f47966324c18a45c22d2f0d8544011fef57f0c39a";
+      sha256 = "48d8dae0392067414ede355d3034220cbba1da2db134744e1940a35210d6a0ed";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/hr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/hr/firefox-113.0b4.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "6ea7add25edb7443919df9de132aa61bad58e4c5c1f8852ebb913743d1fbd91c";
+      sha256 = "4783758b0a598d3e937cb0717394500e894112c3aa33fa77c514a97d90bad560";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/hsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/hsb/firefox-113.0b4.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "2947b75607e4ee22edf7a95e71f3950903a115ffc4672781ca390e4a3cacc684";
+      sha256 = "2d3a1b746fda95228f41490b3b249a4aecf96684cc99ac57284352e1325d6f49";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/hu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/hu/firefox-113.0b4.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "5f072e596885cb52ee65bd68c9e7f66a01a42c87e7aa3c82b99197905fa79835";
+      sha256 = "3eddc1704cfe04ae6efcaed6f67cb4fd0f952ed890b3d3c10724812b95e4f18a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/hy-AM/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/hy-AM/firefox-113.0b4.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "73bed6cd2ea7c9c3141eb70680916e0fb423e55a22713b34dea23d73b1357fe5";
+      sha256 = "56883c3bc6c5383216031d4933a9a2c59c707769ab8d3d10fde6e8ecc501e4ca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ia/firefox-113.0b4.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "638018d469edd63dab0eaa392427a0e8cee69ed91de4067a7e9f4e080d78c641";
+      sha256 = "658c714e15477f7408f49f8c1aa2b2ecbf82c29f2e7e994a94834a66402b838d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/id/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/id/firefox-113.0b4.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "ebb3ffad8375b991c52230d6539871959957b5717646c1f7c8efdbd80d118464";
+      sha256 = "39d9345f260a0667d407fb0f18ea10e6d9d4853594a7c34e5932009af4d28665";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/is/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/is/firefox-113.0b4.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "45c6a761078cc1c97967d50a09321f7a158ed448c93c1b2b7458255fdb572848";
+      sha256 = "023cba20d9f4c34845486162353c514bd7a95917f04fcefa3b5d1cc905516eea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/it/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/it/firefox-113.0b4.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "ceb093143b2168afd3d3a71f024e764f01c8da462374683c6a29dc8ceb58b4d7";
+      sha256 = "ca7f7b524f0e606287b59ab558ca3c8a2da4432d973e58be19d8ede199cd6dff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ja/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ja/firefox-113.0b4.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "a2710d710c6012fcc98e60f226101585c59a4bad97f77c7d4aba38c64c7e0627";
+      sha256 = "1291da6d5f742f6acdfa7e1ad24a8c6d56f012909794185a320cb3065feadb8b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ka/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ka/firefox-113.0b4.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "be3b41064878163cb0056e3776506bba5c752bcdd5b0eecf9abac6e2b896e68e";
+      sha256 = "a46ddc99bea340ce7e1faa7ff211971aebc803ea280fdee3a92ed5ef7fbf1f7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/kab/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/kab/firefox-113.0b4.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "1797c12f10888794cfcdc07641523221b082a96c66846ad1ad52b2376b46ce52";
+      sha256 = "4116a67ab0a88c89f262511cfdd8acff95554c38ec5418679bae1478d2d7bfe0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/kk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/kk/firefox-113.0b4.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "c9b20975678bf04c6b121ebaae79c6a09f75d9272163ba51c0e452449acb3259";
+      sha256 = "f61e7df2ad9e578b25ad97d0b36b133214f1ca9db5373a724ad863e671a8eba5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/km/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/km/firefox-113.0b4.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "84381384b0834591fc80eafb8b2c041097a3a86fa9fed6462d76dc54fabdefa6";
+      sha256 = "c03f48eceab957ec36766cfd87acb64eb2e6f522ed9932591da0fcb1311b4de8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/kn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/kn/firefox-113.0b4.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "a4445f7fb17a4f2217eb06d0b860e8ea31d97aa15d8f7f68c37218a2e97d60ab";
+      sha256 = "39f5df7a0d6e5c981485abded79276c2edd9575a31fd68798434cabc701a4093";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ko/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ko/firefox-113.0b4.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "c6d03c3746416e2f4072caf05dc7af45f71ab6216217ebc744a49d224ad2f2d1";
+      sha256 = "29c40b5b9c327ddd61fa6913a94111b3857d23fba5980874b6d244b92f2afb15";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/lij/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/lij/firefox-113.0b4.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "ff5ed7606d7fa7c97bd2febf0dba608eadbdbdfcebe9cbb4c8448ed0b4929c0f";
+      sha256 = "615923a0deaf6a13c4c8ec4b8dfae5ae46d9e1636747395fbf1fba21c07e96e2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/lt/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/lt/firefox-113.0b4.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "73595635f255299b96020a8e1866d3ecb95db344859ab1300ef83ae8a054986c";
+      sha256 = "f6c96722d00c25e11642dacf80a7381d97c87a049a0cbdcc7628ddf9d4e2d8b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/lv/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/lv/firefox-113.0b4.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "9e8933b9856bef61d9bfb4ebfb14b10884cad9212516d39c9222b248649c9a4f";
+      sha256 = "bf34546f55d8d0d53e0373c35813a4b5b90d2923dd6334bc77142b809971889e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/mk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/mk/firefox-113.0b4.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "3e3d93556f43b0aeafb13730f10e7ed90a93909c79f240a052049003109d987c";
+      sha256 = "e302cec5c63303b66a7a1278200ac169f6c0ae8345fe5fe638350591a54f8ef7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/mr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/mr/firefox-113.0b4.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "5f35e43cbfc7556e9da67973a9a082dea4407287dd44b5991a9d7ccc68024922";
+      sha256 = "b9e4c52b4e92d75fa25b596c65cd97d512f93c6d13706e6839b8872588cb9c98";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ms/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ms/firefox-113.0b4.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "29463450a3493e98a3b405df26d4a2860d6dc0df755d6344d9d3005a4d7fb201";
+      sha256 = "65dcb105a25fed6e9e4f792c5967f5e3465ab1ebb10df3b99e42a218f3790fe2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/my/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/my/firefox-113.0b4.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "107f169060e961724aeafb4844909779eb72021566e3c8d120e4214e3fc0844d";
+      sha256 = "44505363953c5f5640bd94fe7dbe552ee44c3d4ef931a273847c0ee7c1e264d2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/nb-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/nb-NO/firefox-113.0b4.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "9f8dbee66447fa699a75a536c17e4654db185ae32b9b2d9c8f5e538d1eb3366b";
+      sha256 = "76f81c9d55c602d53a60ac9f71883840dc083664d480042387fdb2a9837b105f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ne-NP/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ne-NP/firefox-113.0b4.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "70bd560bc212cdc6b1fedc60b1e6fb21da744afa8e634b7afc7da864aae7b755";
+      sha256 = "aeec5fc9f658befca5c3c969ac46148291d5cac68a6d884ac36d0711f014c22f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/nl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/nl/firefox-113.0b4.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "d9dbfc99d928d9a9bb6385aa10ad82444cc24632c078ab8850c311bc362f6fbd";
+      sha256 = "b0b8f373fecd653e0780b7540f8d6707a974953321a0583d2a253a0bc1e250bb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/nn-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/nn-NO/firefox-113.0b4.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "12b907e10cc99cab346537e079739475994469297d3b13b1bc29943511d8c068";
+      sha256 = "63460ca2e898710807ce2ef5fe2b6487239e994735097a774a07318ae72efe1a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/oc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/oc/firefox-113.0b4.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "e98d3985affc2edeb7ea64d2230752f1eb3472c87e1d055d77928020883b78b0";
+      sha256 = "2d7394bca2c47900465136a13badd18d558738c3123e3ebc836e186e72182f49";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/pa-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/pa-IN/firefox-113.0b4.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "8a083a756f1110bba2e9fc39e521314bd9ffd4749ef8e89edbd9205bf8536f19";
+      sha256 = "92ab6a3700deb6385b464dfeece0f69d0ef2cd38bccce7dffdf5c93c4c6b0e7f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/pl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/pl/firefox-113.0b4.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "d3cb6e418f381957a076bd49f9f3149ba7f5c0bba434a80a054f2fdcd088683e";
+      sha256 = "b83928f19a06095f35c3c4f1e79f14c6a5afc7fd5de3435984f6110b7938b4c0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/pt-BR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/pt-BR/firefox-113.0b4.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "4036dcc9896d715b3b0488e5b04b89d3b4c1404ec51c5e0ee6bb598bc390af34";
+      sha256 = "1044aebccdc33a59492a6315cfd54959ef3e7918297253a7de2a22356fc0947a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/pt-PT/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/pt-PT/firefox-113.0b4.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "46dfc3c95698fe6365fa5b29fee671b4eab92c1a73e98c6f88f76d7bfe948383";
+      sha256 = "d7999b295a7adc9aba65106e803f7e11ba7317dce074dcb4a0392ff3927291f2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/rm/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/rm/firefox-113.0b4.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "d51294ac0be7b50df0417d6da3d89ba0995e3ece2a32268c7476866677ffad3e";
+      sha256 = "931ea3976f962b48af6dd8ea1fc3dbd21eab71d82e247307b9c00e3f50459a48";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ro/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ro/firefox-113.0b4.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "df68f0e0d7b8fabe6ad82005dd020c3767392ab51728634e1372cdb2094ddfa5";
+      sha256 = "5f23a8a62b6246268c98fabed9ba8ca76cfc94f8bb8cdc6608df674438114eda";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ru/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ru/firefox-113.0b4.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "dce8b6ae4ca661b64177d81427fa7ebc3b39c261cf841695f3df9fdcc7aeb8bb";
+      sha256 = "76976d869ade535b35ed2e4559333a24e61f206937b02a4da453007077c49274";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sc/firefox-113.0b4.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "ff9e38fa62fd1f6fddd937ad1e9a11f0e846aa9364959df5243c92a0a6959a9b";
+      sha256 = "58c1c69e69d22c2886b5686ddb1ee8ac27c22c91c796ecb116f11cdce75ec472";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sco/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sco/firefox-113.0b4.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "7b5548e52c69a894bf459b83ef13b2339af3195c102759cd42f0e3e6e1bb180e";
+      sha256 = "5a281ca8c242fe6021225ea13f956d47045fbf7890e95c90ffb0f571af6c9c77";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/si/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/si/firefox-113.0b4.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "f9be178f10a22a330e0f7a9dadd177523d41f6e5e6d338c3410bef86492ad719";
+      sha256 = "3a881bcdc916cfab452f2bc631bdea3fdc7edd028a70e1c848e7497842d43c20";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sk/firefox-113.0b4.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "e24cdc5481c18415aad067427e047106daffb7f8b9976d85f7dd26eec3d42525";
+      sha256 = "2e49e2e6258388edea5e0901fcc0522017925045361852f204d5d3286805d251";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sl/firefox-113.0b4.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "888a60ece2a7e953229b1eb8c8d1ed215f9b2c87adb3d7db9dfa8c062bda14a5";
+      sha256 = "1fe7987b5a544f876147d6c15293d934921a0da1599a0668ede49f938f1da4aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/son/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/son/firefox-113.0b4.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "a44e0ea0ee749e9a18eb1b3249449e41aeb37d79570020a067749d6b6dfd640a";
+      sha256 = "8cf548e594f7397fe2b15a89ea1113ae48bf6999a37d32ea231106d10c06177c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sq/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sq/firefox-113.0b4.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "21109ec7c815decefbd7a309ec7b8b33d16ef44a3f6d1c4b7154d7af8bdbdea0";
+      sha256 = "0120f4957c375eb78d07188ede2e5e9f7feee53899e93d72e4eb839fbe862200";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sr/firefox-113.0b4.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "f7bd9de44d69c4830cb57ff4504bc09697d9a81558e019dbe6819c5356c62a51";
+      sha256 = "ff862d5f965b7afb89f22f0575734509da5ffb59e786442df773f0a1fb174a11";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/sv-SE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/sv-SE/firefox-113.0b4.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "79bd4619beea13d92abba8840d9308d7574e2bda4d8846952cc9809d4ea7e6af";
+      sha256 = "bdb27a923632e3fe5aebc7247bf77c36fd4e84798bfce483d64b9bfda2712e83";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/szl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/szl/firefox-113.0b4.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "c754fb35fa39bd887f1afa1614efa08819e6c155aea5c223ff2ee8f4203cdfcc";
+      sha256 = "04b7df5690ca4b9151975ceee725b66eadb62b6568d8eb184c78ab9a77507c55";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ta/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ta/firefox-113.0b4.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "2993e39d026dc827b3083ba0f458b8fee6ded006135f136efeb89fe4d9096cb5";
+      sha256 = "af7842a9cfe51340119101e769c998e78d5f304b2746fda0bb2b87cbdac032ec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/te/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/te/firefox-113.0b4.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "1689d369fb0cb5cd81f591287963ee5b307f78cc37480fcb631d5bc50674f52a";
+      sha256 = "e42529c812d3ed862979887ef8d08ac35b21fda3df5defe072ee2533634b69d0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/tg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/tg/firefox-113.0b4.tar.bz2";
       locale = "tg";
       arch = "linux-x86_64";
-      sha256 = "d8d9a0c1fc3adfdaad371c87ecffacbad7ad593f12bd917c94dc0e87a5f89db6";
+      sha256 = "ad81d51e62417f9b58aa139cea1f9a0520c472657b4d61b583b724a8eb1593ec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/th/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/th/firefox-113.0b4.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "076c1af96d6cf33c9e0fe981ddb1b4c8349ac8f518fe42197359ec69ab9735a7";
+      sha256 = "0496f3df038d3d4029234c23633bb65b6f6bf665860cdb1a69c6ed596affaf11";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/tl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/tl/firefox-113.0b4.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "15a4275803e9791429258cd9131b92806d3487dfa256d99121dca8716810c97d";
+      sha256 = "c4cba7d19baf14c0d9299ec78937d83d6a6218a2809d77d254e9ebae9ca1c08e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/tr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/tr/firefox-113.0b4.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "4f1f4359da847e91c0ccc534ea7928fcc6504b2a9ec57fced57a5eaa6f1ec5a6";
+      sha256 = "121196bd67ee3ab5f1faf9c0b90d755d3cf50d24176daa5ecaf3fc8745b3f9c6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/trs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/trs/firefox-113.0b4.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "e26b79a7b60414b5b9db4de99f1bf66183a0ad88ad6137f6bc0be3d633d1f568";
+      sha256 = "38bdc1e42da4c69046e5ce7004cc07023300011f5a9ecd5036df7eb40d4380fc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/uk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/uk/firefox-113.0b4.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "9bb0ffc850339665522e87115ac1667995d577b7e1d20147511c8c4c3f3716b3";
+      sha256 = "0f431bf61fc940024e25ecc1661b538ba180782fec84e5261c4828eaf1d6a017";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/ur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/ur/firefox-113.0b4.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "152b6c150f70e9785465c2cac092faca9d0904aed239c62c805a51ac95b089ae";
+      sha256 = "9bd5157175c8ef7145f64659cef0141eae74a97a55fedac097fd8facd3280536";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/uz/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/uz/firefox-113.0b4.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "5adfaecd15f74e75bd1ef909fa8abee130933d180efbb7cbdd431ffcb236e527";
+      sha256 = "7dcdaa9c2113bcbee34627595cf343301633bd1299baa805d9ee34096c992ec7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/vi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/vi/firefox-113.0b4.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "20b36d56fd558e427853b88678244552320623bd91367d9446057bb2b337463c";
+      sha256 = "8037c30c27316f0be0bd354ef0105728486a0e850d646dff311773fe68707d7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/xh/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/xh/firefox-113.0b4.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "853a1d27d2e1697ab7ad85c0a848038a4a7851b00a43fb4244cc6c7e1a27378d";
+      sha256 = "65b8d38986361fd1a4c47480e7325db93e3de04f534a3d5905e2717121d16fb9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/zh-CN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/zh-CN/firefox-113.0b4.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "08a426059b4db42966ec5d67528042b9773d05ad22fcf24d16d7b4b45f9b201d";
+      sha256 = "ed13763d037cc3256cd66e606231ca9580431b99d6798c1c8bd4e3563fd1be3f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-x86_64/zh-TW/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-x86_64/zh-TW/firefox-113.0b4.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "6bf733ce74e53fa33b7e4be729cd82dab829013903fd6420403ec62abfa4d999";
+      sha256 = "255d3cd276ebef5772cb4c64dd6cb6d48a569df145f52599487c0cf974ea8598";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ach/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ach/firefox-113.0b4.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "25c80b08b6449c4c6591c422ac732b1ce3fda4784999f746214b1f82a7589937";
+      sha256 = "3d8f8203a23f1937bb0bca5ca198ca91a6d1e4e505acd0cf64dba8a1599e7980";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/af/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/af/firefox-113.0b4.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "4022146c820c99235953a2d345bce4795386216a610cb03ab0c481102f969b2a";
+      sha256 = "2d3a9d197bf96389369f36271ba6b6ac484787e19554d9c50fcc746ffcff3ee8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/an/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/an/firefox-113.0b4.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "ab35594cad8c996a49aad657a702e199f7451f14846c7f8529233c997c8cf035";
+      sha256 = "74944b6bdaec3d713f36c6801868b9c6e0c08b0eeaaab9285c2748c40cbfc6e7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ar/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ar/firefox-113.0b4.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "3b660e4ac36332308c987a27ce9d5be421ff8dbb59da4e15e7a66a3047d1ff95";
+      sha256 = "a2a7a45192845c8d1514a55e24086cc6f873014e10d9a43e430aaa58e0898afc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ast/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ast/firefox-113.0b4.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "6b70a696b733272b22fb4f04e469b69e93ff0ea6b0a8a67beb8c2ae3bbc2628b";
+      sha256 = "4f438dd3afda39c754bb0010e3a81ac3fae4a482576552120683fc22852e3b6f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/az/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/az/firefox-113.0b4.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "f3e9ae9a134b27c314871caac99b86cc2b01003073d1a98d2bc7fa28f6df6dcf";
+      sha256 = "ff3f9abb2b55f84184a722204d966aaabe94731ecce2410755d6d9eb49a132b3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/be/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/be/firefox-113.0b4.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "bc8581c0af5dd902fd4fd8f66181efe0a82cec166a20fd9051db06c0b361a12d";
+      sha256 = "5788d683bbf2d6f87984a74b283b250baae11572454f91ab187ca7e6da128e0c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/bg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/bg/firefox-113.0b4.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "98d00d667b04678f46ccfcb47ec752956e9e9585261f56e527eef172e216231e";
+      sha256 = "1008ea1147e0dd1caae8bc614abed7fda3b5597efa36f0908cf4bcbe0bc89a22";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/bn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/bn/firefox-113.0b4.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "0f051452dc221b2a7b00e08534105f587f94bc470eb013d4bf44a15187f5dcbd";
+      sha256 = "1c21174ddd85c80a52bd5d1b16c909e247f56a05b97ed587a19b9a0bd417abd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/br/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/br/firefox-113.0b4.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "25009effb796030cfd228ce9c9d7bf0efdd318e24ff8be92005d11d114ae90d9";
+      sha256 = "d25ffcfb920ed4566413a83c84d9b2a4b2338e7d9871a0a45f3fcb5110a83023";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/bs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/bs/firefox-113.0b4.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "46d7b9302a325e03e9dfa60aea07db46999297f03a91b08e5c3e89ba2c57aed5";
+      sha256 = "21bea1cbb19f76a82ae561d3ca9408e796373ccf297bd7925292e2b7ce57b74c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ca-valencia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ca-valencia/firefox-113.0b4.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "a1b3149aefc45c49baf3d6b2a8c5c86c3c5b37c2285547eb323158f3e1720679";
+      sha256 = "49b426208d239603a27c2f60e7309065ba63b84c9a7d54f0cab63e7108cf47b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ca/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ca/firefox-113.0b4.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "0e368731ef17dcb9565be063013688727dc10b78444fc9f593864c0d8910efcf";
+      sha256 = "8bfb905dc540af1dc0b5dc18d5ce0199559a11d3be64f6d737588ca4df438b6d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/cak/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/cak/firefox-113.0b4.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "df6eb229362831945150ea37ab36d05b27a602851b1ad5d2a729d3b4e8e997ca";
+      sha256 = "cc99d3f74eaaac8b7e6c73b6613f1bea75ef62faeef836e49a1355857dfb18d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/cs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/cs/firefox-113.0b4.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "be28a9e5cbdfd4b45d28b01c650eee85b39375876265475013b96b14ff22341e";
+      sha256 = "ea41a1b5dd5452408a8f30a425c40dab8cc93969dd0270dd135e0d69af7f714f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/cy/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/cy/firefox-113.0b4.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "de2ecfe65b76b99ccd362a1afd93c2a07a40b854751b379b1072a6a7968efdce";
+      sha256 = "4f292f687cd087107218ca7a4559e302686bf0e721515d360c3a9d230a71586a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/da/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/da/firefox-113.0b4.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "b66bbfb949e8ddb10aefca3f75389edeeae1ca49f7d9a478c0b6cf034c19f4e9";
+      sha256 = "ba24357939ad19eac0cd60aab308e9601526029f6c4d1703e6b6ce77126127e1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/de/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/de/firefox-113.0b4.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "b6e41955558e0fdcdf7a654e19c8940f66dd90cb079b98b8ccde3d7c4e7ce667";
+      sha256 = "f21b0581ec94aaf6c402d700ed3ffe82a35ca6f9b7be140a573eb8f912d15cd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/dsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/dsb/firefox-113.0b4.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "32dac237ecf5610ab49ded77f6b1956efbcc1d99c8ebb521c729e851401b83d0";
+      sha256 = "6f7624a3efc1a7ca08406dbf73bc0ea7eb8444a146d60579bb079eb0c748508d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/el/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/el/firefox-113.0b4.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "3272116d9091b9d55ef73c92028983bade69fc2f3cd4f754c47f7351aa0cde46";
+      sha256 = "8daa34a6de7a3be7a3d7280a14c5b0bbd78582017b15a4680aad0a1eab2ff791";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/en-CA/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/en-CA/firefox-113.0b4.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "4ce06a3ab094ae75546d747d6f634b6db84d3daedecd56a1e32659e2620f3f94";
+      sha256 = "6f9091352b42d23262a9858676fa6a22844881f52385595704a8b2cad2f8b285";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/en-GB/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/en-GB/firefox-113.0b4.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "dbbeef8008322dc494c14fb1d73341fc02652ac56574251624b30dfcfd352aa6";
+      sha256 = "8e9bfaab64dc066d1e1087b3efb6aa3b40e4321a1925034653730bd917137fca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/en-US/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/en-US/firefox-113.0b4.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "36996c36bd4b30b71bd31569ac499f5b4f2e00104e96ecddadb17acc58d98b2d";
+      sha256 = "d73ecdeec81e643f57e1c231a99bffd96bbedefa085f5629f8ea9e0ba29cdf55";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/eo/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/eo/firefox-113.0b4.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "68f064f735685a2da5f1a3645554d1fbed80cf20c69203d4f6602ad760691d53";
+      sha256 = "99230cbde8f0d0203f3afe9ab51026d3311c8372c15a1a73c4d17499bd659bd6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/es-AR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/es-AR/firefox-113.0b4.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "eeb70a6492c90ab04b5c75d81bd6c7713a462ba4be3ecb71ec2be4226c145e8e";
+      sha256 = "a4eb35fd6425983b9f39b397ace40199f7db80b8604181e66a5f006a0046386c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/es-CL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/es-CL/firefox-113.0b4.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "c9444d002912d9898c81926085e617bb01f64d3aecf5d87ae4c6df802f2a72de";
+      sha256 = "138eae3a0bf3f5153cb8869e97fd2c73d0f0a929420eced07e6972a5a59a7af2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/es-ES/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/es-ES/firefox-113.0b4.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "56c48a1d5db84c6f7a1485422ff5eaef16a4a154b5e0f12f566afac44470325e";
+      sha256 = "4bb9af1ccfe569cd1661b9a4781991ef60220142f73b77a10f943cce57dc4c63";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/es-MX/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/es-MX/firefox-113.0b4.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "12d4d2eb36051dc9b5e983ab64129a6b9f304ade261e4194779ee49338c46750";
+      sha256 = "e9999b0af6ccb84ad6ab143a00a676ce65377c3b81a796d796c691ee222e92da";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/et/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/et/firefox-113.0b4.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "592d29f1a9f6cfcb54e8ca5ca6c62ae4e0c184076e86c0b3e58394fff85c771c";
+      sha256 = "e91688eaf4ad293d097b5bbaab95a3c04ba3e7292176aad116aee201d0fa25f5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/eu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/eu/firefox-113.0b4.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "1c552711fe28cbdb144b44f932c7a9da269a08905331a8695db9475a7bc4aef2";
+      sha256 = "563fbfde720e65905e4df5063389f9f0cf3ac7b435f0e48fea4943781287abe8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/fa/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/fa/firefox-113.0b4.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "756e2ae0c3732af4a29b4b6b28aec2c3b974fe05f19d4ed85f720a78b7ee5493";
+      sha256 = "0d8d95804aaadf0abe3f6efd6ca463d99248dc20ac7f45252705de6044694583";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ff/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ff/firefox-113.0b4.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "736f3c42d9b57a4bc1c8406020ca0903c238415df6cb34712169e1827beda85e";
+      sha256 = "63c231f6956ad1305b80c2f60dd48792a50aa1c69ba72e5aca082c675c11941a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/fi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/fi/firefox-113.0b4.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "0caba4bc0029568095b87978d11b3e67ad0601fc12c8639ee58aec8238626008";
+      sha256 = "82e9e91201582324d55c38ba19b036422076d084ae32625aaec08e404ff53ee6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/fr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/fr/firefox-113.0b4.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "baee5dcec73f37213412bfc1b57bd1d638b329b74c7b18926b6a0f304eea2730";
+      sha256 = "543f408db05692407be94c1d216768e0095b1e19c8ff5d4497a179a2a6892037";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/fur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/fur/firefox-113.0b4.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "fbcaeebf213729b9ce2a1d6e4527befe6098c4e861119a9729b69ab7cef30964";
+      sha256 = "8538f3309b76d455a33fef08e66189c798539ee57d485016093c5b3efc26d991";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/fy-NL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/fy-NL/firefox-113.0b4.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "ed32ffab533b1e0c298705c69bed835cc7967264018749bde7965451a533d6fd";
+      sha256 = "1db4fc67530c2d8a6d5810254181f35cf7c267940f8f70c6c8dae14044b6055b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ga-IE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ga-IE/firefox-113.0b4.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "4ae634c4f5bf1a5762d5d72126242c5de391d95f04300f97deb7ea029c8daa8b";
+      sha256 = "a64302e2d33594c898186a15f462745d18cf37ab26d3bad72738bd2ee5274a55";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/gd/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/gd/firefox-113.0b4.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "affbd3fc866d0f543a2ec0a029b6b2371de40a0c2569d6f4363e0a6105d538b7";
+      sha256 = "85a8af67e1311df497f2090ebe311b2759170ef227d8091238f74b923d608342";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/gl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/gl/firefox-113.0b4.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "0f423c8bd4db91f877f9727c5e0333c83d667d62ee3a8903224f4c24ced6ac3c";
+      sha256 = "76db7d4d8b99a19b37270b8daa2049d4e85c5db8db2b172cd2fffb8f5b8d22da";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/gn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/gn/firefox-113.0b4.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "458cc6f2b07dd78c2bcea089ab7e8ee93ca239b48f4f709249e87049eee8054d";
+      sha256 = "39c52d434405b28ab44162d1c8f72acb60843278a9b67eeae61875de4ef046d4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/gu-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/gu-IN/firefox-113.0b4.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "3209d74f326961e92a37bc790a48f856db982ffbb36ffd4577a88620b165474f";
+      sha256 = "f5e5a2db396ad33837f3815594ac8a60e85deea7f3bda96c2aed0b8aabaa4af1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/he/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/he/firefox-113.0b4.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "86d01b21223eb0bb9c81582aec36596b184f093a12f6c5ecd76769ff0157ecad";
+      sha256 = "943ce126ed6eef3aea32227e22ad0093e3128ac14be020eaccbd9d6ea8a412cd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/hi-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/hi-IN/firefox-113.0b4.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "12d9affd3e4377326bde74e2fc191790010b44eff389871b83e0d31c112a1453";
+      sha256 = "f412eeac8e736de6517ac7a05e3f3ab044d02f102e7ec3c4a8bb1f44244214c0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/hr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/hr/firefox-113.0b4.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "1cb8a3f8e2905de618cbbd624e8572d436e5321c112574159efdb8658e1c0a4a";
+      sha256 = "224333f514de3d39f3cc5b320ee21c2e10ae38a3477d447957261684177cf024";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/hsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/hsb/firefox-113.0b4.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "9da23dc61e373990da0a6368020f25f630bb2650716a4159aef1813d0ce0a4ae";
+      sha256 = "1928199d49b1511157bd3c59dafc11e5515d793d3525e19be98fef64328d11ff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/hu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/hu/firefox-113.0b4.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "f889ba28f8911db4c7e764cb80de5277d8544c10a9bcddea42d0277410f45a55";
+      sha256 = "1d48af7e9b91fa4b6985fca5b418d3c954e8a538ef48602e778378894b1ffbb5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/hy-AM/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/hy-AM/firefox-113.0b4.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "95b1094b4545acd195a09bd95aa1fbad0b938d0989840804e8513eb245a7a27a";
+      sha256 = "67b6ccb3f52ba0cbba784f07255a9c6c242d21efb63a37b2beab2959bbeac308";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ia/firefox-113.0b4.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "8bd0750da123edc1335d716b5d07857ec18928df6621d5b590fd71e229ad7559";
+      sha256 = "375f35e4faea3cc87dc9879e0dd601ffcc50f253f03149677b59ef781f4150c8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/id/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/id/firefox-113.0b4.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "80a874cde7ec122faa1f9a6c85d01c85b111e0dd7a251bda39020fbe31dff579";
+      sha256 = "8fbeaab86851d3c30348b0c592046020bcaca9b986b684520db90a1dc3a56975";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/is/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/is/firefox-113.0b4.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "db16f7232e3412768d21482dab1fddbdd84dca1bbe5afb91f2a6f2f89a3faa96";
+      sha256 = "b88ffd3bbdf06b20f35d313858f9c9b10e85a2fd22c30f95fd5be5ce0568c01f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/it/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/it/firefox-113.0b4.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "5654aaccc62016507920116019b48f87b4afc42bd8e6daf784a93fae75141d48";
+      sha256 = "793ba7db4e7f51896f4ece5f2a3fd2f609f8cc760258f9c23f7694f0746923f4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ja/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ja/firefox-113.0b4.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "01b49eeb6d4a8589bc6f2d1d7a2559ff68a1d63c77f1cfdb4befe5af3e877a16";
+      sha256 = "3dc65531a0b02f2a6c55a8aaeb0e620308e52a5bf63ab471dbb4b30983e24c2c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ka/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ka/firefox-113.0b4.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "d9ecef01c514b7b8eea2dca5e565ac859a0ec0dfc58749019c200e0e5ae4340a";
+      sha256 = "74665643f67b46bb9e9ac03b8d82e307afacc6807876ae8711698edaac1abb76";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/kab/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/kab/firefox-113.0b4.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "7c6fbd36e41b724cd4d4d21810be4893e29c12483fa07438c91c7d302efd40c9";
+      sha256 = "35a692235355f535020292957a0fe44fbd77ecbbb43124e75b9a1a6a01152cc3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/kk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/kk/firefox-113.0b4.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "b9e3e3604c85f9aa17050381a6422eea90f37550951bbc496aab27a2a180aee3";
+      sha256 = "6bcddf4e6ffbb8c9f14dff7da8191cea82f45752f1b1b93cedd89998448c94f5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/km/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/km/firefox-113.0b4.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "cb3948ff88e269aa3a5c2c0bad8527d0542eaff1be9fdb1d97d00c310e94816a";
+      sha256 = "a205d8c307dda1f226b8a3053120ebe6611668690f31175b12bfedebbde195ab";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/kn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/kn/firefox-113.0b4.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "e81f78712ae816e0612958055cf57c27b24842c56fafcdbf03af73dfa126a709";
+      sha256 = "0c09b9596b356712c83a94555d2b997de97a7ad675a189645267c0942d2c034c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ko/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ko/firefox-113.0b4.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "09c85a9ed01c7331b881f0e651aaf558a0034842d9a8a067ab95313d8644d957";
+      sha256 = "05e25a992dc4f56ff4fc5a55a2dbc70b36fc29483c6ccf628afbf8b8ad44f13f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/lij/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/lij/firefox-113.0b4.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "b7286511fb34b36557a04adb998a6710439484bad006922f5bfec5880275dc96";
+      sha256 = "11305dd713791ecb98508deeffaf1ce51b47b7e629c60d80316436cd9ea2fad1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/lt/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/lt/firefox-113.0b4.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "ed60ae9290c507666ab77fea3a45c97712a529d679b1ee2fd428c3878ac3a01c";
+      sha256 = "9dbabb8719251d033f604434fb28cf02ec63187dbb74fdb33e0513bf49729976";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/lv/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/lv/firefox-113.0b4.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "b5fb4547164814e7def4d7715783618de4442e178b3fc299071a6922ad560794";
+      sha256 = "1c447d4fa5d995645cd7ffcab3f2051fddd0a3bd9e5d12ead7290268bccbf9e5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/mk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/mk/firefox-113.0b4.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "72a891731624feec69a5be90fc6e8b372ad6b09972277c4ab1ba0bed45330fbf";
+      sha256 = "5f066039eccab51a5683f133dc66511c39026a9ce1b70dd1dbbd87bc0cb96093";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/mr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/mr/firefox-113.0b4.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "7e8a5c084df7e96d7133566ff49557ff2adfbb09b8700979aedaacd99e38f864";
+      sha256 = "4aa8eb39d12ff6ba0569dc251ed13110f2edc7c92368d7d35b9854b14d8cf619";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ms/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ms/firefox-113.0b4.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "221335d17918344c91b3c71ac6a37a0622698cfd816015d02abacb8b5de8b618";
+      sha256 = "1538f31ca131746558746236d9ce1132cdfba2dc479916969276470cc48714d3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/my/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/my/firefox-113.0b4.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "9c463212def05e00e261bdb496de4fc27eecfa80f44b2933e2089c4e344a511d";
+      sha256 = "6be6fbb63f2100479069d70032cd4b99f6c65ca88be4f4e1f157d390b49f570a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/nb-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/nb-NO/firefox-113.0b4.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "1120376de5ee3980cb7acd5b7dcc8a02c2b599fd9813f0b9c8340e9fa3d9530a";
+      sha256 = "7e3e90b7f2dd3e7285d751eb2aace580b0346235942394f2cc17da79eb0c4b72";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ne-NP/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ne-NP/firefox-113.0b4.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "55bfb471db78c5b88867403ff77d4c7a4cb447f85d55c0423d8b802a0efe791b";
+      sha256 = "2c606e573aa44ad8f434e6c70704786db879259408495a00f2a99f0c1d2c5d84";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/nl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/nl/firefox-113.0b4.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "2e13d5b4075024852d689dbab5993cc3589b14bc436d116a27a1a5eddb42d41f";
+      sha256 = "a2444c1d68dbcea7192207771889f12c4963c70616b7cc8b56772a5c9956ae5b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/nn-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/nn-NO/firefox-113.0b4.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "df3b8437cd4cc3df848e6ce0c12b3b27f9dc375b31dd9b639b31c73f90f54ed5";
+      sha256 = "93c1d0d4a5472fee193fef5414b7ce66261c99274fa5229f71e9f2146c915d4f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/oc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/oc/firefox-113.0b4.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "5d85733c0b8f6d505c2cc5436d0e3d2baca9203ab74c6e3c99ebf37af83d0a84";
+      sha256 = "701105e4dced9844f08e1f746691604c59319f4dcde89e74d29f66079f16fe1e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/pa-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/pa-IN/firefox-113.0b4.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "0992d97ee3659cc2fc2b32151e30981e555ae17060e0fb42004b841057d66051";
+      sha256 = "49d05fe43a1ec88b45d1dd04dd9e980a61db203da49f872017f361179a4bebeb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/pl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/pl/firefox-113.0b4.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "32a3aff1f99fa59f6daaca54211edeaeffe46e1d9ffc0801afbba6bc795cc1f5";
+      sha256 = "b90306abb2e6127d2d123451b70fa4a776e72a47eda8b427c134297a629bf426";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/pt-BR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/pt-BR/firefox-113.0b4.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "7da9456483f0d70791fc91536407d54ead98c2da671b9f4380a692f835f82fe4";
+      sha256 = "761fa6623ec00fb7b518e43f73ac76a02c8194603ea262fd823b059b1d9f2593";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/pt-PT/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/pt-PT/firefox-113.0b4.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "6cd1fba52e5150ee435308187aba7ae2da40e081276eeceb031b336719bcc06f";
+      sha256 = "18b3e492d284bf78317c58f239f7f39f14a4f37df2663ffc81b878c62efb7493";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/rm/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/rm/firefox-113.0b4.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "8c3cebd21618bd6c86cfdf4955f01ab6b6c374be1da27ac981f4cad0a653abad";
+      sha256 = "092f0bae7448482f0ff1fb8d7cde47205508ec42d99d3531c3f3efade0cf59ef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ro/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ro/firefox-113.0b4.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "92eeb23cf62e805c52afedaa1a4ae9cd9760dac4e1a6df4c3e3e934176560ddb";
+      sha256 = "457bc780c54c626e50b8252aa87b2d140433aaab5d96f49893fe16d0f4c22e6f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ru/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ru/firefox-113.0b4.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "f2ddf1dd5405aef513ff4d7264bd03a82357aa2aacf837c2a8f7574bc751fbee";
+      sha256 = "63ae2db68cb0a21c06ede98873e65c680e3edd4e751d660d7b8adf9363d9ef88";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sc/firefox-113.0b4.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "ca082a336b1217cc9291af1ec4d46ee3a37808662801b524191842da30d5e599";
+      sha256 = "d22bb9f57c3ef7c57d8f35ad5ccf875390509c7a3526d71ae82abb465e3ca102";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sco/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sco/firefox-113.0b4.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "d8759316bf1afd7679170cb13c422af131764887188a4df9ce9c4cac8aad7abe";
+      sha256 = "17b5df121066163f0d07b8a19e4bd9c33a00748863a28806862a40f8cb34cd5f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/si/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/si/firefox-113.0b4.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "7bc492417f6848ccc3bde701587e551299ca3fcfba55696a75576b6801d7b43c";
+      sha256 = "59ca4a57fc0012526fe8bb1b256a377939bca310ecade0ad2b067d32357d1227";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sk/firefox-113.0b4.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "3bbf4e5a03759bf84e0cb5b2a04db845f1353e01c770141500cb7fd3482a5b4d";
+      sha256 = "ff7ce0af4e5f9fd3c0add9772dc08989463d46949fe1b7b33ee73e18b4b508f5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sl/firefox-113.0b4.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "6b322afdb495a73274ab89e8b215b5f880baec4e9e704a979ee7ce6715cca728";
+      sha256 = "21e7ffc5c0618fa50a5b1e5ccc073c2fffcc638d80f3abf40893a5e52aa43dcc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/son/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/son/firefox-113.0b4.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "a748cb1643585beed1ae72eb10b017f6b9de7e98306e79c0e8c92c5768f16cfa";
+      sha256 = "a6d27a518aa43eafa46b137824d7151bd0293feace506ee7d1f7a083d85c940f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sq/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sq/firefox-113.0b4.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "3581f7290766cfc1848fc453643dceced3d2f5a0e6f21a6f18ca63e697484356";
+      sha256 = "b745dd2a0c887e23fda2fbad199a16a7416e33068328c6e194a9726c03ffbe54";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sr/firefox-113.0b4.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "2a63d295f7b675d9bf3cbfd07f9dd96e52fd25f16b795762f349d6c035c7ba79";
+      sha256 = "c2f35ae6041a1e958ec8f68937ea0d0f844a709c403af03a5727396e12c6758f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/sv-SE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/sv-SE/firefox-113.0b4.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "9426ac6aa8d5aeadab85ab4fd921331195b3ccdba03f0e1e591d8584f3133390";
+      sha256 = "a3192a4838032800f991da43c5c2b318b2d15b9407e7dc23a706cf19c755cf2f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/szl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/szl/firefox-113.0b4.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "1e7045194f7373d66eec1aef95ea57213451063a9db14950a08d53329db1a12b";
+      sha256 = "7e2a1c32a8ff9950ad66223b28a79eb0d3c6cff4166851f96ed7ab6ba95e8546";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ta/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ta/firefox-113.0b4.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "6d28d89df6dc978c2d5a0e7402fe5c732de8c5e45c8d2874309046d8d5774774";
+      sha256 = "cc67465e38045b741ae259eab51a27414f7f3bf757785411d5ced4b98984eded";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/te/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/te/firefox-113.0b4.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "c2303fa30544c23d535f0b557641f35b42715a46fc6145dbfbcde55fe787825b";
+      sha256 = "be2a5747ca247cd68607497824da890dd7da8e983470f0873311c6ec26524003";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/tg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/tg/firefox-113.0b4.tar.bz2";
       locale = "tg";
       arch = "linux-i686";
-      sha256 = "31a0fce5b8577aed2ef5e7d6cfee2e471966c8f4433c458ab64e7b10fbccbe84";
+      sha256 = "7fda21f7489d052d438c5d5033e2ea045cfcadee6c9408b6c50a59c201e886cd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/th/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/th/firefox-113.0b4.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "998e6b7ae0cdbcc0391175bab992d8d3a0ea1b8561436dd154f3a70734a4ec83";
+      sha256 = "8f9144d196b6a2c3f5856763b956dadb7602425e3e4ffe3ea30f7c48946b5f63";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/tl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/tl/firefox-113.0b4.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "c0292071106bb58658dd5c9b5067518d3d021eaa75230bb021ae1b17c429e881";
+      sha256 = "127d9264a48a3b6ffa2fe0add6d46a29a190920e0646d080305e7b7bd9b5922e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/tr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/tr/firefox-113.0b4.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "c526afd4f552d7a42a6a934201173acbb8752f2943b1140a100f965a4a0f19b0";
+      sha256 = "6b46075ca55880d2ef1aa73a5cb92fbbf4b838eabca6c86d041cdf51b9d64dd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/trs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/trs/firefox-113.0b4.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "20b49f4b2e5e9e69c04a35fb6ac6f1518800e7aa59e167b57db657343dcea3d9";
+      sha256 = "3efabc75692552a301377bf8d819fb6ee46136c75c3cc3b58a5d63f9ef7d8ae9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/uk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/uk/firefox-113.0b4.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "09013fe489d551074f5a23854618c79b513661c0393d94448ccfaa46140db393";
+      sha256 = "757dd41529c2c9a3f4564a0c6af3e369ba53a03e17572efb9a9c793b370bbc84";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/ur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/ur/firefox-113.0b4.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "d498a2e342a8c508f6ca897f24fff724abe154530985cb86c2c41f4148248947";
+      sha256 = "47675d1d8851f84398cbdbcf3efd631c873c5b422280e51e7c996668fbdb57e5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/uz/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/uz/firefox-113.0b4.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "88e1cded70f32e4ef609455f66372e20529cd76c3ff7f7752c2dfdc76ed145ef";
+      sha256 = "0fbb8d13adff4ffbfd3e9b1b3f1c9eb673bacad69d4a2e89bc47014977948d23";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/vi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/vi/firefox-113.0b4.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "e8ac1558d68b66e263b8bccf7f4e4713b3285e685135225ec0a059bb9bc8e1f8";
+      sha256 = "a607c5e943f84c466ac1671cd9a4ceebc3601bf51709f815fe7f392d3b5c6308";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/xh/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/xh/firefox-113.0b4.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "5711801a00bb2ce5dc0463257a026b0bc50ecdbcbe9906427ff0f6d7d1261d34";
+      sha256 = "fd38317380cf41829a49fc3af8b18c65094bd8eba8732691f1cb809bf96b72aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/zh-CN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/zh-CN/firefox-113.0b4.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "78eace2a264fbd0086c3e37c66b616c80d53686d8bbcaa9991ef8993f3d72674";
+      sha256 = "7b5600dc2743e3c8f506cb5dece02da7d7b0c40704c569fc963353391c58cb17";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b2/linux-i686/zh-TW/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/113.0b4/linux-i686/zh-TW/firefox-113.0b4.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "4a875e17b79d33b434df4c29f485cbf5d3d4cc9e07914edf549227ac76e83c79";
+      sha256 = "b3395791485ff4c6adb0886f3c77ea9b9fea4b6ffb298349ac109a948a7dc377";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index 60bf01376e651..ec160a8e375b3 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,1015 +1,1015 @@
 {
-  version = "113.0b2";
+  version = "113.0b4";
   sources = [
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ach/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ach/firefox-113.0b4.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "f40dd5b35d1cfd958a380010c427381e83aa2ec691e68a90afde6ccad102867a";
+      sha256 = "0fb6cc894e45447bb6ba1f5638e716619f3554c71fffe85e240a817811d1753f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/af/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/af/firefox-113.0b4.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "ed3f289a69663d4d9d31498bb3ab6de0a84df008230e793412d8a10ce26be2ff";
+      sha256 = "2524ea4c6a0c7dfe51f496cbff0790599550bbb62a191ede3a696ae09cb4ce2f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/an/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/an/firefox-113.0b4.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "305f9e24169e66965d639755f01d0a6429aa41d43fce32deab8308f4b55b6bcc";
+      sha256 = "efab5b1fea7d0f04ff72dec207f31794ea728e4c95a645b6ed69d6491ec07d72";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ar/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ar/firefox-113.0b4.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "2300df3512b9f4e869edaf6b20dc572d8261aa64e106205a718c3ebbc1db7b1f";
+      sha256 = "a46096e83028a1026c1123d13a05823138bf19971cf12b84f8bd3806e668d13e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ast/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ast/firefox-113.0b4.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "85e3154bf99d52caea920d3e1bff4adbc1ed896d35124c674115272b2c6efcff";
+      sha256 = "41320331326b8cac13cda8963027a867c77a4cbbb2ea495e413080cd0c41eea8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/az/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/az/firefox-113.0b4.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "961ef8ef27f7751e29610ae86d3807ba407d5c2181df27c062ae347b8ba3688a";
+      sha256 = "543670c4f3ec4823fcf594f45ef2c1a297f76f53aee3501012e7a4372ae211e7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/be/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/be/firefox-113.0b4.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "514abecd7c77f2f73f6e188857cb5d806daf6112a44f867cbdee2f2e65bf4dad";
+      sha256 = "a3b801f43fa0c19a1a17d9ffb979782f0450ed318e061dfa85c1f7b00be51ff9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/bg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/bg/firefox-113.0b4.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "e240e39e868ccb4899576320875f805705750393e1d7c63b589c3326cdd79869";
+      sha256 = "e71ae08e0ff78139cfbd35f98203df9398ba64e98d5fb4618ce899a5b3ca3f08";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/bn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/bn/firefox-113.0b4.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "3f930072feb66165d47211a5a337456cca69ff5eae5fdae6ab4c78a85efcef0b";
+      sha256 = "a9475fb211a305dc7d3614f7ba2f9eb259cc94852c2b2a4d2009400a3433aab3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/br/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/br/firefox-113.0b4.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "75def5d5dc5b6bb1e4ed2d728d572822e261a7eebcaed0eace8124a2cca81bbc";
+      sha256 = "8f5ff443b2ec5eaa68e732b3487983443a1cb2e6dbc9fc97b521662862fe78fe";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/bs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/bs/firefox-113.0b4.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "bfbfae79cf0edbba7508456f6786ab781b59d691074419078bffe1021becd97f";
+      sha256 = "cd311989d74d7192b7b5011901317a8fcaecbf1b35eb8d9eafcbfcfd65b31d50";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ca-valencia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ca-valencia/firefox-113.0b4.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "d15a2f7ab07a7b5cdb25b9e80ca93c7f204f7eae12275299c418f7510a9713dd";
+      sha256 = "020ddd0e07609a6a8d74c3b7a8f84986320fbd711df7a846eede70f57c92fa61";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ca/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ca/firefox-113.0b4.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "b45cd595fe5ef06f141730b2edd419509345978fe5160bc3fb3728143af50639";
+      sha256 = "5242da58d848163ed6f6c0950f6b15bb2695039f1e36766c843d4e6d24029a21";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/cak/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/cak/firefox-113.0b4.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "5246f87d31d17bb0d7cbdd747e996820f752cfe089f67713443e7e06c45de0ac";
+      sha256 = "8f8be24b896cb9dc91832f85afacd07fda9cea47b44d4885b758b6f42f4ba8f2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/cs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/cs/firefox-113.0b4.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "bd6347d3c5010af6428541199739bab58be8e1bfba2f5dbcad8aaac3b76779a7";
+      sha256 = "13d4316d04e1dc777318c7fa45ac162904bc073947ea535c1085c394e9ade361";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/cy/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/cy/firefox-113.0b4.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "83500899f0b492093dca2c18c96f12c8a023b4a57d20183a6430b868e89bfff1";
+      sha256 = "bca6e4745d235399627caa12e64d06b6ee98c21656d686d15ee27d7bc53d81ab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/da/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/da/firefox-113.0b4.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "58d94b112eb891936f42155173f94ffe184469a342506bc6394ef8183d7a968d";
+      sha256 = "6d9e212af96a91dd994c5fbda78e17038e8366ba366ee9cb6ef2cb0bbd6db6ab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/de/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/de/firefox-113.0b4.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "d97615778271ea8c9a14f3dcb50612b2d170e0327856658e049e746bb51416bb";
+      sha256 = "33cc3250cba675b4b100240965db4cda1969c1fcda7eabc83d28cf3496162296";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/dsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/dsb/firefox-113.0b4.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "653394c180595785a29c1e0eac655f2d90e9dcc7578c813b2cd9a71c5d56d026";
+      sha256 = "b7d1f3759e36600b0294f3067075117c74f951867704a6a87a1807608b760b79";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/el/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/el/firefox-113.0b4.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "960c639ae098478e9f9805e38dc9a56359f84b5cec6b2c120ad8b5174b54fd32";
+      sha256 = "a5e8f807f9f0afc83da34b5f684d1251b9057b1a48f0ea55dcb3a6d2b0b5827f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/en-CA/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/en-CA/firefox-113.0b4.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "1fea26bf92425c4d80cda1694804633251da696fe3990fcb84c18cfa41c84b85";
+      sha256 = "655a6ac0aabc242fbfe3e17bd6a4e0aaf4bc35aafbaa32f776e85f4c8a4fd947";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/en-GB/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/en-GB/firefox-113.0b4.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "6881e868e7adf125d67872aa79000975635480e5107655d0c060dcb8dbfb2d81";
+      sha256 = "9d59ddeb52188ed384791ad39d6fab27456164ed9fefb05c3a715a86ddb73199";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/en-US/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/en-US/firefox-113.0b4.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "d61b8422e344e6873c9b8b9d23c0610aadd90c71b458d971c2d077324a77b64d";
+      sha256 = "335d6eebce1d079832dc165b938a2e94438bbdd7e4067b96a5f8c524cb3fdc10";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/eo/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/eo/firefox-113.0b4.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "3d459fbe28d3d1673e2ea98c25a267023bd8e9eb3217ae87a6f69972cdb58d03";
+      sha256 = "b5dcd0aba20d3041d05c3fb70e1f73d95129fca80ddd53a1eb6eaa862bb5f309";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/es-AR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/es-AR/firefox-113.0b4.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "6fbdd2a0396dfe0e5caf491287218f0fcccb9311175e0b75c571e1f3a92d7bc4";
+      sha256 = "59df349819e4c7881696f1224b7beb933420fbf7b7c6c6bf2abcdae15d6c8ef3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/es-CL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/es-CL/firefox-113.0b4.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "41ab6d9e3f635d43c9a187932a93a8484263b00e194e9f8450ce4f1c0fe28f38";
+      sha256 = "243e5fb75f8fb0ec083bab5e83774d6d05e1298db707c746a24a0803cc725e9f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/es-ES/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/es-ES/firefox-113.0b4.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "18028d9ca42a8f6372ddd777943d86cce7ecbfa0f0e6998ef879a7ee676e9eee";
+      sha256 = "60fc4ef8ee54e662df20b7cf425b5777ddc36354e3ebe58cb41555a30a1498e2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/es-MX/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/es-MX/firefox-113.0b4.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "79502a45f906bdff7e3c3fbf89624034717ba4e70d6ffc753a8ba4ef024ceac6";
+      sha256 = "563d0f9ef8bf7c69d5197358522235a24782b49907989c186040d7170ae79c87";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/et/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/et/firefox-113.0b4.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "c401de7797bb35f3f89e2a6efdf08b9458b765243d0764fc00badb5a9d01995c";
+      sha256 = "68185bd9cd373634cffd669740f6023e866eb4f37ae3241fac2d9c864342c1ef";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/eu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/eu/firefox-113.0b4.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "0d1071eb565fd3fca4e7ec50a886f5c27af4a4ed4ee5da1237efa39f508a45e7";
+      sha256 = "13b5e024b8c288f934669f54a00478fed905a2885e4b0c1379d4fe00438af3a4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/fa/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/fa/firefox-113.0b4.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "bcd12e119c3203e1955af4595121bcb451460dd4960186f309238ad4ad2603af";
+      sha256 = "4d349fe8db19a5766d7c5e8add14a7ab94ad2403df932ff1e656786fdcd93b6b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ff/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ff/firefox-113.0b4.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "96e9f283c7ad4b8c2adb8a04c7d8ac4e0648f1db1775d1e4a8f963ca5ab4bfc7";
+      sha256 = "c86494bd989c0f777d4d90ad950b72fc69a768b2ff728092f6c53a24cb9844f2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/fi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/fi/firefox-113.0b4.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "f4f3fd6e01a17154ccbaac98e8366feee42a577213b8ad8ee6bb98cd4eccc63c";
+      sha256 = "e05070b60800ba97773d00bd6a1fc397c268b489e535848d17f144396c2e690b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/fr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/fr/firefox-113.0b4.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "e3cf2f06d1672f7811f61a72c621ac7b02c52fc5c95c693e5b7ca3e6a312ef65";
+      sha256 = "aa94ee3eff97c7e9ca31f25c45cfd40f0292a27ebc7e399a4318dfcb3e893cef";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/fur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/fur/firefox-113.0b4.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "a443bab872692889d186876c8021f4dac8e7066bcad9cf07859d9a64e68e36d0";
+      sha256 = "71592b4a094dbf4fa153a25f368fedeb4338bd4bbcd990ed8779afe72c90c8c5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/fy-NL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/fy-NL/firefox-113.0b4.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "2fc833b2832048e90fb5a54a8a1e26e2ec24dfc16756d25da2b27c206f2ec152";
+      sha256 = "93c4035a51d20fd83d3513670618b53213c8cab25bd496a0665b2a0849d24a70";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ga-IE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ga-IE/firefox-113.0b4.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "e3156719d5ea92690afe387a083c298d879971c38709c6a02560af3b1204b27a";
+      sha256 = "24db4cef5050cfa47827acb0da6d539d480ea2c847dd73700ee5879c8759a3aa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/gd/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/gd/firefox-113.0b4.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "4bba581ea6859fb0ca0e92bc4c64e221010202887422846cf23122b3ae10a25e";
+      sha256 = "97d8d4fceb01fd352220e9b98e107338c7642c00bb960f20fb68aefc7b189b00";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/gl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/gl/firefox-113.0b4.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "1de0db04d4977b71e78173a1d738f188ee8a6798da25473d21216dd6eda928c0";
+      sha256 = "2b91f7aed363e5fa3b10a14b3a5b479546cd67e17490715d4d714634f0245b1d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/gn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/gn/firefox-113.0b4.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "4ec41348ded1d24cefe64841b276d760749b8eb8385646249b01cf180471b7b1";
+      sha256 = "292d36b9a37dd7ad6421082f317b8ce9b2e01230e24e524418cad8166a8d7423";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/gu-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/gu-IN/firefox-113.0b4.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "fb99b010d7fd6b619d43db12c66b80d222ae2eb1dc03eab0f39e10ed54fc975f";
+      sha256 = "68a5ddc18975de60ff79732f07c6471f79e7db6977b4a7f59709d4661efdf3b7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/he/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/he/firefox-113.0b4.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "c8616d73659cff46dba05f155f942845f00782c291fa616dcc7f8e110c17d2d0";
+      sha256 = "dcd8876a30d4807a831d771ff4450711098373c23bfa43c0d7810dafb8b67c57";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/hi-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/hi-IN/firefox-113.0b4.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "e613194a2efe8d7ccb800c23bd253f80b8acfb6748e03e109c71dda6dfe3db2e";
+      sha256 = "375ab1e64b8ecb2b2b42b9348f64254a01a11213a8b1ba6dd7febe6c5b5bf242";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/hr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/hr/firefox-113.0b4.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "dec738c4d3603fea5f0c93ce0ed0814a9901e691c5126192eee55476314312c3";
+      sha256 = "bcd791204b366c601bfffabf8815e3f50fd5baf16ed7dc4005e4d567be37adbd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/hsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/hsb/firefox-113.0b4.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "959e7a1d909f0b1013a4c5abfbf9eaacc9e4b0c145af0d6f1b7bb532645ce18a";
+      sha256 = "8ed56ed8e9b4323d6a2e6138e7756d384331fe975f5ac792ddbe744dacbde748";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/hu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/hu/firefox-113.0b4.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "09f7adfc674063f277b210bc6e502c165298a9bb206145dd4889922e5df67f79";
+      sha256 = "038ee88979fa635c4b436e9f52a64fda9e9bf552d9687246c1d70a7332272b9b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/hy-AM/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/hy-AM/firefox-113.0b4.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "23e1e355f25befa9b5cb0968d4c1f3242bf6fa1ec3ea27f1670ce75e59f1bdd4";
+      sha256 = "f8276de6b8ccae8c7c08c0f58f2987755b0d56ce450a90dba807541bf415c595";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ia/firefox-113.0b4.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "a9f53465f58d491de332f855f5669e0c4d0288a994410d6ef849466e2b432299";
+      sha256 = "46282849748878cc2238c86f9bf7ae0c72fa9e364d13e63050be4776e39fa7af";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/id/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/id/firefox-113.0b4.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "3377495a450130db9aa14a52598f50b254c97a942a9ae2546a721104a9b08048";
+      sha256 = "1423f4e631414d9485598624c4537b04173eb3cece13461a86d0d511d5ac66e5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/is/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/is/firefox-113.0b4.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "dba7136591869347cf5a07503f3a0cfd705eef9b69217fc19785d7584dc9525a";
+      sha256 = "f286d939beb07e9f30bdcfe66b48b499cd6f74b4fe99ee4f07f87834ab5e7e35";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/it/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/it/firefox-113.0b4.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "6d14dfaa7c40fa27d1099dd7ca3dbe99731e7bdc9a22ce2b5c1fb0caa5e53dd8";
+      sha256 = "38e9effdb34a6c65899e5fa121256d63dc9f6fa213a7b70e0305ed41d01ec279";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ja/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ja/firefox-113.0b4.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "01b78c71ab26948e8f2eaf199b7360a55d3e2c423acb008bf5d00a171d2f8198";
+      sha256 = "bf8aea1bee94db6069d01115c388dee548676e1fb63c09a61d2241c3317a4e01";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ka/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ka/firefox-113.0b4.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "f067e6190ceda4f314da7c56f9390425ad648ae20607afdc473ae5dc4d8dc261";
+      sha256 = "80af1ec4f933906c50f5511e389da05df1f969cdffeedc4ab36ad869ddd34e60";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/kab/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/kab/firefox-113.0b4.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "a1b15015972ca9e114462f0b217b51b8f758df64c4d3ebc1542575063700e7c0";
+      sha256 = "47d4c4047f2021e9acb5746f5ff7f4850c4f94d62fa7ab4d364ad29af227561a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/kk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/kk/firefox-113.0b4.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "2f2e21dfd26cd4a074c531a85ba4401ef29fa6237d885a1eca3de6de07891c71";
+      sha256 = "b6faf1396886c0acb36061ce0b2b0a67fdd71be82067bd62b2adcff21500e081";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/km/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/km/firefox-113.0b4.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "6a22f3696198bb87e920261328a99460160cf7de22c1c79f1c6b50bb9395cc78";
+      sha256 = "82622ac8d0127113ac2a6e540c47150c37b8905d751f077a1f32641b89287816";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/kn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/kn/firefox-113.0b4.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "cc94c675a5e228921c448a773470a480be3fbaf62094abb9d2b759db3fd814cc";
+      sha256 = "228717419016c7592c90702176d432e49c768bed9003335dbbb7421370bef866";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ko/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ko/firefox-113.0b4.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "bab90c97c6350822c8ebadc047dd0363e7d03740c296d24c1b272ff2fa259a7a";
+      sha256 = "4969f9f7ce79a4bba078be41fe7b920f31f9f0b9c850e3781e2ee5002aac2483";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/lij/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/lij/firefox-113.0b4.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "145cbf712b14ebb73fcd8bc311c56aeb6698eb25ebb2a4c9c3a8a62bd1c02bf8";
+      sha256 = "9011c0d250d33ea3774311bf7c3906e17ae692c3bfefa40d494f87825a87a3c4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/lt/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/lt/firefox-113.0b4.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "2cd40821b72e570ee1c877d56701724cd7715285670b7929ea434d041406eca9";
+      sha256 = "f5fb60877d144485be0be40df901f6cb54d32933029d4970983a504ddf3ac0c3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/lv/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/lv/firefox-113.0b4.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "23bccb2ba57c061ad5875365842be19a518887ff3f71d551b85abbd69a53d636";
+      sha256 = "03b08f0cc65ecf085db89ffffab11380f29d7e7c4869a8aa6c63a4664f6d56c9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/mk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/mk/firefox-113.0b4.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "62444e8914cf6a7a734b577e107ec22a4ccd7ca39bce4b7b6a66e970dbb6e371";
+      sha256 = "8c1125c0a57e32d228d92f87250aeaf4957d28f8b29fab696492fe25fef40100";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/mr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/mr/firefox-113.0b4.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "23355ea5c25eb79534fe80e59a660f4b5d2719bf68863a547a78aaeec8d0d6c6";
+      sha256 = "560af9575fb685cdf45e65a539db6b750044b1282d8529d7b6e96111161449e0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ms/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ms/firefox-113.0b4.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "8c834e38b172656656c57292c3a735c49ca5d3444ca374f6958e684ae22bd086";
+      sha256 = "c9184543f1f8aeb7cf1b4215666a51f454a8503a36eebd8b4d6398ba9cc3dfdf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/my/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/my/firefox-113.0b4.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "4cd70e346aa9fd7a877ce45378fcead5fe1cbf990a54defd073ca0d8d9b30a34";
+      sha256 = "c1ba7a95eeee9f83f94d603ff97ff4e3cfaa2c45da285f10a923d0f635f33444";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/nb-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/nb-NO/firefox-113.0b4.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "4ceaf249c39e2b108ed1e493fdaa62cb52ad04b67aabae58a86944cd42964335";
+      sha256 = "0214c5f94fb2ab276109c8b058548ba2761a88e9b306d00cb0bbc0cc9ed82598";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ne-NP/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ne-NP/firefox-113.0b4.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "6f8c0df71ab020b718625433dc5c25f2382342922e15f44fc72ac20b5258e441";
+      sha256 = "2370de43beb5baf22bcfadc5c4c36e80bdfc4165948b2bb7ad3051b559074945";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/nl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/nl/firefox-113.0b4.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "4be0cf4ecb47dd9ec5aeb8c7acd1ca93ad886b0bcbfb95f2a30e16fb41d4340f";
+      sha256 = "ea7b19a009498e0e30e10bc8dcc180d2b564e8e01b2c85c3ca1c9d44c6571c6e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/nn-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/nn-NO/firefox-113.0b4.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "f38689e40e019cffd73966ed9fa58ac542f62025cab1f156e22cf3b137389322";
+      sha256 = "e8f79357a90ca197a547e27215ea3f85cc6ea88190e0238fabec0cb07baa9d99";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/oc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/oc/firefox-113.0b4.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "67be4afbf41722f201cc2ad63821ba56efd212606684d66d9094087ce28e116b";
+      sha256 = "185146385971b16174ffc56c5a9e7e3dadea43a1288c32759929db0fe8412ced";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/pa-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/pa-IN/firefox-113.0b4.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "80b97a5b0c195b20844067001d05d0995812b51aad40db631da35de018239f86";
+      sha256 = "4e2cd0af0bd3109b98db82ffc5bee0932e9a5dd3e43136e1a0b82bdc58bd6af2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/pl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/pl/firefox-113.0b4.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "71137cacdf82696e3c9e4b8e42882cc77c4d3f66ad540ad04224c347ca30bf72";
+      sha256 = "89e76380d3acc65eb9fcb82f982ae436f7a863d8f3f48e9e2df57d00253c5496";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/pt-BR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/pt-BR/firefox-113.0b4.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "e978a8e53285137c14392f3928beb462ea4bb78b49f8266bae2505bb751bfcb6";
+      sha256 = "39543bee91267117a0470adf00b69d9f21348a6fc3de1e27077dd2b5807b2613";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/pt-PT/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/pt-PT/firefox-113.0b4.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "6c355c30efdc1c60d6e2fb77f06c39d6f62613aee81ee7584cf58db7d9bfe918";
+      sha256 = "78353c4e7e4a14466a276cf45421c5783a408e2ad9a3fdf967cc23e6b000800a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/rm/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/rm/firefox-113.0b4.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "2e65b2a382220719a0f0341640317085524fca87776a864375ca4358f96132b3";
+      sha256 = "1ed52804ef3d9186d7f911f3301f2660b751bc6685cff531844bdde4b5e5b040";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ro/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ro/firefox-113.0b4.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "5ed6ce88efb537ab23c454009fd6e33bfcc0473555f47a4a61f252e03999c103";
+      sha256 = "d5da1b3c4186f52f87dd312b55ca148e3c7bf846fcb76d88c066d2dee253fe61";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ru/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ru/firefox-113.0b4.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "a003fc303e2478af1596336aaea883acf3211867e7b8ebf576f843ef270422ec";
+      sha256 = "a3be2839119265612c68a68fe9933cc80e8d2d770aa4805cd8f4a39a8bde5ea7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sc/firefox-113.0b4.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "6d5e84c3554bf931ea44f67c8cf2005916db0599ffbf78a0a3572eaca81d59a9";
+      sha256 = "b2e9d9cce625130180c36a97496a26efce2b647fed7cd2722c6c140bcfe62cd9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sco/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sco/firefox-113.0b4.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "9d6e834a4c0d88900ace756e2ad0d96437cee23104fde9212143a03baa063987";
+      sha256 = "95ac4a4211d2b30dbb378dbd7b76be67933809b7cb5a38fa1ee9cb67bbfbe741";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/si/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/si/firefox-113.0b4.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "52a89fcf78fd864540b732ab415b06dc41584a057d11779061c870ccf1026bf3";
+      sha256 = "cf509aeeabd75e0017aead58d26f964c86d8dabe6bed4a21e2b9ca96b69da40c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sk/firefox-113.0b4.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "a33b82d3c3e32d3c43d88b3613f796b0073c9d8c6fc7082b5329f877fe243d1a";
+      sha256 = "3dfd87d0bec5ada439d55b0cf30f6ee368b7fcedef7a1f55347f89ae29bb70fd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sl/firefox-113.0b4.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "9d46d77c6841357971b3867e8d3659b674cca1892862d9668e608f99983a5b4e";
+      sha256 = "c16f872446ccacdbf561b4492f05238f1eaffa7eec2da53dac5e1244faef1223";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/son/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/son/firefox-113.0b4.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "22559f8e961ede16392c01a297c69e43395ec93623d5f9897887b9673dbaef1a";
+      sha256 = "fca55d28673767468d1eecf79c2ecac9466d0299aa47e15cc98318e7f62c9482";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sq/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sq/firefox-113.0b4.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "bb29f522e16897bd83946b291d3162eff71cbacca4da9e1b4a7b16b4fd17a0e4";
+      sha256 = "8d0022b899cbccfb0393083767b8a1d3751521e60a4b000ffc92ebebd0f9147c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sr/firefox-113.0b4.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "92cdb6e5528c6aed0516364a6c01bce28e29f7ff6c1de971400298449682f025";
+      sha256 = "0ca3277be4e770c2fa36dd63048595bd462ec02d6b59d15738b6bbbe82bac525";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/sv-SE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/sv-SE/firefox-113.0b4.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "63540925589dfa61530be3a97c38c6af82869d65d989784564e84ee042dfd6b1";
+      sha256 = "d1267346ef9c96ad80c615ba4824677c7f0d2abbadea41633c9a60594a22eacc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/szl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/szl/firefox-113.0b4.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "6ecd2dc91186d5c349de5a04e314f88ca6c7ead3e6f3e194a8e20ff4495800f7";
+      sha256 = "596eff230be38686e66b87fad5f00eb8795fa6d9d42f996c6cbf4c3979ebc6fa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ta/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ta/firefox-113.0b4.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "ceb8ceb46279bb485bb03bb24a75c82fcd9a4f0c161697e3fd659a7003c5e616";
+      sha256 = "33048dba43825b4a5beec7183125bcc7e8d9b9c7ea005a57a58506888c432e62";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/te/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/te/firefox-113.0b4.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "625a76a8cdef039ffba056bb791e4bdb82104f8851c4e510fecc75f31c93e5c9";
+      sha256 = "873676b3f7b9f331fb9d98d1740739504dd4a56df179bbd244a9b3a3591a9fda";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/tg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/tg/firefox-113.0b4.tar.bz2";
       locale = "tg";
       arch = "linux-x86_64";
-      sha256 = "b009d02955816d28edc6bbcb974dea276ed384a0a9d0d35f9c353e8009965007";
+      sha256 = "274336b778a16ef103890bf1b6cd57e402ebb845e7a801d3dd922bb35808e1e6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/th/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/th/firefox-113.0b4.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "34a6852d0017a6ff299ca448d8dbec13c5a440031e4b7cb5fef2a3ac120eb733";
+      sha256 = "b20f4884edb96ee00310fec3c3692bc42f011ad648590d033e78c1afed666dd5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/tl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/tl/firefox-113.0b4.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "9d6a1360430702a02e37ce754ab5650d5b3ebd8b866fcaecf98e5ee464ea32a2";
+      sha256 = "264be78a43678db6eb62a70dc35a41720a5729eb476cb424ca6b72cff2dc1f05";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/tr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/tr/firefox-113.0b4.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "4bf7f0e2c26821510f0645d6048ed771fb28592e5546304c1dd3a312c545fee6";
+      sha256 = "aa17646494f43a8eeb760147c344e5b420c686612901067761ed3d0aca083026";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/trs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/trs/firefox-113.0b4.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "b95ee3abba19a905fb7d7cf981a0cc8a8510878cf099920610b884aacdebd513";
+      sha256 = "c1a02c9c46c7f711ba337569b088b3e1884def1f0d200558e95bbffbabd088d5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/uk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/uk/firefox-113.0b4.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "dd1007354eeb86263c6e3d4db90c5049d73021a053fd8856cd1b8b9174e5ed38";
+      sha256 = "c69c6b60d83c75c0a043113c46ff7d246b68c3ccee3297bbc9f777d2cefb27fa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/ur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/ur/firefox-113.0b4.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "f8a9044c3fb7a352fbe3f2e04a994be8573a748f4368bb9a327a53e4c954a816";
+      sha256 = "42d44f5032f7fe9ff52594f9a255cfc2bfd36724c44e3e3aa499743b25444731";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/uz/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/uz/firefox-113.0b4.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "c43e984f241a9bd97c575474f2e80387b676d067fdd5eb9c21646ca03235c7b1";
+      sha256 = "9ce18b6b5aea21119fa363717ab33d4ec371d662dc622dcd994adaafd6af73df";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/vi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/vi/firefox-113.0b4.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "c57dd83122a52e96675d1d52030c6896d430bc222a0aa297e3dac4de95bc76dc";
+      sha256 = "c72b4501ed8cec57839e1bc0b5185b29d8f02fa4860af9157a1389345aafa34d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/xh/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/xh/firefox-113.0b4.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "954de48e49a0f95431b8fda717dff54fd39b59091e732a9b097ba6f12936f0fd";
+      sha256 = "5c1e3a51f7acd068bafc97e0c44c0760ae95e79878e7a8875c044595919563f0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/zh-CN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/zh-CN/firefox-113.0b4.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "30f2ed6ce51ae526b7c32e0174303348045f4907b9aab67a59fbeea7110674b5";
+      sha256 = "4d9e592f2d50195d58e912f41ee4ad0a3eb081edf3e9f9975e9f81317b0e9cce";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-x86_64/zh-TW/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-x86_64/zh-TW/firefox-113.0b4.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "2fe54cd40a0c09a6e7e71d8870c5a2d8e7c3a70036ac246eb0c3659536197323";
+      sha256 = "6070b4f82733768a8d5a8a2b96a4458b908f754c752d42522fdd735eb89378b4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ach/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ach/firefox-113.0b4.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "b52ae8cbc95a39e33881b9825a242247cc369e177a7927c0807134aa600b8b0b";
+      sha256 = "936e06c50e1f8c3c2072fa73fab8c421614dcecc65678543fe6c67510c5eeb0f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/af/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/af/firefox-113.0b4.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "bbb4433e14a32a50fa461f7f44f28eecb47d23434335a3613ea6c5c45a7ddbbf";
+      sha256 = "3079c5e96e5302a8847ca4a4071f3024f1d6f39e46a462b9dbb1042deb18c827";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/an/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/an/firefox-113.0b4.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "73382955959b8b2fb13db3b780559a501b65634a01a2e42cc48545fafb330ce5";
+      sha256 = "76f086e64b6be05a48c37670186de699e359b54fa16ba5f68697ac752d7bafe2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ar/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ar/firefox-113.0b4.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "51958d006b680020cf9f76dfb7c339e99ac471c84cf27e54af686416fe10e129";
+      sha256 = "b0c1ff9cf42030a36a556359f3ef83e614086032553f0203a9c38dc70f10736f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ast/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ast/firefox-113.0b4.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "49247ac5fc5f4da6e94d544f2005818fdd6d8934e06e6bc1880c4e4d8b8579d7";
+      sha256 = "3a0bd2384b91e8adce81cd256936e1a2862d29be5e069eb85cf9ca7975e3344c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/az/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/az/firefox-113.0b4.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "ee4098f0d74a87caa95c10b6a8b3b35ee13d7531047df897b0e70a04efde693a";
+      sha256 = "0b2e6a98270c89a70ff66aebaa69695e172a1067c7d54b2023f184c3c9774221";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/be/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/be/firefox-113.0b4.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "5d6e2492d6b59bb3651ab9066cb7b8c5b3784c9814b172c837a01a057c353578";
+      sha256 = "a64d1846226a617d573871cf542dd5d2349a674d49f0a9b52532bc5a4c80e8c7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/bg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/bg/firefox-113.0b4.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "569945ca1d1c7b5d47affc9037d22a55c2840640048c0b312f55bddabc38e16f";
+      sha256 = "4d1d2a660e8dd2e4cc2ba6ee9535382a7912e9849d74474337676e1fd9cd52e9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/bn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/bn/firefox-113.0b4.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "31b29f6a3baed2827e18641bc2fc3cf09b9c1830cf062000c9c7802a533c29c9";
+      sha256 = "64c394d10b8983b8bf15a0767c1a6b51d6d53040b76e16b0847ef5406ad891a4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/br/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/br/firefox-113.0b4.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "95d538f34defbced0994b7cc8cab3d90ba9f190031638facbfbfcc9eb8167f23";
+      sha256 = "aa4b5ab4f50d6c4cc3453b2d5bb58b41dab9005530c4b9269f8c47dca16e6ecc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/bs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/bs/firefox-113.0b4.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "a690168f0089b97fd6ab52e8dcfa0bf04a27a3ba2e825a47392bc57aa453f32a";
+      sha256 = "2c0a110869de26ea45bb443fc2edcb9418d278dc9ceafee6f22d34dc22d2b88f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ca-valencia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ca-valencia/firefox-113.0b4.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "51be5b54589d6eeb5fc62eb29d568c8fb259dc862fd0a6f281957433f5c85724";
+      sha256 = "d67683b661851496ee79494fa546420f9f5fb22d33a245eea82097801a5eeaf9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ca/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ca/firefox-113.0b4.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "3020b12f49cbe97eac546600f2f03a81ebf696888c47c82727b9559027c8b28e";
+      sha256 = "c3f16e4d7021ce63e47a452e6edb0c6075fef3c09e8f128879d679dfbe403b0e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/cak/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/cak/firefox-113.0b4.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "9697a4cca82fcbaaa933ba9a736d66ff2033bc4ed6f6e73f4010714ea9a126d4";
+      sha256 = "9d81f66eaaf19bc9135e9d52aea1a021ceed08a2d9d94ef07f8bf686ae663942";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/cs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/cs/firefox-113.0b4.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "9868e3cdcd3e4d291a5250ab2aadf12e3dedf4de28e97d62cf648f8b2a2e1553";
+      sha256 = "7ac035c2c731e604c83b130e36036c9843769b98f3a86b47fd075fdfa1af783a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/cy/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/cy/firefox-113.0b4.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "f11f150633369cf19d8a77547a822df1184844f499c4d60148d5e58695123777";
+      sha256 = "1cedddda8ac30189cebc851754b625c5ef76efa454e33316cab1416e0351cd07";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/da/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/da/firefox-113.0b4.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "1e5eac58597ac3e1c5ef0ad277928d6b0f5c878701b58c87ab56bcdb1e1bc257";
+      sha256 = "148906e2dc9fce96b7bceeab47374741995944472276d3cd8c5bed5546196118";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/de/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/de/firefox-113.0b4.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "bd34829a241eeab046def54d9cea77e61f582811955f1793a2b9c751ae1a358c";
+      sha256 = "7d4fb199aa20dac726af832c42579642775a31a7ddbca5af95a0a12aa52e85d8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/dsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/dsb/firefox-113.0b4.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "8d5fc54d686f8584ef0dc54203a468c9580c4d2a2487a809cacad4fef1b665a5";
+      sha256 = "85e1203438dee275e0adfd2797cd48f3af482fc96d04c7ef0e7ec501de371db1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/el/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/el/firefox-113.0b4.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "2c4809947c46ba8f11f8c668e3544d04daa964c69c838f284a364f4b9a9543a4";
+      sha256 = "f186e11acf6eacff7e053c84796f2f0f53f87c2294a86e1ad77cec621d51a9f8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/en-CA/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/en-CA/firefox-113.0b4.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "3b5bb27a027ea16bb022a340e7e7c97cd5de92766aae660dde9df1fa6cad8535";
+      sha256 = "a21f967a04c242b63be3cad6177bf14bdf67d5f1ea60d77158dbcd46c75be175";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/en-GB/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/en-GB/firefox-113.0b4.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "712a68f9e4d0bc40c3d504aef551f1e691fdc2402380bf1c9c4a1a754cbefcca";
+      sha256 = "61021f235a7365ebae4702edd4481f8e085324e1f741bb6e939623e79e0602d1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/en-US/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/en-US/firefox-113.0b4.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "1b387ac6604a4ef040b3a52ef930b760c3a0bab5b6363ff46f66079aace298d7";
+      sha256 = "91eb6d71d80f467bf090ea6667376dc4d93295ca4ae1343c1f30eff473edf367";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/eo/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/eo/firefox-113.0b4.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "a649c80036ca73800995a95f8c1523affdcc46338cb10d807291aa05f2b5249b";
+      sha256 = "96e23c25b698f5fbc6cf71ba96c98e4bc3cd8f10bbae985801703afac46c04dc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/es-AR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/es-AR/firefox-113.0b4.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "6a87ff7c6a28ace5a1edf6802a02df20d3f8ba2e787f2afac9f7663f78b1d2dc";
+      sha256 = "c2014a1a80116f35e5626280c32ecaae3e2ebe431364c83b54ebba76bfd87420";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/es-CL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/es-CL/firefox-113.0b4.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "8dbe070659185e60b7c103d8c11904ea8b19f86ba427782482fd5ba9aadbd5a4";
+      sha256 = "05d321538080fed98010477334d86e62d8713c2ae877a7c9c9ec927ec69d781d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/es-ES/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/es-ES/firefox-113.0b4.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "3dcea12f324a982a51e5c2de4740e201c48f5df4eb29eb115c1e50d3b599de67";
+      sha256 = "0fb5ffabf790deb1cb8f7950645a8ee84aa6305c2935f4164a5db3bfa0b80b71";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/es-MX/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/es-MX/firefox-113.0b4.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "fe234fc3c9c3b3e99ebc8f7de0e91b786bcc9f3ea195fb73ac87c746a3140ce8";
+      sha256 = "6cc687f8c2a5719734c3c80cf53e4e850cea87762d444525fe1668727794159f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/et/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/et/firefox-113.0b4.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "1e575b5cdc9ae42bf29e6fda615711fd2f4928fda81f499ab4b1c8e61d024f41";
+      sha256 = "4b65caba627743b26ee2b88a1468e0e59ed646c7afaef99a02d0ceee0ed3e20b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/eu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/eu/firefox-113.0b4.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "b3951c49a4326812d513ef69fce3682bacb47e7dc5160c43fd5f27962c531384";
+      sha256 = "7e32b1640385f70aeea5a7cf893ee64b171f3f6582f17f7652928d0427e33894";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/fa/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/fa/firefox-113.0b4.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "34145541738f6f3fd04ac25e7580eb563baa830f45edd88e836a8c8e9026c555";
+      sha256 = "bacce7d98476eeae20c3763526d5058aed1af5397f451b23bd9357a5900ecbf2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ff/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ff/firefox-113.0b4.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "04aba41be169c3708cfb8af994849e076908a46cf625ac715959da5d406d9d43";
+      sha256 = "9684cd278984810d1fa0ece1e76938ddc755bf376e046801c75a5c1eb4831cc8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/fi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/fi/firefox-113.0b4.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "8f82c3d4a660d5f89dec6957c815fc2bf9cda623d7cbb7ec98892ba168a005fa";
+      sha256 = "3b089f8e6adc58219f59910aa56f8c5d1f337342a6eb42f5528e471c1e283386";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/fr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/fr/firefox-113.0b4.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "dacf22f18a4c85c6d2e8d41f59a403b007f33bd8cceb8e51bb44ea9b2a85f0e7";
+      sha256 = "f0d6eb3a151c190248bc1fb7f02be9cfbab275d3386bf521a2eaba01e43e0630";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/fur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/fur/firefox-113.0b4.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "4e9bc1058879d906d1fba8a80743211345488c94d8a5f1ec259defe4c503d669";
+      sha256 = "4cd849954469bc09633ce1aac32d81bb98e50e50172e57ff56a5190640968af8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/fy-NL/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/fy-NL/firefox-113.0b4.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "0ffa34e28fbfd4b3d2199ec2cf66d82a896ff80d3f1dd13e40f26a65e4dd80fa";
+      sha256 = "de53ad4263cc6c171a1e38d47432c8bea4fe5ea60232bc57bc7e8ee13b363791";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ga-IE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ga-IE/firefox-113.0b4.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "f6f15273a14ee83bf63b23fee5f0115cfe6d8a27dd5e43be9b2e929834c459e7";
+      sha256 = "97eaebaf3909a03f7155cd3a3bc6b2790f0b3baa3067c3d05da9c9290ded9c21";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/gd/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/gd/firefox-113.0b4.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "199643d9030143d4288a48e058194c6781a591cd0397893f272b7768858d6d72";
+      sha256 = "23ca706b7451cfb8eaa635b53c1456d9afef76bff42b1df2d192cea357e2cbcd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/gl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/gl/firefox-113.0b4.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "6746335a05b354f44fc060a1b0f50e897b46cbe4c7aa45b37dc22d71732f1659";
+      sha256 = "fc0767d413d57ec70f2b21d314cec297621593f6b58bca2915135e07b51ec13d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/gn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/gn/firefox-113.0b4.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "64df184234de243d866598b4de7b4dec72a7512379d10e0a6e37bcbae6b8e00e";
+      sha256 = "50ab4d236ed416e2bb65b33739ad01ab873f4fe10c4b4d6ed7ec4677dc391ec9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/gu-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/gu-IN/firefox-113.0b4.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "700fbc38ab74ecdcaa356f1adb0b612fdcb630dae6e5a4898f1f55200d4e7562";
+      sha256 = "20172e82d455f5f1732c927647256528128c17c459b2c347b699657a77354458";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/he/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/he/firefox-113.0b4.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "fd28c284170b434d2b8a7b89c3e598ad83426b40fffaea22f0db4b339fb6fee2";
+      sha256 = "0e1dffc25c0223be04aa762ce9edd1980406f02c0e208a0a51fe71afde10d84c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/hi-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/hi-IN/firefox-113.0b4.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "91a0da5a09ac27ed6263eff55926a9665bba062fa86120262364d8a1f1ac7649";
+      sha256 = "419642c9a24e6603878ca14c6a8399a05eb7cf7f6acd5314356e767f6a332d53";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/hr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/hr/firefox-113.0b4.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "cbd4b966ce765436416962d23d100f372bfd108227702a4e83e677436824da73";
+      sha256 = "5a5eadeda99a91187b6a0aef1d22e9f5ad033adf45bfcb3bd3c71febd23b4362";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/hsb/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/hsb/firefox-113.0b4.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "754ddd67d4d382b6b32500eb2cb66773194238c5dea22648b5e24a192b0aa2d2";
+      sha256 = "43c1fa154ac67e1115646a4d92e3a4bb6437a28e7ec57bf87af947d6d8a1c437";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/hu/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/hu/firefox-113.0b4.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "88283fb67c2145bf42d2676b6b767d01fd4d43b732e918388bb030be3deee567";
+      sha256 = "218738d4563f707a858a911b1dd4de19ee27a99b2e6c8fcd3ee8843e301a9395";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/hy-AM/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/hy-AM/firefox-113.0b4.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "0d0c913226d0481cafb6f36bd2b0319580b89b28bde3dfac051c1670d8f529a7";
+      sha256 = "a8c8e514a94c975b26addd2879effc7760d3cee48e26f549aa8a7f5e8f48d5a3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ia/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ia/firefox-113.0b4.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "29c736d62794f7e6dddb612fd7d893f0d5183c152febb31a681cbec6b6aafc10";
+      sha256 = "a2bd5401daa1a68e67d3c787489cec2711fd1b67be69048441a0dd5589336982";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/id/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/id/firefox-113.0b4.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "bec649feb60cad4b94e88969731da86810421ce7496546829308f94f1b5d80cb";
+      sha256 = "f68a1a3c3b2bb50c5250f15d9317c0928c17833395f1724892e7378df30639d5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/is/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/is/firefox-113.0b4.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "cab32fe4560851ed31b6bba8be302307a390017efd96acc5619fab5a4991278c";
+      sha256 = "f9288d857a73c66530c28aab9f263792c8ff90e324016f1bb3221bab2afcbee2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/it/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/it/firefox-113.0b4.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "16b571b4ed4700d53fa10e340866218344edf1ed066a6d34a385cbba0b548dae";
+      sha256 = "85bf83f5e43d295826d50a8f9bbb0b21fd17de3719b986d4ff3680855e4595ce";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ja/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ja/firefox-113.0b4.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "d24ac44261ada6f13a8160b565817739b6335940fa015d7369a0f32290f8ab1c";
+      sha256 = "85fd36480c8420bff78890fc6be958335b9af840888dfad6beb5915dd03f8c8f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ka/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ka/firefox-113.0b4.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "dd638504c554209cef24f3ef307eedc0c30876ee59c7265a3effdc3b957a9f46";
+      sha256 = "c8390a86f9bd11b850be5d92b46ee51aa2f26c1fd7596ea0d663e9015c403cb6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/kab/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/kab/firefox-113.0b4.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "e1788279f6c5f9e8b2d405a59ce6c05b9ce54ca408ce599a5a9bf2d8cb31f648";
+      sha256 = "067ff3f08728615b35c84f58f8dd52702a9d7fd4e1d5aace74a8ec20f7deed7c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/kk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/kk/firefox-113.0b4.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "e2beb70dcf74bdc81e39ff741929bf2661c7abd80d79a09b3921260db45cf800";
+      sha256 = "2c0621f9698a8309009624d71b34ae306e686db08d5796afc3e029313aaade2b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/km/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/km/firefox-113.0b4.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "7162a19636ffc9cdc4a5c570e573c656fb659fe977c528def18dd127262507e7";
+      sha256 = "2a9250fa99dd237f124c99cd561dc596d42d4475d7368a7f806216be270a2adb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/kn/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/kn/firefox-113.0b4.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "b948e3b83e5bc386d1155ae2fb17a639a9ce3183b74cfea1d01d7891834ebc93";
+      sha256 = "db57ddfb1b32995464263c209aef78da6ae316d6b95ceb1d9aeb91cca82164a2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ko/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ko/firefox-113.0b4.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "1f6c577aa5b92ceaaceeb7f20c45fb8c6b1c8f2c86ae1c32ac9ff37d7bc22efd";
+      sha256 = "a5b977fab95ae026dbfb1a41f7ea1e212da81cabb296d54364161f979b243a94";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/lij/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/lij/firefox-113.0b4.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "0cabbebe77055cf07b8f69d130c48d7adf1f140a92944cdaf2d4f6e5e0aa1560";
+      sha256 = "810f62f0cdd576f898f26fb41579f3b4d4064d229415686bc1617d47a357f328";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/lt/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/lt/firefox-113.0b4.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "d9723a3741df335382b82ed4903a032e26232f96bbf6ecc467d478d44e552700";
+      sha256 = "2c7d5403413d0010a058b324b74358b86943060ba5449e5c762e745e7582df7d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/lv/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/lv/firefox-113.0b4.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "6232345a0e6034ff8409630ebe1e5d95d80d33a4c9a4f6301c5cfd07d9560679";
+      sha256 = "95439ee735358e46fbea69779e76dcd697a4e2599c4ee55794dd7f9e39d9eb55";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/mk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/mk/firefox-113.0b4.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "8539c5bf7f3959d2f526b8f41e985ab7d5f71c8b5077e3b094d1228be813a2c8";
+      sha256 = "9ffa65f36282c6a697275cf4626aa5f3c1fcc96f559b7678370f89354c1bf51d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/mr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/mr/firefox-113.0b4.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "b8365ba21b55e5cf774a6b25fa51a15c8053110beb330f3dad5adac9b4aff20d";
+      sha256 = "a65149e47a1b5c61964ced5b91c10967e619af1f5a653e409d1a5b69a4c20db5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ms/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ms/firefox-113.0b4.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "020d3317b4752bde5a0d4b545fcdd0a353192d439fe429e62dcf414a5bc62561";
+      sha256 = "cc3a14463edbd0cf8beab80166264a31039d4e0a57b12d11278fbe410b7dbf93";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/my/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/my/firefox-113.0b4.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "b4215ca0a36cce9aeb362852682bbf4a6a087349fd72fc494e7b5a672164798e";
+      sha256 = "958570b1d5673cbeb557737ccdab62d08cad015cea256754c0703b7018e9462d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/nb-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/nb-NO/firefox-113.0b4.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "634c26c0c8debc4f26ff0267cd9b4a33a968f142fbfa5718797c5b98cf6b326c";
+      sha256 = "f1da12060e3cbceffe88311e7d23f0d30a2f637776ce4513972554bf5f1b3ad5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ne-NP/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ne-NP/firefox-113.0b4.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "98819132fb3d40696ec2a68b2fa2211d8423877366b86240a40936a901af641c";
+      sha256 = "ea76e71f5402fb38df5d422cf25ee2a6040d752dc8ca980610e1fd46b7d3d86a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/nl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/nl/firefox-113.0b4.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "982169887d9dafc4d16b058df1dbfbd92330d6555679636734f70eae34cebaa5";
+      sha256 = "310908604a5f3d82340bbfcee1bd16288d9837dc42b71afd9a58c7e4bf8f1f70";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/nn-NO/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/nn-NO/firefox-113.0b4.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "5636846839fb83e1d40e64115d2f9fbf67e94e4f6271cd5e2a1a6237d9f389b1";
+      sha256 = "1716a0909521e28b3422822eaef677cd65f680fefc3734cbec3bdae98ab50115";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/oc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/oc/firefox-113.0b4.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "f4927c21e8a3f6151e8e571bf2f08a13716164775daf95748e804975ce7f5e0d";
+      sha256 = "15daca31128922441b384d6e00a59e4bdb7dd8b1e765f908b53dca432b1f2ddc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/pa-IN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/pa-IN/firefox-113.0b4.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "286e43d9bbe70b75d6ce8adf12617d2d4ab120bb3285812047fdd5d296e69dfc";
+      sha256 = "553594b9d63977e855b072249b5ccfd3b2d9765f8e0dadbcc9cd7a2d8a66083d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/pl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/pl/firefox-113.0b4.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "2d0b7741f9b8156f25b989bf49508e66bf1e4126a95576e4fdb1c8006d0cbfaf";
+      sha256 = "afe71cca35b72d204cd9745ce2d1cda8499fd2ad5be565aab164c2ea46d23ae7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/pt-BR/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/pt-BR/firefox-113.0b4.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "279211754415ab644c2dfcd114b007d82e8c684204f8541a8ee55279df827842";
+      sha256 = "9bc09269a0287e785c18b66863199772f3fd29efce96e26c7382f3b092ed9adc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/pt-PT/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/pt-PT/firefox-113.0b4.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "ef89429a5a950589df7fd7cadd56c1da24c482fa50ed6f4e44fb184f557bef3e";
+      sha256 = "b23d3a6e71580d6e1037f79a20dca96c670daf94525ce5ce40ec0f4ae11a26f2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/rm/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/rm/firefox-113.0b4.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "23371559057b49d19eaea74f22771fedf8cc4a18a4f63a574b67f06c431ec804";
+      sha256 = "33c3bda8431458a8dc838dc4a11cd565487fb74844ae3e55bbe4c475a0513aa7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ro/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ro/firefox-113.0b4.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "c185c9592dce479af6f8536a888cbac9b21a6a9b4d18a9aca696bf88ae0da6db";
+      sha256 = "8f29fbe62d6c208894f87dcc8c3d4d6103e3de863a67516b5015d951457b90a6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ru/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ru/firefox-113.0b4.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "6b167db7ecf184551574d4c32e31ccef8f60bf41d672e7f5693fbe7f8c3c5e47";
+      sha256 = "e70ab287dfeb0fb888c85ac71b279b9d7524d1a0ef93c787d1f207349cac56e8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sc/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sc/firefox-113.0b4.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "da80b35b18b2a9b5dca3e7328242fdcd61e3af4d6cfff9789c508986262957c5";
+      sha256 = "534292fbbab374db489b168f6d4d81ce976fef4c40b3d95408a8bae0b9279b24";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sco/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sco/firefox-113.0b4.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "7ecf3f0a8b60aab8867493588f407d1e1ecca8914195549bfdacc6d4c3004ecc";
+      sha256 = "d7a0f577037fb1ac64cf9831448ef8ac5f49b17b81c171742e99aa1d0e25de01";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/si/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/si/firefox-113.0b4.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "7bca2536a121fdd2a6e2b4bb166ee9ea8ae0b89a91725a6b03e0696beb3acdca";
+      sha256 = "dce56847aa598fd4300b80f9fa264219a1aa5db2bed10db6320ba10f60495ce5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sk/firefox-113.0b4.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "9ab8f73f31a3f2c7dddc53d0a8b1a25aa0f3aff7750f6bf1f8df84421808ad2f";
+      sha256 = "6bf4ec218b7219ef7210c3ed73712286f505d3a9beb0afb5d962370758e1ef49";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sl/firefox-113.0b4.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "03ab5e7bf573ee935b3e341f750d4dc77b164c51445830f0d45d58c208ab53e8";
+      sha256 = "3a8e18d2fbf73be9f7df357a78774d87b28b051e5e3d3c491333f893d063b717";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/son/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/son/firefox-113.0b4.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "654d602dadc8bd4b1b3c2423e605b7979a30ceb6c459fbed7f4fff5001ea60df";
+      sha256 = "852667eb0d6307b711a25da361bb8c05cf48c54da245d4ab940739380fc81d1f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sq/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sq/firefox-113.0b4.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "643968cee647ff76165ccf4d2a764cd6191a567fba91ae3b33c8ff93a49e8164";
+      sha256 = "f190df34c60bbdda8982a89f1a205c3dc24ec474025a7ed76c1c9f5bba875d0b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sr/firefox-113.0b4.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "f13aeb85a98fe603440e09aa18bd54a16a69ae36d740bcd9e5e42dcc0bf39e74";
+      sha256 = "87dda2312559b3a0c726267658cc7aad81c7e27df02c8ebf63e171c48653a07c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/sv-SE/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/sv-SE/firefox-113.0b4.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "b7fda09aadecfd8c3eb54e3d52b3e9bf5b861bbe9eb242331be1d13a87cfca7f";
+      sha256 = "3ec0a222252f42b593feec33b11ed82478435185e20d67eb2ecf74efeef67a42";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/szl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/szl/firefox-113.0b4.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "33f3e095b3c81f6d2d735e26bd13abd44f2de8ff4f0961acf07575c7a1c8540d";
+      sha256 = "a2a65d6d63ee3a4fa74741481ba9f54d58b5a381c8568e90130f4a9dfd239f9a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ta/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ta/firefox-113.0b4.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "78b7288a4554bcc45adccc08613a3ed3251442e165e21479591382cc13dd450e";
+      sha256 = "8a9aa1a5972e635d606454a5ff5a955b3158df858f4b47fe9b55fa393e5079d3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/te/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/te/firefox-113.0b4.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "9e2de8945ad24b6e172ba8682bb8a49364258d87bd7a9f07c1aae99b76e4a916";
+      sha256 = "c738e9501ce7f6baa2b1424aeb2706c5f8313394db0fdbddc82704a234b8947c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/tg/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/tg/firefox-113.0b4.tar.bz2";
       locale = "tg";
       arch = "linux-i686";
-      sha256 = "7b1078f672c6a8f39d2a181eec7d2ac7418af19c4ac84dd632b81599b14f84b2";
+      sha256 = "26971632a8a33e85cd6b457b4a281ac3429661f78d1d4c2cd5a2aedd90aadf5a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/th/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/th/firefox-113.0b4.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "af0e5f9fcf2f3032b53bf14f89c9b4594721bcead28cd86fb01902a52d10d1cf";
+      sha256 = "9a01fa61b73e3c59d425ee693934120dc40b116708886c444223ae2d3e9eb73b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/tl/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/tl/firefox-113.0b4.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "921f13e434aa76d2dafa57065337ab8087d572426b7269f9368e574f395d40ec";
+      sha256 = "4ab70ad927a290357855955f9f295451fb9ea0a01d5e071897e40fa4e8919561";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/tr/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/tr/firefox-113.0b4.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "c83bac81d80180993b1bc754ade6420865d1fe0f1239548dbb96913e28ac06be";
+      sha256 = "170b7116604420e2cf96edac326111812461fd26ce98af92ec1e52bb6bf0bfb7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/trs/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/trs/firefox-113.0b4.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "18cc5f9e830195e08f3243bef085a08d9f7b4b72b35f33e5ab7fb2f5ef9bfb06";
+      sha256 = "43a9405e4752ced41686f4daf7667e9cdcf51afe33379308a1936e5ef19906fb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/uk/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/uk/firefox-113.0b4.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "f03a3ddf8b48630ba6f3f550d7e3e8dbd6f3f3e7aac9f9ed27e93919d20bd744";
+      sha256 = "35444329df7c31f12f46ea4a6a04d93b4c2cbfe4d54ce13f7ec4ba5e354d395e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/ur/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/ur/firefox-113.0b4.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "719cd7c8b9ff0bea03e27e8c804b83845849d9358ea6faa2bbf7516564fa8535";
+      sha256 = "b7238872782a714e18cc86fa9dc4aa7160b3046d2820d2878a00bf65100f214a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/uz/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/uz/firefox-113.0b4.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "5c622ce64af91bb2a97f94f9303f71f127536b5bca447cd8468efd0bd78c2f1d";
+      sha256 = "c25aa114828d68598b360f198c6ebb0e5349bf307c4d5ffdc19dd6a722008a88";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/vi/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/vi/firefox-113.0b4.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "d0b64d4673dc3f31126202d739c118aa1a22c7d62f4750ed1c6fc9929ccfbef6";
+      sha256 = "3414b1be971af656b0084a8d9c20feccf3d78c8e06327150147056235232dcee";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/xh/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/xh/firefox-113.0b4.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "b2796891a1055758f0a07f7f008f7c675b5e39d629f80cda17ffc54ce9c2422e";
+      sha256 = "1beb794e9d9c83662479452fe5aa4b0b09afe3bde104d61526241570df24b4ec";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/zh-CN/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/zh-CN/firefox-113.0b4.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "1be837eb7baf745d3cce35a560ddbcc41190006ff00ef6391442470ac3ef5d32";
+      sha256 = "854977638ccb4618f230545a69913071df90578eb5ad477245fe21a6c64e59dc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b2/linux-i686/zh-TW/firefox-113.0b2.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/113.0b4/linux-i686/zh-TW/firefox-113.0b4.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "c3aa1828615a5ac80df646fb090aadda6ced6de4b312f8fb4114db7be838e8ec";
+      sha256 = "f5cc0d5d03f5a1ab207535c52f2459a72ee0d11a20673636925e3e28cec729ff";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 5e6117add4dfb..2203b526c09c1 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,1005 +1,1005 @@
 {
-  version = "112.0";
+  version = "112.0.1";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ach/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ach/firefox-112.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "5b3e37c5b934339ff083b0f852a135c6cbb45c6abdf6467ec206a83647a1d8b3";
+      sha256 = "36fd6c7580b7c52be08eeec0cdb078847d85150db5a7589b6170b87680352aee";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/af/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/af/firefox-112.0.1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "af22f08c6528fd447515eb4f914822265bc9e47ee314d7c15487b9bbe1dde42a";
+      sha256 = "faadb7dbb35eb85dd5afd2b1fae89a317efbc57d47c55bddf5913633f3a94f5a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/an/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/an/firefox-112.0.1.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "0cb1badd023ff3dd7131629229648956596c43e4458affc02273ba5036f810d1";
+      sha256 = "413cc005f597c80e45e21238e6d1efc6b7ea9601a414f17f7a9de649ae100838";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ar/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ar/firefox-112.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "673262175ca0f6fa4f7f0c43634ad15f242fea00768c614c97ca0b88abaa5740";
+      sha256 = "ea1da8a30f29b34444140ded31282fbb22376954d5ee2a6a7545d2eddb19edd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ast/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ast/firefox-112.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "649d9bde87232463ffa532f2fa1a2dbc1732134cff8ab3f4628313f26d573bef";
+      sha256 = "441d682a09325f46cead74d300b4f27200af97b4315fd2990d1fa33ba93412c5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/az/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/az/firefox-112.0.1.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "15cd7a54db2df0d6894798e508346ea51ccf05b45ba7237875e7fd32fb2a94d5";
+      sha256 = "24440875e36dcba8c5d4e125715d2d8c61bab534739ff5a4e0c9e41419c3a05a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/be/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/be/firefox-112.0.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "1b2050268708cb475d8ced0fb8e0365f243c4993e817a553603e65b600ee7f05";
+      sha256 = "5b3e6c637256f9d54e414a56807f8c3e5dcad75e839b97bb26c4ed8391538e53";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/bg/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/bg/firefox-112.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "b6323dd73d10ea547c34cc022bc60312a949f339f0f709fe4d1fbf9cf8859b0e";
+      sha256 = "cb132442599cc876435aeb99ce3d366ecabe583f66ac50b964fc6d34039b7a06";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/bn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/bn/firefox-112.0.1.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "2e6699071dfe0efc6f6860eabb34e3cf64a4de2e11be2292fa5348808e731ab3";
+      sha256 = "8ffa2b5e01300ef62a980d504b9d5c61c17c71e36bc267694d7de6594227f86e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/br/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/br/firefox-112.0.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "5f488917c05c048fee13153de51a462febb4bd72d2954f2d2f321cd119da5588";
+      sha256 = "ee830d98b21fc9cc74a181c2c3cdb61692a83450df7dd35b7777591fa17cbd16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/bs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/bs/firefox-112.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "5860c3f2677ce99622a0b575baef36d3db993d2f371b7c6aec72ef2a9d8e0952";
+      sha256 = "1728f28b2b36feaf09eaf6b1750a2b9bd23e03bbf72b9fc7836e4c2ded27d120";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ca-valencia/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ca-valencia/firefox-112.0.1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "23ddc52776810445fc0352ebf19b27c2b4729fb8cefce11b0fe7df9f9e505dc4";
+      sha256 = "c9cb9c84d03593a2f95071fe4e720fe23b8a70284c9f6b4225f3d501672b0800";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ca/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ca/firefox-112.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "2bbe66c628f5fc9c89880d63868eb5469f1284944728adb5e3741bcd85c57b18";
+      sha256 = "633d527b4d9e4ff77474ac9e401290d1f700243588c963e96490a36ff1a9fd92";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/cak/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/cak/firefox-112.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "d319f624941cd354df6bb78434f64cb6de41bad266a1186dbf7ddb0c2cfacec0";
+      sha256 = "a7228264a85d64f8aa7a585452a7ff452535bf23faa4fde823a1d161c9234a19";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/cs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/cs/firefox-112.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "614fb174a002e469a8dc83005422c102a6406cf0784d53b7120ddb70a0bdc708";
+      sha256 = "133263691738d5a03950bc909ed50b5379c56ab118b43ab1ebf874cf67c448ac";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/cy/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/cy/firefox-112.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "111b820566db4fc682768b4ecc3b6583efc4039c44e880ea7bcf5ca352a62dc0";
+      sha256 = "ac0b70542cb73d62f76619daaa435ec433e766af5922947113239e6d2ba9dcc2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/da/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/da/firefox-112.0.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "87f670d5a7774d7af54bc20a5c788f47d63f6a1d2dae825889629d8c75057ce2";
+      sha256 = "71167831d1cd3836ef54f8fc0e42ffee0a22116c1f9b512a5a9f4ef6eb94dd6f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/de/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/de/firefox-112.0.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "36cf31e4b1472f61c80c70a2dde87f1fb56a64cee39484d22b12e76618b73485";
+      sha256 = "c01cf989f29d637504de219af4905769318b93aee07ad2b02ec56b678a733ab6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/dsb/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/dsb/firefox-112.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "d068e2632550c03d92e7b3b6e3fee961e8d1c1d2bb19408b696ac483317ddb24";
+      sha256 = "6c442c04e8899cc11055839bfe946a4cf5710fa07daefb858f67e63a749006cf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/el/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/el/firefox-112.0.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "44115aad6db9d6d105d9418cf5c22cb71183b6b14f69d4e90642b3bf3fb2be57";
+      sha256 = "c8d02a7659d65f47fe95a3528246631ac502c972d9cae5efac34d41175300902";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/en-CA/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/en-CA/firefox-112.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "ae4e225641700ae32dc7b9a395352352a8cfb2ffc81636f2820684095709d1ca";
+      sha256 = "69e5c206ff03eef0a2da0b8dafebbb5b7fc75ed83c56915974587ae2bf13c314";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/en-GB/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/en-GB/firefox-112.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "0f84ca1a632467ce5eb3f7781b24ab6f361d5641b19d1c36aa03a6df2494230e";
+      sha256 = "8b0111486226ba15b1a145914647ae05c0c3c25280c2d15de2c10e5928eb0926";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/en-US/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/en-US/firefox-112.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "31d2c3fe549cddaab7576cfde6467ed5a6534b1988adfb921965b60714970349";
+      sha256 = "6ae1a778523203660d1c300dfca88c14e2ea012e417a31238f6b312cfc3902f1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/eo/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/eo/firefox-112.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "998019dedac2a5f3e15ec6fcfea26f9183effebcf3d9441436c45e87892e7957";
+      sha256 = "b8882e0c5d01432ab35b18e2dd6de92432964366671887d6171020018a87af2e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/es-AR/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/es-AR/firefox-112.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "9bce94e6a9abd75bb74405c5c88d786621703c99a1482f2071cc3ea32e2af07b";
+      sha256 = "fad8033a87c95d50d7959ef7d74186b832a93ae0be590f5d2122651c7f8a8421";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/es-CL/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/es-CL/firefox-112.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "9bdf3fe6bdf49cbdd2f2f6345485609b24160f938a7939a33c9029cbddb9e83c";
+      sha256 = "53a70c208fe9599f709bb706f1cfc4dba73c1165ae0308cff42f0bab89f27d68";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/es-ES/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/es-ES/firefox-112.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "1692def0e39a94bea876efbaee57651d8a3820d0e47581520ed28e2c94412ddf";
+      sha256 = "a36a7cfd3214b40566e76086dd0554c264bbe58044e170f3a5529a57bf45a96b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/es-MX/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/es-MX/firefox-112.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "948f0d2e110e6b6980c88c59e0bd3b84df920a490b25ef9d683619390fb12bd3";
+      sha256 = "408aa0cdf4199ee4bcedf5167739582bffd4779a55eef529ddb1e55dc5312b08";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/et/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/et/firefox-112.0.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "c20d2fe028e2ad2a5b6d2e58bd2f21de02dd75f143b25faae9293225a2c2e411";
+      sha256 = "17c4dbb7f5833a3ad954891d2f73eadcd464812500e75a11be93142920b1ff8e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/eu/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/eu/firefox-112.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "a24feef2fb182796593d97cdfeffc4e4eda5f008f8bc11c679861424eacf9141";
+      sha256 = "0db77714cef6bb365f7757d4d9d2c3f9cb8f422a0b1b1f1742e9bb0e69f9ad03";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/fa/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/fa/firefox-112.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "499be0f1463f830c6416939e096e94ebcb4a1d74726558ef9f0547b2ae233247";
+      sha256 = "16ef1cff8506f6c2b51fd511416e87095929824f86f9efa48b4e4908f7fff39a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ff/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ff/firefox-112.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "5ba8e592f4399dd31d95b06823a342cd6662d0ddd7e3794989ae5c5ac2e52aff";
+      sha256 = "0d62047ad33735aa46f745af59baf77ed7fe5f52acad40f08b26a9a477dee9d6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/fi/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/fi/firefox-112.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "480bafb6c43ef6da5b54543a5f96761e83706a86115247e683393330557cacfb";
+      sha256 = "e0f3cac06f7a949ab17e60599fcadce7c3953df5f079fb88ef7bf2288c57bd3b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/fr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/fr/firefox-112.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "b91bb26a3d6293e88ddc0b74882ab2185c7538df893d952eb64d595b0ccdeb1f";
+      sha256 = "c764c8a45e7ba5c2d2843a9abc875cc69e6854d51ff1971574581a96eba46f00";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/fur/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/fur/firefox-112.0.1.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "ab91f915296d8208363f6c882c7e29954e9e5506de30ae62b37eceff1d3d7c7b";
+      sha256 = "25bdd7f2ef2082f78fa5791c96991bb5c0a8b8d2e9dea084d8657a1296c47bd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/fy-NL/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/fy-NL/firefox-112.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "981ea5abc2c5ff94029b3c01674892f397f8504c1f180a56e3e8620ac370b99f";
+      sha256 = "4bea0e611c5574c481ffc1f6c31ab085225536856f7de8100a75d31651530b89";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ga-IE/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ga-IE/firefox-112.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "5eadd57836438871d6ef96a57e02e60fe6cfddd47e2445703b1d8db80a1d2fc7";
+      sha256 = "90e6f28e3aed2288731b3b9e7066b4603846b2ef848a23cfa6d821478879b146";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/gd/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/gd/firefox-112.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "41666cb94981dc30cfa0113c42743b3812add4df3686a39a64f9a0f2baacbee0";
+      sha256 = "3b3fb7d17b4091eca185833f8f486b17b8fe3b9c3ecad316dccb0779aadb4490";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/gl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/gl/firefox-112.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "820b660761a9a265618be1061544243d24b82cfcd63a5e1fc8d8525ded22c1d5";
+      sha256 = "dde97c135fba0ce84e1e517a77821a7c9cde34ac02230ab23879982c2bc4de77";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/gn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/gn/firefox-112.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "9ac4fb8d505a53226f36a9dc002ba42246a5c509d7652a2fec05584a34d6d47c";
+      sha256 = "be096c4bd208c339c1882aa22d5ca94139cc6605691a114ff8f2de397946be2f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/gu-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/gu-IN/firefox-112.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "ddfe903790c3adf8f809e06a4e2790aa0ae876cfc291c4fdb22984376a8df3c4";
+      sha256 = "62c3d524526543f0ea6ef1b5013b3dd2316590eb8f9b2a68184c68e24cd20e43";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/he/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/he/firefox-112.0.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "3e61787c63867631ed76be4c6a9cd9b9853348c912b9c23af06692bdce29315b";
+      sha256 = "5f626f9004889bafbb11a6bce604481f0e8b1e445b372d8159d210798c67cc20";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/hi-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/hi-IN/firefox-112.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "4b179b9e9286daffaf2aef9bfccb896475fa2576c92a289f1e4eb0edcb055688";
+      sha256 = "465bcef608d516b88a5c6a6e0c833f77e871250ccd937f2ff200aa88152a8acf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/hr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/hr/firefox-112.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "275cf0e84b2589e70e753d4c98e2c3925b14b603ed224da201878fc8442cc7a7";
+      sha256 = "5dec945d595e193c1971a179224d3f68b3df23b5c0a587375a77afce4d9e0055";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/hsb/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/hsb/firefox-112.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "c56f94b46d96923eb9c4e75339af0b42a15f3c57e8e39118485bc79636ebfa32";
+      sha256 = "a6db8e61d45a20bbb6797757eccc1150ac8f7d3a24561ff86f7a68b57183a051";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/hu/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/hu/firefox-112.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "1a5b9a4307deff20db53df233864a503befc25ccedb204f7d88ca6bd867e00a8";
+      sha256 = "5d1e84ffe73b3d91d1d2527a8dd08fdbd7f0df50cdbeeefcf9139b0ac359ebde";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/hy-AM/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/hy-AM/firefox-112.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "076f4159bf40e38ad730622decef57eff48fbe8e5988f78a5e2fb556a9f6a2e9";
+      sha256 = "07988bd5220f474ca1b6ca06a7a30f057b3ac93e07dccb2d969d938c74d92388";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ia/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ia/firefox-112.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "7bcf54767dd38d42d93d0b96ec5135213a29b5d78352d262d9335cd1576fd704";
+      sha256 = "dd4193ab35b05a767575f332398c1952020dbe698f583e08eeb3012e35ec386e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/id/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/id/firefox-112.0.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "dde4e712171c26b64e2b14d725ba93336b9e766bcc7f53fb2093d7fb0a8b057b";
+      sha256 = "1b9cb6b5889b32cf5d906a4d85521b8fdc98f74d1ed13ac77a8252bfe7ff84d9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/is/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/is/firefox-112.0.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "680e69de93ff6c96d9f3debe05392d98bb926e6072e04375e2d61e7387c18ee1";
+      sha256 = "a4b0d7918a259ba34df259366d1db65e7ae1c47feea4e9fb6047c0051eccf52f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/it/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/it/firefox-112.0.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "3f35ab7843b58d218c6f4e92552549b6b095d71dc1d7d35bdb28f1ef7458d442";
+      sha256 = "e9a5fb694a2b26ee05059340b4d6698261d1b9440e2a838ffa8eed3fab7a967c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ja/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ja/firefox-112.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "3afd18750cf2555fb73d57a753222572fec08e49e7325b16427ecaa1249b51ab";
+      sha256 = "9ed9888d19d21024306163a155df7c49188212e308e1aa4981273fb5f06e2a88";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ka/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ka/firefox-112.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "8bd98c293361382940ad26ed0d654bc70390f66eacda19a7aa3d8bba717bb69a";
+      sha256 = "7b573603e74a833fbdcad554b27d006f01a0d6019e94338e6fead0c0be1c56b2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/kab/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/kab/firefox-112.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "47dd2bab2c7b5e8046fa0499e48717c3cbcc6a633fab2a74d0a37c58cee80cc4";
+      sha256 = "a98b7b01aa07c27075d44d593870fa52dc124103b52e77f30cfaec12f755c194";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/kk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/kk/firefox-112.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "50068256add6746481c5102dfd35ce87ee2cfbdb23432cf8d3306ed5e2ce6095";
+      sha256 = "74a496d781fea2e845876871bd731d98fa6f30c4b083e19eadc2762c8cd3644f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/km/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/km/firefox-112.0.1.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "85045900caa1a361bd79af5058765a3ae7e9a300b1f90975f6f3bc1c07481471";
+      sha256 = "a0b5a577323ae6f20d0bbfb0022c502e9c3228ea0e252cce19bc88df64cb22fb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/kn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/kn/firefox-112.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "796ffb0a8130931555e23a21977e8e4f9ab8ea6a9fee54ff4410b48a1e56d553";
+      sha256 = "05c03016b5782ff7b07610cc3e438a9657b226d9150f5335a3fd34906348dc8f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ko/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ko/firefox-112.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "d937b25cc45b3189fce933ef0ba627fd79a79b3a90464eddb0dbb8a366f288c6";
+      sha256 = "9da58cde61b0f0e2208dc01b4de216732786460e8d6fa82533b682bb4d678614";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/lij/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/lij/firefox-112.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "58aab71db6df9d5d277b46d31f8c0197c9d01908adddcd1adf6954118165aa11";
+      sha256 = "85202a3383a179b471d5020469af49fb52e154e4f71cd00833fe7137240c8149";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/lt/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/lt/firefox-112.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "d02bbab7d236ff9b7ada25949337895cfa4c2224470b9ad0f96b25fc34fac870";
+      sha256 = "fbcf75e4b55d6eb423f3d94e363e68d0ca1e33f3e199c4ea4d26f0cfd0b3e4f5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/lv/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/lv/firefox-112.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "3621f49e44c2cc7dc99303cb454ef330f91a5b19b19c12ba0a1781b908a386e4";
+      sha256 = "d41068cd02315dec5daac3c6dfe37ef7eb9c0f2ebafb9d9f223cc287b8d22115";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/mk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/mk/firefox-112.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "5be36bd63a6c05b445e27c10aeee9dc16e30b08481af4710aab3ceb9327d226f";
+      sha256 = "ec654f8c5d676506b134c5ba4069c7fe1bea15db644808b191d6474f45c75783";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/mr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/mr/firefox-112.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "a05c77825c7adf0413649f8f580353d086c63b4daa3da0ad408577061819e9a3";
+      sha256 = "b4f0d9ff4b887b7d2fb657b107547caf834804e695872a422570211d4eeff089";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ms/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ms/firefox-112.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "05d77b0eeaccef202b1a712bdbc3a4297658646b55e680ec1360980960e5a2ae";
+      sha256 = "3bcae3c3c59484e7196bf8b7122da9a75f1f5657f68cc8125cd3e37c77f85ebf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/my/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/my/firefox-112.0.1.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "f7703567dbe5ebc9cbb12c45361400009e9ea360ccb03585139834b8958b1e85";
+      sha256 = "dc07314c65084877c8c89035b1f821eea79993dcc5b55ecb304754ba6ea6808b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/nb-NO/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/nb-NO/firefox-112.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "183e9b9ec131621e457f62ede092506189c83f12a2e9a95b6f226478e2b7b445";
+      sha256 = "df4b24e54cd19b30a2d0de40e6efac30ff7a7a4a5542c9f6dd4c63b1f9359af5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ne-NP/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ne-NP/firefox-112.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "cc71c856d696f0314ecd7b1d0727c169e92be7989a7f6c520abec02623ed97bf";
+      sha256 = "ff641ab36ed7c353609c346a66a9a7e5e5ff4f18a789a00d3c22c23bacc2a8a8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/nl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/nl/firefox-112.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "f69b8000257b28471a93946ba474dbf8669955c175e5411d848e0aabc2aca3bd";
+      sha256 = "b3161e91e62415101daef2620d747e67cafc649518007da34e16da0a46a881ef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/nn-NO/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/nn-NO/firefox-112.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "7088ab439789484fca1f97e7500f9096cdef308d3d2b5c003813ef4a0a8873d2";
+      sha256 = "3b298aa6a1957e160d162f36eaf8af2e5f0c36af80dd7d047f50774b9f7d1d09";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/oc/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/oc/firefox-112.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "7093dea0249eae06d00fd45e185a404d166d8822850b98d68628152be8ca3d37";
+      sha256 = "ce50933b0f8e672f1552973791312ef337b71e374c4327ea7bcee7f30da43baf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/pa-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/pa-IN/firefox-112.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "d2f742748239eb6076024b3c02e557961590a453b17697099ce9c2d8ca3cdf19";
+      sha256 = "8b01acea823d687303fa21f6502a2e6b4ab1a6f3ad3a6e4b3a7e2a0ea0ee55c1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/pl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/pl/firefox-112.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "3a543d4a021bf5d7ae434ab97be6c4966b6b101d57731dcd685d05657d4583bb";
+      sha256 = "9d2018e146acac6440bc12ea8c6c410ea7c11e7e18cda5e8f72f33813d5dbd87";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/pt-BR/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/pt-BR/firefox-112.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "ab6e127faf64aa4cf54a00ae5462ea05082a8ebd474cd7c193045c3023cf2b7e";
+      sha256 = "0c4b8b4871c4a2a8374f6cdb5c3c8f8986285d4e0a105797e025608298765253";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/pt-PT/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/pt-PT/firefox-112.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "9f42addf0e2c23daf53a46637aa3fd4fe98269889fb83debe762b50707d29dfd";
+      sha256 = "6e227a07bf2d909763a22f8bf5c2e2b74b39651881685d00bc64bd4fea7d939f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/rm/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/rm/firefox-112.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "b473c7d80372257d2dbd193ee4582a24f98f0c03cab53c5272bf27c94919cb63";
+      sha256 = "28878ce52ccf14a6745d5e2b57155d20ac966a345822d1d95006fdeaae12a2a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ro/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ro/firefox-112.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "c9c64e814b2b12f16b8d3033fbd3c146faaa2a3c4b5777161f64252d5d63e998";
+      sha256 = "dd0b021cd9cd6f903d9b253309658da187485f57db7b1ae6e466c186ee49d8b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ru/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ru/firefox-112.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "f8cf8f416b9a82a1b03d9989e512ede25cfb3aa1b58ddffcda0d17b3ae173ff0";
+      sha256 = "6b0564a7139628b15df935f4a1add5263ca67e686b0558ec70f305258bdc4054";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sc/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sc/firefox-112.0.1.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "6c1a40a2bb9db2b0d6afe63a3c76a774ef888f60f0a23814c2db5d08c77d43d8";
+      sha256 = "db9e37d5202a44542ea7fb62a946c858eac6716625c63d190a34d0fda7a7b955";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sco/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sco/firefox-112.0.1.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "0529f55e7b0b6ccc2a3ec92cd0dbdac0210e4c45bbd00d350d08e2d12ece818a";
+      sha256 = "f35499b1b27fa69934a2c9fbc030a15884966c6f7b38e3d07abdfe7d8af8ba28";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/si/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/si/firefox-112.0.1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "891a18f8f7049997a62e997a17b8254a454335c65c5edcac45f441e931fd8049";
+      sha256 = "cd90b1bcb2e0c59420f33728b63530f282bebe61cea80e5817dc8eb8abe77d52";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sk/firefox-112.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "5eca1dfd6ed1b75957d6b4d1a7c0aaea2a140b85e10043e72260dea5938e928d";
+      sha256 = "3d34d6502191d06f207c57b8cd15cd33b6cb93533bb962498c240be8b6d8a989";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sl/firefox-112.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "26f9946afc6b6b8c7b42f359049bb0b9586d961f9ff45a1490bf6e3a13330fc3";
+      sha256 = "32a5359344d8580d551d38a03d691eae56c0f868cd1e5810bcf116043cd19f97";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/son/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/son/firefox-112.0.1.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "df183627ea5817d7e2741bee238a24674a1cad312d72a412fbb7660c3574f173";
+      sha256 = "7ac2c8a8218687638bc3ba9f14b72015020d25cc6a28e192705bd5dfdca83b60";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sq/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sq/firefox-112.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "7dca7529a949bef4d7ea32bef0b4dec8be74ec70b28e3467f3e55ce7e559fbe1";
+      sha256 = "6cefb5b63772879cc83a8113afa682499222f0c58b736bca9049699f76ba4403";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sr/firefox-112.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "38fcf34bc58bb6cfabebcfd5968c6b6183b7188f4f93ce88b195501a43842dfd";
+      sha256 = "73a3ef123e3c65f251557cdcad39197684ef258bc9d79973568d8e50641bd6b4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/sv-SE/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/sv-SE/firefox-112.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "5ca84fc079c62a62714e22eac1b9b93e9fae9948694995313d98961147aa390e";
+      sha256 = "6182cdf106563fd8016765a08169dae772641b7badf581b4f1cd71d22d66a739";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/szl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/szl/firefox-112.0.1.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "aba9805904c45d03ea4ab091c5c15bba4e4ee7392b91ce23a4adc57581c1dd22";
+      sha256 = "808d255d36dc65c0126a62e6acc54231bd4bcc6e171a2ac017f1746607b9c981";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ta/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ta/firefox-112.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "fbb368a2b49211242273c93f3930824adf41fa06c69f9b84b3dea4f44a80e2f2";
+      sha256 = "32389f9702b9f2e1dc87c40d6ab64da59c42ae7d0471c56d8f66c8187ddc2fc4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/te/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/te/firefox-112.0.1.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "c3e524c50b92f4df65c733eb57957893b840dbe959ccc94fb70af31eb93cfc01";
+      sha256 = "3a0ebea6051d8e495c8bdce885b6880198bae4f72c5c4991611d9f9b58054921";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/th/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/th/firefox-112.0.1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "eb077d3503427f54497bf6b23cb8a6f20106bbb3f0a42426d3d68ee8b4570c68";
+      sha256 = "c3987449dc9f22b149c193aab7f618129e6f3f82df87753f21b93a579f4a8c46";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/tl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/tl/firefox-112.0.1.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "ad7b565d757eea9f9332fe58846bdfcb1811a88ce378482f1fee33182cf819b0";
+      sha256 = "f69a1d00396fca338b1ef37fc98566c1f977fd41103950a05bec22f88eca9708";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/tr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/tr/firefox-112.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "1b44f97c0dc636ad87c24b5f4881dfc058b1cac9ab5702b8500080509d078656";
+      sha256 = "ccdee7f762fae29a3a6f52a50aa3104965fac7c8ea6d0c0be7029dec33d59f48";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/trs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/trs/firefox-112.0.1.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "185e15f0863c6686580e55114513ff77420353d6280b8bab925d3c7cac969723";
+      sha256 = "9ddbd803a3188c69c90b0a62b295cbbef3357f3cd3074080bf6f4d6eb87b94d3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/uk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/uk/firefox-112.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "4b60d02bd16d187445c8c33f1ad89fedf60f8d5d0b8c00fa9fc9da61cc3245a3";
+      sha256 = "5409d308337224d5c76a7f20d99d6bae87b0535aa9ba3c56abaac677543dd04e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/ur/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/ur/firefox-112.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "9d5a717414b66bcfd11e2c1f75ff5056ef1189a371a2c13f568a61adcf4fd9d4";
+      sha256 = "a2aa8fbaef5f1814128a3d39a4780bbb8aa20ab7970f10ecd51165e21e0fbb4d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/uz/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/uz/firefox-112.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "e7981e8eb720aa9fc241e808d521f0ad6c0222c219e8a6356fdf4331ca628721";
+      sha256 = "55230fd3cde7e5dab7309b7dcfd7688feb332ec3c8370001ba925076c3200bbf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/vi/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/vi/firefox-112.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "7aef5cf761451e7bbd6569e28af2981b65709d3265bb96ed934d43915a3fcb17";
+      sha256 = "f7a8ecf5eeac44aa6ca156d131ebd05a268ce5e92ff0c88c208c3981a658ef78";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/xh/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/xh/firefox-112.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "d12eab3c301a28871c298f351efa84a1aa2613014029e40d8bb46c073fb7224e";
+      sha256 = "e52862f470202fa07f370a8912023edbf2a5350f1aa7ce5351afa335fc194bc4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/zh-CN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/zh-CN/firefox-112.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "92d3ab06e3a09be0691c84ffd48c4f897197253f66e6a178e5272a3d8caadf65";
+      sha256 = "03e0a67ed68413022cb5452e68f1dde9480ec71cfd6726be604cbc54581ce84c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-x86_64/zh-TW/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-x86_64/zh-TW/firefox-112.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "db6dc1a6ed43970404d643cd4f6d1917e9202070719695aa9b4268756278c22c";
+      sha256 = "f4e54e3ef22307cb52c26059cd7d862ce7c45c24e6c7cc365f3b0e45f84afeea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ach/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ach/firefox-112.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "7de9c82fe6edbe0876021f730128344d3fc1ef275191093387d662d58599cbd6";
+      sha256 = "68d790bffa6415c57274d39e1ca04ccafd55c78720b659beaa696746c8a196a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/af/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/af/firefox-112.0.1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "c5632e4c7f4d313bfe63720855bb5ea02aa3559d96199aacdacd11de34a5d55b";
+      sha256 = "db827c1ece4fa12b217fb7c41af6064cd286c1f73c3deda8f370cc24294829f7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/an/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/an/firefox-112.0.1.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "34b0826655c65ac70be63308d2f6339046a859a5fe4d7e64f7969e54bd689f5f";
+      sha256 = "8e43a3008913bbbb33578ffe6725e5cfcc191484d66e9b4ccb80fb4bd1e1822c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ar/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ar/firefox-112.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "ab1b031a4783a3ab87199801104df777b5d46fd6034b47b2f4af29ddd031739f";
+      sha256 = "639cda8d39adf8618b316ed30768306c60b5a2f03c8aacc4e8196b9050f7bc5d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ast/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ast/firefox-112.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "e6e0195900e50612d58cc3f8e7cf2f74868509ce6378402484fcfa6b3611eaa8";
+      sha256 = "76e1b0b2d93728304eca8dd25c6d8b589afd054ab1b1b1ac0ddaf4c20982962b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/az/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/az/firefox-112.0.1.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "3aa1eee51d132f20f8ceee9e391e86befad71ce9fbca64e1171af053503492f3";
+      sha256 = "7ce308bcfb41db1149425cb73b3298ea98735c871c46077bec33a9c74d876ac7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/be/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/be/firefox-112.0.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "77a6ea4c1d9657e4566288156479a878cd6c572770aca97aa7a94daf12ba9255";
+      sha256 = "fde37924c46e1a0d1f7dfe17187abf1756e7f02a5ace60b239acfdca11f9a5b4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/bg/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/bg/firefox-112.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "4d282c790d8ed4abbb7ad10de56672e8bef57347760d551b32f28a71b64de5b8";
+      sha256 = "8b99e80e883aa1d24612978e085adb0d0d6fb00bc71817e48cdf95bd407eab3e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/bn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/bn/firefox-112.0.1.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "797b570f75c5cd4cab0fbc5abc4992eb83e1cd109c5ba2588df784827cc29762";
+      sha256 = "82e31e51ecd8d478eef65f437e07d695745bd03d02ee90379364c17506cac7fa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/br/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/br/firefox-112.0.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "3e4ad574d26492e53a84385a558d75b280952abf066be26771f4193e00c6b328";
+      sha256 = "23a8d61abb4001186847a43b13cf497f9872b8aba5119e515ef4fc5862220410";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/bs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/bs/firefox-112.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "a4b862924d1c20aba4ab2fa0774b5c65509cb6f80902faeb0cac86f691f8887d";
+      sha256 = "149c6fcba2165f9c16f2df471aa345c75b7effe9d7d34e011a1c59bd4a24992a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ca-valencia/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ca-valencia/firefox-112.0.1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "9c2a188bc5188b79ca89ea90f4cd300f4a680fec945a1b6e663569f1f6f2e19e";
+      sha256 = "567e3cf76f645820a1b10cae5c1b38967c0348fbf65eda45eeb9fe2fa4d901d8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ca/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ca/firefox-112.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "f6031d641da6e828ea6160aa2ac1a3d9ec31efcbfa69373f33dbcfd1d6282ac0";
+      sha256 = "db7bee1e3fe1be75d7fb92a242d7a436902f5fe86b8aa4c7fa25dfe61f3faac2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/cak/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/cak/firefox-112.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "9a6553004abc3c548559373a2185405a1a6887898fd2236c4556948fc6faae0f";
+      sha256 = "4eb2cd9f324777fcb8be0af9840eea4d01084921c270278605a4d9e90f69ab41";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/cs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/cs/firefox-112.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "322f49bd3775410206107645aa1e049cf2ab58f251baf991aa65f0be8bcd867e";
+      sha256 = "d5acd46ffe1c44b8e150cc392c06de3b9886dc996942c82593a326692897c8b0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/cy/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/cy/firefox-112.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "ab47eaab21c51e37af812e2453f4b1685c98489a15b3bb3ed0582c8284ee4bfc";
+      sha256 = "d086fddb56c18a8189ca6c66c353e76d2e99853c88847675b2b69362741c41a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/da/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/da/firefox-112.0.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "188aeb36e3443037cb5bdb84f37db67f238c0a238b71a1ae7cf8ad9fbb49fcc4";
+      sha256 = "b8c6e563c98a1a7e0c583bc3463d501dfa7d5b3f9e5bfdf026fad1f20e94b4b4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/de/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/de/firefox-112.0.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "5a13dbeca2b4cd0161f5a92df210a6642e7bb6167882f42db8627ceb31d30ec8";
+      sha256 = "8be83652fd8872ece97120f21abc66ef17332900696aea65350d9c36f51aef20";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/dsb/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/dsb/firefox-112.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "e1e212072872a75e17c1c082a1efdecf8fc2288d88aa44a6a349f35811b27ed8";
+      sha256 = "0b7c5bf0808b4cdb24767aca38983db2769a9dc17182b05f05767f5bdb1510a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/el/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/el/firefox-112.0.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "12b61693075bf6037c3333149b77a93a09572e133f43a66b7ffbfaa6984808e3";
+      sha256 = "564fc0fc6cf469254a55756142a7bd221f7e8f5a2a65a7af7884442d405cdcc3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/en-CA/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/en-CA/firefox-112.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "3da37342412a77622c221ca48ea80877d8597b5403b69d11c898ce12aa13fea4";
+      sha256 = "8fe5513b1cd1e4735ead8f7232bfa95e709a7f09e15c998ffcc57e866f0e0177";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/en-GB/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/en-GB/firefox-112.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "80ea9f86cf37d64dfd4db5206284eae9807058596e4befa057d19985709cdb89";
+      sha256 = "6d7614935cd1cb93e8dbb843e5725d263655d0042fbcde4656fb90899fc4923e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/en-US/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/en-US/firefox-112.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "69a2a692718bdcd031cfe31535b2c993567d8bf6bc8d6814c43a4304e8fa470d";
+      sha256 = "7c30ab48a4cc32e6358d6dd29e34274453b1db998cb52cfc5e2108ebf1f9ba41";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/eo/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/eo/firefox-112.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "9bc2f1ae29f742fdaafedbc6f4626456dabd276a1bfcc8569affeca3252a3311";
+      sha256 = "d0c603545d9e36cc43a0dcf5013d29c2557f7b31fc4c551fe482d5e53b76e7f9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/es-AR/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/es-AR/firefox-112.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "a964125f1c65bd031bd3bd76f79993ea4c44273adbeb95ed36de6ffaf9ad7900";
+      sha256 = "2b3e80b83fe78178074a784c6800ceea0ef449ec0fca0919855c0cfb0d8f3eb8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/es-CL/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/es-CL/firefox-112.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "19ca07a13d4a2218fed1addb3d9297978b00e7e469a37294f8c3cf0aaf4f8998";
+      sha256 = "fa46c867f8daef7b4aebf3c9968f12b26aa5ead295baa5da991730bfd022907d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/es-ES/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/es-ES/firefox-112.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "81ba2970c01d0c1d1465b1f601c2e753b0448d307df09ae49e2ca2257b3ff593";
+      sha256 = "a6c24fef469e0b7e4b8bab3ad7127c569e0c2e0c38c5cbf344dc70ada34016b8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/es-MX/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/es-MX/firefox-112.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "02605c8bdc81077a491791ffc289c6071943e5e8a7983432a96937224d91a324";
+      sha256 = "372403d23deac3dfb397bb3c5da5b10e58c60656b9c5d9126d06435c07b86282";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/et/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/et/firefox-112.0.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "6e83c5ad5eadd62122ebb3d39f6c03239e333a42616f105204ba83482c68b4fc";
+      sha256 = "586efc4af3e4c10e13394967d880e4132e9739da259a505df84488ed069bdb55";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/eu/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/eu/firefox-112.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "64fa6814864a6189bfbccedc191cb9810519e196a2ddf34725a35446595f5eaf";
+      sha256 = "ea16876186a0666cbf4783a114ae32c60d5279e9c0aee9db5ab7404a8ed94ff8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/fa/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/fa/firefox-112.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "23c05ec2684597172470581c9369bec389709dd93b780bc888cc8ed3421e8b9f";
+      sha256 = "44189a301db4defe04160de90fd4722003b062460c44ccb54466044641eadfa6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ff/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ff/firefox-112.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "ec3e121e10423b0141e94f9bc9fe16cc46c6e284c140acf24add74a3ef6fcb10";
+      sha256 = "6d61ac3ec8652416cbf32449658da95eecd8ea84fbb0fe5ddac4fc8c9ced964e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/fi/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/fi/firefox-112.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "728d0c84b6d4c9deb81a8d08e3609bbecc8201649a3dac0af4dd13bbc0ac0cfd";
+      sha256 = "09e3ae90365f38d5fe7859c24c6bee640fd0aee3f2283d9cf1cc5840ac9fa70a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/fr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/fr/firefox-112.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "742f0ad5974032275c54fae54691061153075045f07ad71d47b93adea1d7b61a";
+      sha256 = "a037725177bd002cb06ff82548efe8e48b99095362c1ed443101dfe00f0c2e87";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/fur/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/fur/firefox-112.0.1.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "225f63643a67fac0eb2db946e819afb730ed32a364a61546d80d192cfd89e530";
+      sha256 = "fbfb3357784a0609260e42ef8011f354e3e9312607d116d324bbffa410607f01";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/fy-NL/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/fy-NL/firefox-112.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "24ef6ed559bfb5811a482883bd33cbc3a9412141a3f487121a1aa1f5e5893b2a";
+      sha256 = "1a7348fd973379cb6b639f4651d704267cba9eea65484672858a7e6f55739cde";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ga-IE/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ga-IE/firefox-112.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "a8bef67521297b9b6a089cd7c1b5c2c19d5d2a1845bb73b97beb70b1eb046f80";
+      sha256 = "01b7652d854d25745378e612f71e9aacef07d18318f14658a17d491a25724a62";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/gd/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/gd/firefox-112.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "4edfd3f269213dddabc6682893a27c24fc69614160cd19e3da3ca24906a571a8";
+      sha256 = "33bb06317e98eb560bff3599f57aa76b3d686549b32237200c12374fbb95cb7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/gl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/gl/firefox-112.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "4cfb046bbd7e70029ad697abcb40536f34e8d6c22228ea4cc79f4dd36a48d5c2";
+      sha256 = "8ea125896e735709ac7ae1f5ef29740dd7db3eb08de10ee0b5a25e005e1bb1e1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/gn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/gn/firefox-112.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "001c3206f38b9c7053e3ae6b068fb245bcde6ace31be322f7bfd5c2c9f4c5f67";
+      sha256 = "f3e546720ac549e6b4c94bceba5c8fa66ef0af771268052fd114141397c5f518";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/gu-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/gu-IN/firefox-112.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "1af0d38f6be210f9f5aa62752982ee95e115d3eade6e10bfbd9b45e699d3c876";
+      sha256 = "e5a671e30fefd9a669b4f6d86b958887320dec0f450a302069ce944327d2b0b9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/he/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/he/firefox-112.0.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "32d34998b4cb5f30d7f21695bb7c50511c9810f652b387b87566315bd51a6688";
+      sha256 = "ecbea24231080df03d6a884589d1a48f5cdbc61eb9f53111507e438a1442972e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/hi-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/hi-IN/firefox-112.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "8acdf419e6a3dd191f7e8d10c1d33eac02ef8ec93ea6486278b1ed3182c93536";
+      sha256 = "9ad861c0dfcc7cdf08129948b04a1ff22dbc84c67b0b085621fa11f9b733691a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/hr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/hr/firefox-112.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "ebac36e1550d70237306d3f69db9a029333c2e7cdcd0321fc4f0da8dee3c8e9f";
+      sha256 = "66a15a6321789612a15e1f897ba69146a0f48640a452b92e98ee50bc2fc5bee1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/hsb/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/hsb/firefox-112.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "6b5eea0bccf7a82484e7a0dab090716ebdb82a79151abc9d77aec1d5032356d3";
+      sha256 = "5e0a10c8abc026543ec9aee297b0246af5726fbc19c8c3defe3816cff96a5306";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/hu/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/hu/firefox-112.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "3abded26ade27554c48c6d0903d6cc5c5f1576766979542c80746c955cdbc9f4";
+      sha256 = "35dfc59a336d1d4c977f393cda08df4aac2ea4b570cb347234b04e36e60ccd7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/hy-AM/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/hy-AM/firefox-112.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "50188c1333f393e7bb77d50d2adef4b52950bfa86fca993594f8db01a02f4a48";
+      sha256 = "a44666a2855563a2437a3a5b317858b5d97608c1d84a366e6fc9ca7d500fd908";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ia/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ia/firefox-112.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "cd2d66e303293cc7e81d2f571a5ad76f85bacaa59191ec31dff62ea31d4b0ccb";
+      sha256 = "578824cc54bf08eebb5391f7195e0e668684103d57913c73f34323e48fc9b997";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/id/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/id/firefox-112.0.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "f2ebdc1585a49b2b489c8ac95240d0f8aa51473d0b78fdaeac234b6020696083";
+      sha256 = "ec9d5f75f85a97e88fa16eca1e5d365b20453594f23bc7ce6b0accd64a06cd2a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/is/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/is/firefox-112.0.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "095d254ff1e7fa05ac0723adf48c532e38fc5f7bb6cec81dc10139e0e070049f";
+      sha256 = "c11658c067c6ec8ed7f2cf34c74587b6500a3f96d0d48647105d6218b39dbffa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/it/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/it/firefox-112.0.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "0b731f69e7a08e6d022f0225b9992812e4d63216195f6519ce7b99ab9d3c368a";
+      sha256 = "0cd5cb70fc40956caed930ca51c01c539159a35a7a5ad5cbf9257a3e12bb9845";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ja/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ja/firefox-112.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "f3c84a776baef1a7b5ba7e232ebec5df71d06bf9317bcdd2cb6ab6ff72ef1691";
+      sha256 = "56a73fddb5a0d2d2160e68bcfab172e81f572a2db3981b43b330292057b0e671";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ka/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ka/firefox-112.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "cddc9cb826352cc94f42e600068f586c1e74c53d77df6c4cebe4f3008e3a9e90";
+      sha256 = "57bc43faf0e2610fb0e58c5e7e323e7909a9834dcac1bb6b1b3803c0ffe88ab4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/kab/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/kab/firefox-112.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "dbc1b443083dda4bcf9b6fe76a6d4a032c4628d02555f0eda291b1ad99d597c3";
+      sha256 = "48eca6ab0e3dc3d187f2f296b48f5ddf85481f3c0a14614778fee21d0356ab5c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/kk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/kk/firefox-112.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "5e8b8d68697fb75cbfd48e6b78a76bbbd0a972cffc3ae43f8b192696c77c72ed";
+      sha256 = "0e8693939975ef607d1d955b994e047e43018be58654f25436233c8686241baf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/km/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/km/firefox-112.0.1.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "737db59818e7ce5fef6cdb9cf2d5bae9ed5205aef2f4924839fd2428fa70d965";
+      sha256 = "453b984e1709b99947d1e4ef4509c89f73de9041d231c62755674f976599b1ac";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/kn/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/kn/firefox-112.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "80a4833c598ae80f7a3dfc8b357041eac8c9061dc2c6dba8c88bea71f9dbd937";
+      sha256 = "a25556c0340257300b205c4ffc4e0f6f59d8dd151a415452e501f041ba868278";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ko/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ko/firefox-112.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "2000ff98bbaeab440941b366b2e311d3d73d2d0cdf6aca9873a9fc5016ad7b7b";
+      sha256 = "3fd45baeafaee0f24639388337c659073c19f6892e7ce02a458521fb50fb021f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/lij/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/lij/firefox-112.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "186699b7517b5d8659a76627127533b204642dc417374a3fccef4914fdc13a24";
+      sha256 = "74d12bfbb8b64d95c583a4d18e3ddeb7c47589206d9e01093e536af83b3c2263";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/lt/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/lt/firefox-112.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "98ad4e67f3ff82c39b83bdc671c9ea91327a5aef0bb1a7c6ca9ea3e5c6ff2879";
+      sha256 = "935a06e6c9418796b262bf11c2bf10e02c799866f9a71cfb1b287387a1e7d429";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/lv/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/lv/firefox-112.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "2cbe7f2765dada8f7c1ff1af7b17f6b51be2ec5257822d76f585ac487645e047";
+      sha256 = "37ba1df6e5300cab332f66e1872ebfd03210a9405b2a6a696c04cb5973e8aa3e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/mk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/mk/firefox-112.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "567fcd3722b4664f68952fafe13fb0ab0e04fe858c2b3f6021d2726030a6a483";
+      sha256 = "846f8905382d8ecd621ecb4476364d13a83cc9759f3c6d6fa532f52d868f5081";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/mr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/mr/firefox-112.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "0ab08deea333ea66b5081a4fc418bdecff8179e2e9a73487de32ef45c59771b0";
+      sha256 = "eb182cf3e62502d7978e8321a43dcf7ce83b2f8871494206b89b36063ee87f9e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ms/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ms/firefox-112.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "0f23f6fd9d3bbe137eb8f321b6de1f22b5fe16a4199dc037e870aa276aa14c0c";
+      sha256 = "ca659d6e58ad5bbda6f5029358ee8d8e2434490ceb315ee9c92777892976eb35";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/my/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/my/firefox-112.0.1.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "9d08dc125ec7d2984459bcee7496ad931812dcdd18fbef19631c6bd0ea336c68";
+      sha256 = "a3656a0dceaab329a1b66d2559307c95582da97599f0f24afbd1a2f3ac3d8978";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/nb-NO/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/nb-NO/firefox-112.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "1ee31e45e279ba448336d7aa9701b310db153b0ac8ac2fd1d6fc5120488b4e82";
+      sha256 = "79696194984f1789a2e0b1b0ccaddae490077bacaa96184adf4f8d298b75b47b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ne-NP/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ne-NP/firefox-112.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "3b6e001e3982c881106c9f64cfd614f1f8d998ce464bf2205d5826fc88fa49d3";
+      sha256 = "bdcd39bd3d0c0441044f7f1d7ed2dea1d07fc550778e6071ec03d159b30db413";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/nl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/nl/firefox-112.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "ace49029f77f96ca0f94ba9fc6c2fa3cdd53201b75899cfc3cb9579a6cace0b1";
+      sha256 = "b0e14bad355f3a63a37fae0dc74eb3f974c5a923261ac42dea9d30485ebe61c6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/nn-NO/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/nn-NO/firefox-112.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "f3d2305b291234eb655050a384190f4510d0f9dba85aeef019106cc0911061eb";
+      sha256 = "2cd11da894f7f3ee53ceb1138ceda8542b4b143341cbcd624a4f9bc808d520ad";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/oc/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/oc/firefox-112.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "0595e5220ac48389ef027f6ec2f03ff8ba3e888e54d48b35973ef45b0b9f60fd";
+      sha256 = "7435492bd6079d7e76cdb4a41f070b42ee4c080d3e891f05a21942046d33d76d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/pa-IN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/pa-IN/firefox-112.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "92170c855af452f272443c1f58d32013161b15a442ebd7153e8df238a44c1a08";
+      sha256 = "93c90602e511aac82efa2da0fb4c3043bfadcfa27cb87a39108c803639d52b3e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/pl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/pl/firefox-112.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "a04ea9e555b7b07c24768bda598e027a21d2264556d0b04ed86c66d72deab303";
+      sha256 = "a75bfe0ec38e782c939348a34e6acf23598338c3350278f096ab73354c43f3c4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/pt-BR/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/pt-BR/firefox-112.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "bb233d788561988839b7f598e7e518c5e91812e899741fe70b9937458d3cdf93";
+      sha256 = "67b17c53ec8618064d0fefc0b5a61ee8911f714396fc19b0931fcd242c8d117e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/pt-PT/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/pt-PT/firefox-112.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "397a54320e2a0d5e48fed911e42f4257b746a9997a158f55674a5e99c16e776b";
+      sha256 = "e4e412aab7cd1e938be7c5e689bee63499a9b44b5e4efa2fafa58d5bb2c12c2a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/rm/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/rm/firefox-112.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "2d01ae50894853b752001f9157f3c7281dcb14cc09209ec6d7a2113094ba30b3";
+      sha256 = "b86be0830e26e01302f1f99ed9c5acc9a43757d340361dc137267c9b95feeff9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ro/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ro/firefox-112.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "e388080e9eef604cd54aaadd25a8815d52e8fbfaac6479a4198532b9c000be0d";
+      sha256 = "ad830ca7e0c7f0b53031fc85d8884beb6beabedc38dbe570f06324fa4acb0bc6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ru/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ru/firefox-112.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "bec635e4903cecd80828a935381f66638a3be49ab820989976f527fd3484c5f0";
+      sha256 = "9c2778b094dbebe800f8f590d1df5202b1632616d0f78ba94d8db31726ad8b83";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sc/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sc/firefox-112.0.1.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "373801a06d137c0c7d729e995ed899586aabb23c93d3c141079ed3e6fb0c8c78";
+      sha256 = "4799ac43e8a0d44412e8ff2c50982d494d039430eb1175bd98dda95399b8aadf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sco/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sco/firefox-112.0.1.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "98fa91e108fd6ddd6d05d03015250a7a8a6cfdef407cf0e06b4b693a5f783536";
+      sha256 = "135ef70b894fb2ce564c9e8070b65f605b199382b109faa2f2519f9ebbf9c0f9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/si/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/si/firefox-112.0.1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "d48c658c156b90cae5605db1ae65ff0ef413f036b07ed761fcd10b8812ac0f66";
+      sha256 = "52329952a8075a05a248a49d69a5c5ceb41778d6c68b76e5a334b1ebff3d4a1d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sk/firefox-112.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "a4905df616bb512f764179d2a7befad120fcfefaae922e653ef7f1efecca283b";
+      sha256 = "1b3073d92b6eacabf8c26efa58e00c6895332f560f4be93a57fba4666f328751";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sl/firefox-112.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "b23a531371d80f79a3698cca1e4eaba2326da9318fce7df3dafc3bde62a446a3";
+      sha256 = "4ec9e44b3defcd7b79f60a4304123f228bbbfc4ad615548ef5183366d730c335";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/son/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/son/firefox-112.0.1.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "89c998c5ee99267e4d001a0be5a99eea34f75cb4d3e2c6af1db72a74a57291b0";
+      sha256 = "1da86784e9dc41d4d2c6b05d35da1a2f96bd133b87b759719768bf085fa07dc4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sq/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sq/firefox-112.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "c353caca756e36a6e1e9434b9992bafd7fc379dcd0408a2f64d5434d99fbe022";
+      sha256 = "06525d8421cc412c8e5ec2c6cb47d91665b9d0e8d622c09b2fb70b21ad0a724c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sr/firefox-112.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "d8f2caed8388230b2d37d4228ab53bd3b7dde0fd597d7ff16d303e1506f40c1e";
+      sha256 = "358dcc70895bdfd935419b755711dc7001a56866746a0340b534192e58de7948";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/sv-SE/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/sv-SE/firefox-112.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "e82906e6f4d3cf49d644a54d840ad6f1de0c58c9820c07e158193eb659467bb6";
+      sha256 = "91a7e6eaa15b846a6d7f942249b783e51fad059cd13932726ae8a2bfe154b746";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/szl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/szl/firefox-112.0.1.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "84c74dc9358f2ba4db8b37c751b1b694396f66d6c6005dd314506ca16f0868b6";
+      sha256 = "8127eeba4f40a5a1a4c7a85bdb343ac360bcdf2f14721423196f7803c8648bc5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ta/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ta/firefox-112.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "439900ed3e9fb7f3c18fd67ae16e6b42294957bf11c049326e02bced4b88da9d";
+      sha256 = "337ddde6c133d2fd2a4e5850605586ffdf78a4038aa54f291584d522efd06faf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/te/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/te/firefox-112.0.1.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "493b1a2e2644689920b506115e15b3153fc492ffd0a0e2287947335f0e3aea6c";
+      sha256 = "602edab53a94b72761f1fcf805621e2871633540e43212602ba85381ca7a0093";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/th/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/th/firefox-112.0.1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "febec24221a8cb6004931ae115ee881f8a342a999cd3ba90c06090eb7d65595d";
+      sha256 = "541593a4e696e85281942f57a0276da033c47a1ab2782820f8c77c97d10ab74b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/tl/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/tl/firefox-112.0.1.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "dbacf21e7efd9ada61654027738d5bc1b87862afbcfef951332bd3b80f73ef9b";
+      sha256 = "6d5a977aa0e651bb8a3c1868b4639472c203e791d0cba0ce34ac556ea18a0e27";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/tr/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/tr/firefox-112.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "7fc6816c28abe9db2477b3b96729096e770fca7bf044c38fdfbb21590945536d";
+      sha256 = "2c94db9856cf6dfaa810fe6397185959a8d78222d3cc8e8968906cbe864b3ae4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/trs/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/trs/firefox-112.0.1.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "10d9a48645a7c4eabbc9ffc62855fd998e0dba2b2fa566c83a14a5f5395eb0d8";
+      sha256 = "21742ee25642a258df95f7aa2dc92f422546408e8084071b42792d90b0cb6713";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/uk/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/uk/firefox-112.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "e33d93724003d8b55f76e9565192bb2797997aa66f2d35c12dc7086f200c191a";
+      sha256 = "6f93c32705ce3b72db574c36c318fcf69c91423eaf41b70d144b91f6a71b91d1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/ur/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/ur/firefox-112.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "aa0cca88be261d10dea5f8449e211c0d7fe72824eb971f46de154be76d5a2df1";
+      sha256 = "8ccea04fb8a753fcf0b7c4a1a2c941e630438ed74b077714355d816c09e5c537";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/uz/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/uz/firefox-112.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "08877588e0d027deb9cd9db2fe45e1169f74dd074f7c886df5d6502343e14c11";
+      sha256 = "707fb054e342b449c79a86788096d25ca61f965ce31f862d8779135d5eed888e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/vi/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/vi/firefox-112.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "74971ee5d592f65872f71fd2049ce73ce4ed65bbc513b36844e1ae45aa44c807";
+      sha256 = "4019556dd8c934548c0ea646d5c6d3dc557c9bbe4382a30375fd03f564eb034c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/xh/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/xh/firefox-112.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "9b8579e0c3361e7008aa2e4757645fda1254c63450dc2e63a79a20b032923b31";
+      sha256 = "712d9a1f97b649aa3776a7d80fc38b71c204689afff6e0f49f13a4fcda786092";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/zh-CN/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/zh-CN/firefox-112.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "d2f878182fc94d4630343fe367221a202945d8ef5731a3f790b101193ac0d4d3";
+      sha256 = "59a5c6cbeaae82e0debe411685b1f5b44bd59acf965c93af52c21a715600522b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0/linux-i686/zh-TW/firefox-112.0.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/112.0.1/linux-i686/zh-TW/firefox-112.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "8e76787f20c6b2b9cf2796e35dcc9b5ab4f335dd441f34627f1ffc505759c0c6";
+      sha256 = "85fe472a78190083dae4e3f275636ef1b8f5518f6d3fda04fe352c0cb702c490";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index ee07ee23e8740..ce69742a3f6a3 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -221,12 +221,13 @@ buildStdenv.mkDerivation ({
     "profilingPhase"
   ];
 
-  patches = lib.optionals (lib.versionOlder version "102.6.0") [
+  patches = lib.optionals (lib.versionAtLeast version "112.0" && lib.versionOlder version "113.0") [
     (fetchpatch {
-      # https://bugzilla.mozilla.org/show_bug.cgi?id=1773259
-      name = "rust-cbindgen-0.24.2-compat.patch";
-      url = "https://raw.githubusercontent.com/canonical/firefox-snap/5622734942524846fb0eb7108918c8cd8557fde3/patches/fix-ftbfs-newer-cbindgen.patch";
-      hash = "sha256-+wNZhkDB3HSknPRD4N6cQXY7zMT/DzNXx29jQH0Gb1o=";
+      # Crash when desktop scaling does not divide window scale on Wayland
+      # https://bugzilla.mozilla.org/show_bug.cgi?id=1803016
+      name = "mozbz1803016.patch";
+      url = "https://hg.mozilla.org/mozilla-central/raw-rev/1068e0955cfb";
+      hash = "sha256-iPqmofsmgvlFNm+mqVPbdgMKmP68ANuzYu+PzfCpoNA=";
     })
   ]
   ++ lib.optional (lib.versionOlder version "111") ./env_var_for_system_dir-ff86.patch
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index d674e906365c5..82177b4de0a89 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -3,10 +3,10 @@
 rec {
   firefox = buildMozillaMach rec {
     pname = "firefox";
-    version = "112.0";
+    version = "112.0.1";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "6b2bc8c0c93f3109da27168fe7e8f734c6ab4efb4ca56ff2d5e3a52659da71173bba2104037a000623833be8338621fca482f39f836e3910fe2996e6d0a68b39";
+      sha512 = "23a5cd9c1f165275d8ca7465bebce86018441c72292421f4ed56d7ad8ada9402dc8d22a08467d9d0ef3ef8c62338006dfa3bcbddf12cb8a59eafa0bd7d0cda50";
     };
 
     meta = {
@@ -29,11 +29,11 @@ rec {
 
   firefox-beta = buildMozillaMach rec {
     pname = "firefox-beta";
-    version = "113.0b2";
+    version = "113.0b4";
     applicationName = "Mozilla Firefox Beta";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "96b1ce4616c0f7337a22803fbdc86fb791c817a452fbf61eb7470a4c4b6c81a8be32d9db18ace5770a99335fb03bfbcdbf73d86257a9404c1f169d4a907ea4e3";
+      sha512 = "8f6e10bc1a0de54aec1f9ea3f6de67a7bed0ee176e65147a4944baa7f30d63714a37d89fe9437973b73f8504a0d771a4ad57fff2c80857966239273c137acc6f";
     };
 
     meta = {
@@ -56,12 +56,12 @@ rec {
 
   firefox-devedition = buildMozillaMach rec {
     pname = "firefox-devedition";
-    version = "113.0b2";
+    version = "113.0b4";
     applicationName = "Mozilla Firefox Developer Edition";
     branding = "browser/branding/aurora";
     src = fetchurl {
       url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "634271b19a0a5369fb91a286da2c476b6570e501bb7d8b05efe22eea1ecff66a7fbf62ef21ac9dcfd863be2d63a3be117615b5c0b1b1fc8c7d746d720b3d9876";
+      sha512 = "d89ccceebf66b8aadbfd2d4cc7d57322f0484cfc6818b3cabae04b700d9b62145c597eadd645233b920db09ffdc7d5f19fb74b1b8b672ae1dfa63b6f2178ac15";
     };
 
     meta = {
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 1e8240d6800e7..6b08a891ec694 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -5,7 +5,7 @@
 ## various stuff that can be plugged in
 , ffmpeg_5, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify, opensc
 , gnome/*.gnome-shell*/
-, browserpass, gnome-browser-connector, uget-integrator, plasma5Packages, bukubrow, pipewire
+, browserpass, gnome-browser-connector, uget-integrator, plasma5Packages, bukubrow, web-eid-app, pipewire
 , tridactyl-native
 , fx_cast_bridge
 , udev
@@ -65,6 +65,7 @@ let
         [ ]
           ++ lib.optional (cfg.enableBrowserpass or false) (lib.getBin browserpass)
           ++ lib.optional (cfg.enableBukubrow or false) bukubrow
+          ++ lib.optional (cfg.enableEUWebID or false) web-eid-app
           ++ lib.optional (cfg.enableTridactylNative or false) tridactyl-native
           ++ lib.optional (cfg.enableGnomeExtensions or false) gnome-browser-connector
           ++ lib.optional (cfg.enableUgetIntegrator or false) uget-integrator
diff --git a/pkgs/applications/networking/browsers/ladybird/default.nix b/pkgs/applications/networking/browsers/ladybird/default.nix
index c4e16d4326920..1af17ad7aaaa6 100644
--- a/pkgs/applications/networking/browsers/ladybird/default.nix
+++ b/pkgs/applications/networking/browsers/ladybird/default.nix
@@ -29,6 +29,9 @@ stdenv.mkDerivation {
     # https://github.com/SerenityOS/serenity/issues/17062
     substituteInPlace main.cpp \
       --replace "./SQLServer/SQLServer" "$out/bin/SQLServer"
+    # https://github.com/SerenityOS/serenity/issues/10055
+    substituteInPlace ../Meta/Lagom/CMakeLists.txt \
+      --replace "@rpath" "$out/lib"
   '';
 
   nativeBuildInputs = [
@@ -49,13 +52,7 @@ stdenv.mkDerivation {
     "-DENABLE_UNICODE_DATABASE_DOWNLOAD=false"
   ];
 
-  env.NIX_CFLAGS_COMPILE = toString ([
-    "-Wno-error"
-  ] ++ lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0") [
-    # error: use of undeclared identifier 'aligned_alloc'
-    "-include mm_malloc.h"
-    "-Daligned_alloc=_mm_malloc"
-  ]);
+  env.NIX_CFLAGS_COMPILE = "-Wno-error";
 
   # https://github.com/SerenityOS/serenity/issues/10055
   postInstall = lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json
index 6b32c4d80251b..472bbbe271425 100644
--- a/pkgs/applications/networking/browsers/librewolf/src.json
+++ b/pkgs/applications/networking/browsers/librewolf/src.json
@@ -1,11 +1,11 @@
 {
-  "packageVersion": "112.0-1",
+  "packageVersion": "112.0.1-1",
   "source": {
-    "rev": "112.0-1",
-    "sha256": "1qjckchx20bf20z05g8m7hqm68v4hpn20fbs52l19z87irglmmfk"
+    "rev": "112.0.1-1",
+    "sha256": "0bk3idpl11n4gwk8rgfi2pilwx9n56s8dpp7y599h17mlrsw8az4"
   },
   "firefox": {
-    "version": "112.0",
-    "sha512": "6b2bc8c0c93f3109da27168fe7e8f734c6ab4efb4ca56ff2d5e3a52659da71173bba2104037a000623833be8338621fca482f39f836e3910fe2996e6d0a68b39"
+    "version": "112.0.1",
+    "sha512": "23a5cd9c1f165275d8ca7465bebce86018441c72292421f4ed56d7ad8ada9402dc8d22a08467d9d0ef3ef8c62338006dfa3bcbddf12cb8a59eafa0bd7d0cda50"
   }
 }
diff --git a/pkgs/applications/networking/browsers/mullvad-browser/default.nix b/pkgs/applications/networking/browsers/mullvad-browser/default.nix
new file mode 100644
index 0000000000000..627056795ce4d
--- /dev/null
+++ b/pkgs/applications/networking/browsers/mullvad-browser/default.nix
@@ -0,0 +1,235 @@
+{ lib
+, stdenv
+, fetchurl
+, makeDesktopItem
+, copyDesktopItems
+, makeWrapper
+, writeText
+
+# Common run-time dependencies
+, zlib
+
+# libxul run-time dependencies
+, atk
+, cairo
+, dbus
+, dbus-glib
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gtk3
+, libxcb
+, libX11
+, libXext
+, libXrender
+, libXt
+, libXtst
+, mesa
+, pango
+, pciutils
+
+, libnotifySupport ? stdenv.isLinux
+, libnotify
+
+, audioSupport ? mediaSupport
+, pulseaudioSupport ? mediaSupport
+, libpulseaudio
+, apulse
+, alsa-lib
+
+# Media support (implies audio support)
+, mediaSupport ? true
+, ffmpeg
+
+# Extra preferences
+, extraPrefs ? ""
+}:
+
+let
+  libPath = lib.makeLibraryPath (
+    [
+      alsa-lib
+      atk
+      cairo
+      dbus
+      dbus-glib
+      fontconfig
+      freetype
+      gdk-pixbuf
+      glib
+      gtk3
+      libxcb
+      libX11
+      libXext
+      libXrender
+      libXt
+      libXtst
+      mesa # for libgbm
+      pango
+      pciutils
+      stdenv.cc.cc
+      stdenv.cc.libc
+      zlib
+    ] ++ lib.optionals libnotifySupport [ libnotify ]
+      ++ lib.optionals pulseaudioSupport [ libpulseaudio ]
+      ++ lib.optionals mediaSupport [ ffmpeg ]
+  );
+
+  tag = "mullvad-browser-102.9.0esr-12.0-2-build1";
+  version = "12.0.4";
+  lang = "ALL";
+
+  srcs = {
+    x86_64-linux = fetchurl {
+      url = "https://github.com/mullvad/mullvad-browser/releases/download/${tag}/mullvad-browser-linux64-${version}_${lang}.tar.xz";
+      hash = "sha256-q4dTKNQkcqaRwiF25iVOQSvwVLA3tJRlQ4DzC3tuG5A=";
+    };
+  };
+
+  distributionIni = writeText "distribution.ini" (lib.generators.toINI {} {
+    # Some light branding indicating this build uses our distro preferences
+    Global = {
+      id = "nixos";
+      version = "1.0";
+      about = "Mullvad Browser for NixOS";
+    };
+  });
+
+  policiesJson = writeText "policies.json" (builtins.toJSON {
+    policies.DisableAppUpdate = true;
+  });
+in
+stdenv.mkDerivation rec {
+  pname = "mullvad-browser";
+  inherit version;
+
+  src = srcs.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
+
+  nativeBuildInputs = [ copyDesktopItems makeWrapper ];
+
+  preferLocalBuild = true;
+  allowSubstitutes = false;
+
+  desktopItems = [(makeDesktopItem {
+    name = "mullvadbrowser";
+    exec = "mullvad-browser %U";
+    icon = "mullvad-browser";
+    desktopName = "Mullvad Browser";
+    genericName = "Web Browser";
+    comment = meta.description;
+    categories = [ "Network" "WebBrowser" "Security" ];
+  })];
+
+  buildPhase = ''
+    runHook preBuild
+
+    # For convenience ...
+    MB_IN_STORE=$out/share/mullvad-browser
+
+    # Unpack & enter
+    mkdir -p "$MB_IN_STORE"
+    tar xf "$src" -C "$MB_IN_STORE" --strip-components=2
+    pushd "$MB_IN_STORE"
+
+    patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "mullvadbrowser.real"
+
+    # mullvadbrowser is a wrapper that checks for a more recent libstdc++ & appends it to the ld path
+    mv mullvadbrowser.real mullvadbrowser
+
+    # store state at `~/.mullvad` instead of relative to executable
+    touch "$MB_IN_STORE/system-install"
+
+    # Add bundled libraries to libPath.
+    libPath=${libPath}:$MB_IN_STORE
+
+    # apulse uses a non-standard library path.  For now special-case it.
+    ${lib.optionalString (audioSupport && !pulseaudioSupport) ''
+      libPath=${apulse}/lib/apulse:$libPath
+    ''}
+
+    # Prepare for autoconfig.
+    #
+    # See https://developer.mozilla.org/en-US/Firefox/Enterprise_deployment
+    cat >defaults/pref/autoconfig.js <<EOF
+    //
+    pref("general.config.filename", "mozilla.cfg");
+    pref("general.config.obscure_value", 0);
+    EOF
+
+    # Hard-coded Firefox preferences.
+    cat >mozilla.cfg <<EOF
+    // First line must be a comment
+
+    // Reset pref that captures store paths.
+    clearPref("extensions.xpiState");
+
+    // Stop obnoxious first-run redirection.
+    lockPref("noscript.firstRunRedirection", false);
+
+    // Allow sandbox access to sound devices if using ALSA directly
+    ${if (audioSupport && !pulseaudioSupport) then ''
+      pref("security.sandbox.content.write_path_whitelist", "/dev/snd/");
+    '' else ''
+      clearPref("security.sandbox.content.write_path_whitelist");
+    ''}
+
+    ${lib.optionalString (extraPrefs != "") ''
+      ${extraPrefs}
+    ''}
+    EOF
+
+    # FONTCONFIG_FILE is required to make fontconfig read the MB
+    # fonts.conf; upstream uses FONTCONFIG_PATH, but FC_DEBUG=1024
+    # indicates the system fonts.conf being used instead.
+    FONTCONFIG_FILE=$MB_IN_STORE/fontconfig/fonts.conf
+    sed -i "$FONTCONFIG_FILE" \
+      -e "s,<dir>fonts</dir>,<dir>$MB_IN_STORE/fonts</dir>,"
+
+    mkdir -p $out/bin
+
+    makeWrapper "$MB_IN_STORE/mullvadbrowser" "$out/bin/mullvad-browser" \
+      --prefix LD_LIBRARY_PATH : "$libPath" \
+      --set FONTCONFIG_FILE "$FONTCONFIG_FILE" \
+      --set-default MOZ_ENABLE_WAYLAND 1
+
+    # Easier access to docs
+    mkdir -p $out/share/doc
+    ln -s $MB_IN_STORE/Data/Docs $out/share/doc/mullvad-browser
+
+    # Install icons
+    for i in 16 32 48 64 128; do
+      mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps/
+      ln -s $out/share/mullvad-browser/browser/chrome/icons/default/default$i.png $out/share/icons/hicolor/''${i}x''${i}/apps/mullvad-browser.png
+    done
+
+    # Check installed apps
+    echo "Checking mullvad-browser wrapper ..."
+    $out/bin/mullvad-browser --version >/dev/null
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    # Install distribution customizations
+    install -Dvm644 ${distributionIni} $out/share/mullvad-browser/distribution/distribution.ini
+    install -Dvm644 ${policiesJson} $out/share/mullvad-browser/distribution/policies.json
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Privacy-focused browser made in a collaboration between The Tor Project and Mullvad";
+    homepage = "https://www.mullvad.net/en/browser";
+    changelog = "https://github.com/mullvad/mullvad-browser/releases/tag/${tag}";
+    platforms = attrNames srcs;
+    maintainers = with maintainers; [ felschr ];
+    # MPL2.0+, GPL+, &c.  While it's not entirely clear whether
+    # the compound is "libre" in a strict sense (some components place certain
+    # restrictions on redistribution), it's free enough for our purposes.
+    license = with licenses; [ mpl20 lgpl21Plus lgpl3Plus free ];
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index 99ec447b6db76..be8a180b326f0 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -137,5 +137,6 @@ stdenv.mkDerivation rec {
     platforms = [ "x86_64-linux" ];
     license = licenses.unfree;
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    maintainers = with maintainers; [ kindrowboat ];
   };
 }
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 13e0c8b8174eb..b6e06da9876dc 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -38,7 +38,7 @@
   buildPythonApplication = if isQt6 then python3Packages.buildPythonApplication else mkDerivationWith python3Packages.buildPythonApplication;
 
   pname = "qutebrowser";
-  version = if isQt6 then "unstable-2023-03-19" else "2.5.3";
+  version = if isQt6 then "unstable-2023-04-18" else "2.5.3";
 in
 
 assert withMediaPlayback -> gst_all_1 != null;
@@ -54,8 +54,8 @@ buildPythonApplication {
     fetchFromGitHub {
       owner = "qutebrowser";
       repo = "qutebrowser";
-      rev = "294e73660c1f3d1aff50843c25e2f8f7574c4332";
-      sha256 = "sha256-vXMME9vqB4C4MScT9j7lOz4Bvu5R8nHFKi+uz9mbqtg=";
+      rev = "d4cafc0019a4a5574caa11966fc40ede89076d26";
+      hash = "sha256-Ma79EPvnwmQkeXEG9aSnD/Vt1DGhK2JX9dib7uARH8M=";
     }
   # the release tarballs are different from the git checkout!
    else fetchurl {
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index cfb06eba692b5..04a64b96899a4 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , fetchurl
 , makeDesktopItem
+, writeText
 
 # Common run-time dependencies
 , zlib
@@ -112,6 +113,19 @@ let
       hash = "sha256-mi8btxI6de5iQ8HzNpvuFdJHjzi03zZJT65dsWEiDHA=";
     };
   };
+
+  distributionIni = writeText "distribution.ini" (lib.generators.toINI {} {
+    # Some light branding indicating this build uses our distro preferences
+    Global = {
+      id = "nixos";
+      version = "1.0";
+      about = "Tor Browser for NixOS";
+    };
+  });
+
+  policiesJson = writeText "policies.json" (builtins.toJSON {
+    policies.DisableAppUpdate = true;
+  });
 in
 stdenv.mkDerivation rec {
   pname = "tor-browser-bundle-bin";
@@ -132,7 +146,9 @@ stdenv.mkDerivation rec {
     categories = [ "Network" "WebBrowser" "Security" ];
   };
 
-  buildCommand = ''
+  buildPhase = ''
+    runHook preBuild
+
     # For convenience ...
     TBB_IN_STORE=$out/share/tor-browser
     interp=$(< $NIX_CC/nix-support/dynamic-linker)
@@ -209,7 +225,7 @@ stdenv.mkDerivation rec {
 
     // Insist on using IPC for communicating with Tor
     //
-    // Defaults to creating \$TBB_HOME/TorBrowser/Data/Tor/{socks,control}.socket
+    // Defaults to creating \$XDG_RUNTIME_DIR/Tor/{socks,control}.socket
     lockPref("extensions.torlauncher.control_port_use_ipc", true);
     lockPref("extensions.torlauncher.socks_port_use_ipc", true);
 
@@ -331,6 +347,7 @@ stdenv.mkDerivation rec {
       echo "user_pref(\"extensions.torlauncher.toronionauthdir_path\", \"\$HOME/TorBrowser/Data/Tor/onion-auth\");"
       echo "user_pref(\"extensions.torlauncher.torrc_path\", \"\$HOME/TorBrowser/Data/Tor/torrc\");"
       echo "user_pref(\"extensions.torlauncher.tordatadir_path\", \"\$HOME/TorBrowser/Data/Tor\");"
+      echo "user_pref(\"network.proxy.socks\", \"file://\$XDG_RUNTIME_DIR/Tor/socks.socket\");"
     } >> "\$HOME/TorBrowser/Data/Browser/profile.default/prefs.js"
 
     # Lift-off
@@ -416,6 +433,18 @@ stdenv.mkDerivation rec {
     echo "Checking tor-browser wrapper ..."
       TBB_HOME=$(mktemp -d) \
       $out/bin/tor-browser --version >/dev/null
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    # Install distribution customizations
+    install -Dvm644 ${distributionIni} $out/share/tor-browser/distribution/distribution.ini
+    install -Dvm644 ${policiesJson} $out/share/tor-browser/distribution/policies.json
+
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index c4dddf8713029..b01b12764b220 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -23,7 +23,7 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "5.7.2921.63";
+  version = "6.0.2979.15";
 
   suffix = {
     aarch64-linux = "arm64";
@@ -33,8 +33,8 @@ in stdenv.mkDerivation rec {
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb";
     hash = {
-      aarch64-linux = "sha256-Os2A3kbeuMIn9TFp8Ze+TwHDYLkVvECJF3UDMsQq5yU=";
-      x86_64-linux = "sha256-t9CYf3I+IrKjOD96tBZQGR3xwzPrZvnD1JvPMgTjz0M=";
+      aarch64-linux = "sha256-6rETxeExtHxWrKFO0MHzjLgnaHUeREVqsOB9264jZr8=";
+      x86_64-linux = "sha256-vvN0AxrKotphYIpkyOKHBgEOQtF4LvYBV1cB591ICbc=";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/pkgs/applications/networking/browsers/yandex-browser/default.nix b/pkgs/applications/networking/browsers/yandex-browser/default.nix
index d9374cf65d1e9..828fbd5949bdb 100644
--- a/pkgs/applications/networking/browsers/yandex-browser/default.nix
+++ b/pkgs/applications/networking/browsers/yandex-browser/default.nix
@@ -46,15 +46,16 @@
 , systemd
 , at-spi2-atk
 , at-spi2-core
+, libqt5pas
 }:
 
 stdenv.mkDerivation rec {
   pname = "yandex-browser";
-  version = "22.9.1.1110-1";
+  version = "23.3.1.906-1";
 
   src = fetchurl {
     url = "http://repo.yandex.ru/yandex-browser/deb/pool/main/y/${pname}-beta/${pname}-beta_${version}_amd64.deb";
-    sha256 = "sha256-u6pY7AmXgnkSVuko+PUyhDqY72i+UHv7qmePbu2wAf0=";
+    sha256 = "sha256-hQwAHtPUcGSDKD7SmWa8H1f/T4Imu9061tIvenw0KWQ=";
   };
 
   nativeBuildInputs = [
@@ -106,6 +107,7 @@ stdenv.mkDerivation rec {
     nss
     pango
     stdenv.cc.cc.lib
+    libqt5pas
   ];
 
   unpackPhase = ''
@@ -118,6 +120,7 @@ stdenv.mkDerivation rec {
     cp $TMP/ya/{usr/share,opt} $out/ -R
     substituteInPlace $out/share/applications/yandex-browser-beta.desktop --replace /usr/ $out/
     ln -sf $out/opt/yandex/browser-beta/yandex_browser $out/bin/yandex-browser
+    ln -sf $out/opt/yandex/browser-beta/yandex_browser $out/bin/yandex-browser-beta
   '';
 
   runtimeDependencies = map lib.getLib [
@@ -131,7 +134,7 @@ stdenv.mkDerivation rec {
     homepage = "https://browser.yandex.ru/";
     license = licenses.unfree;
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    maintainers = with maintainers; [ dan4ik605743 ];
+    maintainers = with maintainers; [ dan4ik605743 ionutnechita ];
     platforms = [ "x86_64-linux" ];
 
     knownVulnerabilities = [
diff --git a/pkgs/applications/networking/cisco-packet-tracer/7.nix b/pkgs/applications/networking/cisco-packet-tracer/7.nix
index 413ed86619673..620e7420439b2 100644
--- a/pkgs/applications/networking/cisco-packet-tracer/7.nix
+++ b/pkgs/applications/networking/cisco-packet-tracer/7.nix
@@ -1,6 +1,6 @@
 { stdenv
 , lib
-, buildFHSUserEnvBubblewrap
+, buildFHSEnv
 , copyDesktopItems
 , dpkg
 , lndir
@@ -40,7 +40,7 @@ let
     mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
   };
 
-  fhs = buildFHSUserEnvBubblewrap {
+  fhs = buildFHSEnv {
     name = "packettracer7";
     runScript = "${ptFiles}/bin/packettracer7";
 
diff --git a/pkgs/applications/networking/cisco-packet-tracer/8.nix b/pkgs/applications/networking/cisco-packet-tracer/8.nix
index 4d4f65c306617..207e563667e13 100644
--- a/pkgs/applications/networking/cisco-packet-tracer/8.nix
+++ b/pkgs/applications/networking/cisco-packet-tracer/8.nix
@@ -2,7 +2,7 @@
 , lib
 , alsa-lib
 , autoPatchelfHook
-, buildFHSUserEnvBubblewrap
+, buildFHSEnv
 , copyDesktopItems
 , dbus
 , dpkg
@@ -97,7 +97,7 @@ let
     mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
   };
 
-  fhs = buildFHSUserEnvBubblewrap {
+  fhs = buildFHSEnv {
     name = "packettracer8";
     runScript = "${ptFiles}/bin/packettracer";
     targetPkgs = pkgs: [ libudev0-shim ];
diff --git a/pkgs/applications/networking/clash-verge/default.nix b/pkgs/applications/networking/clash-verge/default.nix
index cb1474bfebe14..84bdefc5f6833 100644
--- a/pkgs/applications/networking/clash-verge/default.nix
+++ b/pkgs/applications/networking/clash-verge/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "clash-verge";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "https://github.com/zzzgydi/clash-verge/releases/download/v${version}/clash-verge_${version}_amd64.deb";
-    hash = "sha256-HaBr1QHU3SZix3NFEkTmMrGuk/J1dfP3Lhst79rkUl0=";
+    hash = "sha256-AEOFMKxrkPditf5ks++tII6zeuH72Fxw/TVtZeXS3v4=";
   };
 
   unpackPhase = "dpkg-deb -x $src .";
diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix
index a386004c82cb2..cf963c50406dd 100644
--- a/pkgs/applications/networking/cloudflared/default.nix
+++ b/pkgs/applications/networking/cloudflared/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2023.3.0";
+  version = "2023.4.1";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cloudflared";
     rev = "refs/tags/${version}";
-    hash = "sha256-LEK809MswDVwPJ6CuC13Fxb7fvliugixS/NOKBajqKM=";
+    hash = "sha256-PG2+rEn3X1EdMUDbfrtfEjYclErMGAGTcP2g7Jz+s1A=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index fb9b6a1d11acf..f4e9d5c1cf805 100644
--- a/pkgs/applications/networking/cluster/argo/default.nix
+++ b/pkgs/applications/networking/cluster/argo/default.nix
@@ -35,16 +35,16 @@ let
 in
 buildGoModule rec {
   pname = "argo";
-  version = "3.4.5";
+  version = "3.4.7";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-qNSnO+wtAKyUJwjIMZaiBUfgaoDFVttp04kTxr4H6po=";
+    hash = "sha256-jvrt8CwYkeZky5xg9a2U/CuenoBe86yX31x2iCb/7EY=";
   };
 
-  vendorHash = "sha256-75l4YCYC38uX63Uv/MA7HciQ+wumWhTuimL+ctizBCs=";
+  vendorHash = "sha256-6vHZxBcmhu6s3qQSX0iNIAR0hvXQB/bbpTA1/R08pj0=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/arkade/default.nix b/pkgs/applications/networking/cluster/arkade/default.nix
index 5976fa6187772..f07027a09fa39 100644
--- a/pkgs/applications/networking/cluster/arkade/default.nix
+++ b/pkgs/applications/networking/cluster/arkade/default.nix
@@ -7,20 +7,20 @@
 
 buildGoModule rec {
   pname = "arkade";
-  version = "0.9.6";
+  version = "0.9.12";
 
   src = fetchFromGitHub {
     owner = "alexellis";
     repo = "arkade";
     rev = version;
-    sha256 = "sha256-EkpoXmaJ679B0sATDP/asJaywY4RFN7NNYc+7uyMQEA=";
+    sha256 = "sha256-90X+MRZXjKoXsUvfsUQUZcd90XcOIqyVXBbvEtPynPk=";
   };
 
   CGO_ENABLED = 0;
 
   nativeBuildInputs = [ installShellFiles ];
 
-  vendorHash = "sha256-BGUaU8p0C6kN8l3b27WQjfWP1e2LWD1KLWNsJdyEuRc=";
+  vendorHash = "sha256-/NJ5Y0uN9gAeYvuPWFSFuL83vOS9S8WJeCSZUkOLFMU=";
 
   # Exclude pkg/get: tests downloading of binaries which fail when sandbox=true
   subPackages = [
diff --git a/pkgs/applications/networking/cluster/bosh-cli/default.nix b/pkgs/applications/networking/cluster/bosh-cli/default.nix
index 36666b901da06..587304f97d111 100644
--- a/pkgs/applications/networking/cluster/bosh-cli/default.nix
+++ b/pkgs/applications/networking/cluster/bosh-cli/default.nix
@@ -8,15 +8,15 @@
 buildGoModule rec {
   pname = "bosh-cli";
 
-  version = "7.1.0";
+  version = "7.2.2";
 
   src = fetchFromGitHub {
     owner = "cloudfoundry";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wsCVeCAgZ2RPT6cle1YHB5CZdcPmKOVuUQlA5d3H7iI=";
+    sha256 = "sha256-cSix1muhmPrL7fDGznkFAOAoArZoDvptli7uRo71Dlk=";
   };
-  vendorSha256 = null;
+  vendorHash = null;
 
   postPatch = ''
     substituteInPlace cmd/version.go --replace '[DEV BUILD]' '${version}'
diff --git a/pkgs/applications/networking/cluster/civo/default.nix b/pkgs/applications/networking/cluster/civo/default.nix
index a1335641e34e7..ee249bcc37cf9 100644
--- a/pkgs/applications/networking/cluster/civo/default.nix
+++ b/pkgs/applications/networking/cluster/civo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "civo";
-  version = "1.0.48";
+  version = "1.0.49";
 
   src = fetchFromGitHub {
     owner  = "civo";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "sha256-KoW+XKEFoe2QNJPu97MYYZnxbU0Wat8slJjQm/vtmew=";
+    sha256 = "sha256-j9fnOM7OLnu42LM/LaO/Sw9TJtPFHjAC+QzqywbxKKo=";
   };
 
-  vendorHash = "sha256-QzTu6/iFK+CS8UXoXSVq3OTuwk/xcHnAX4UpCU/Scpk=";
+  vendorHash = "sha256-7I4V4DVdHSvr/1ic/YT+Vttreg0tFasRNT/aFe4/0OY=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/click/default.nix b/pkgs/applications/networking/cluster/click/default.nix
index 2d76e0a26cb90..79dae1d1344ac 100644
--- a/pkgs/applications/networking/cluster/click/default.nix
+++ b/pkgs/applications/networking/cluster/click/default.nix
@@ -1,8 +1,6 @@
 { darwin, fetchFromGitHub, rustPlatform, lib, stdenv }:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "click";
   version = "0.4.2";
 
diff --git a/pkgs/applications/networking/cluster/cmctl/default.nix b/pkgs/applications/networking/cluster/cmctl/default.nix
index f17904911ea42..9f313f3ae1bc6 100644
--- a/pkgs/applications/networking/cluster/cmctl/default.nix
+++ b/pkgs/applications/networking/cluster/cmctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "cmctl";
-  version = "1.11.0";
+  version = "1.11.1";
 
   src = fetchFromGitHub {
     owner = "cert-manager";
     repo = "cert-manager";
-    rev = "2a0ef53b06e183356d922cd58af2510d8885bef5";
-    sha256 = "0cvsmc06gg8w5j2k1zj4i8qpqlvpjfa6d7wn24v0hs1a1qk8c7a8";
+    rev = "e3a2a803e8ed7f8a88d5f535d6e9a061c1571194";
+    sha256 = "0484dh520plgmrv39lbih44z1dz0r3sf115kqvcpfmg13b0328d0";
   };
 
-  vendorSha256 = "sha256-aLEQoNt/5ikMw+wExSUITey/68Gk4+dsRbSydsiEiEg=";
+  vendorSha256 = "sha256-tKvvqYGwLEoSfGzBRLx8xC/0Kz1uLmHYQ+gcHOW+550=";
 
   subPackages = [ "cmd/ctl" ];
 
diff --git a/pkgs/applications/networking/cluster/fn-cli/default.nix b/pkgs/applications/networking/cluster/fn-cli/default.nix
index 601f2412a0afd..7083a8b10c677 100644
--- a/pkgs/applications/networking/cluster/fn-cli/default.nix
+++ b/pkgs/applications/networking/cluster/fn-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "fn";
-  version = "0.6.23";
+  version = "0.6.24";
 
   src = fetchFromGitHub {
     owner = "fnproject";
     repo = "cli";
     rev = version;
-    hash = "sha256-3g8S3cJ3RC06rvPMyQSKf8L4DkDTZ0Oe+6eh+rwyqg8=";
+    hash = "sha256-em9Bfrk7jJdmg3N+zH0VTpCdKPEOBK8vc297V5vmKzM=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   subPackages = ["."];
 
diff --git a/pkgs/applications/networking/cluster/gatekeeper/default.nix b/pkgs/applications/networking/cluster/gatekeeper/default.nix
index 3edf48b932e19..51c5446516548 100644
--- a/pkgs/applications/networking/cluster/gatekeeper/default.nix
+++ b/pkgs/applications/networking/cluster/gatekeeper/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "gatekeeper";
-  version = "3.10.0";
+  version = "3.12.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "gatekeeper";
     rev = "v${version}";
-    sha256 = "sha256-4U03gdOls1uPpTqxmjLo1ruE4eeuUlGxphOgS9e5C1A=";
+    sha256 = "sha256-DGLod05gmDzItPOBaGc2X/oMXSzvH932Wa44R+DUt/U=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/applications/networking/cluster/glooctl/default.nix b/pkgs/applications/networking/cluster/glooctl/default.nix
index 3cf79268f70ca..1381f4c92f28b 100644
--- a/pkgs/applications/networking/cluster/glooctl/default.nix
+++ b/pkgs/applications/networking/cluster/glooctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "glooctl";
-  version = "1.13.11";
+  version = "1.13.12";
 
   src = fetchFromGitHub {
     owner = "solo-io";
     repo = "gloo";
     rev = "v${version}";
-    hash = "sha256-K3tk55YPgBSF0YrxSw8zypnzgwEiyEPAAbiGyuKId9o=";
+    hash = "sha256-JGmt07aXcxbPH772oWTD7YPvLLuxZGy8rdXEN1EgCNc=";
   };
 
   subPackages = [ "projects/gloo/cli/cmd" ];
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 5c8b9be54be22..15b0a443c9155 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "kubernetes-helm";
-  version = "3.11.2";
+  version = "3.11.3";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = "helm";
     rev = "v${version}";
-    sha256 = "sha256-aUzVICPCxAUoPvnE7pqz+bscfukbEwB+iGmXAYuQ/eE=";
+    sha256 = "sha256-BIjbSHs0sOLYB+26EHy9f3YJtUYnzgdADIXB4n45Rv0=";
   };
-  vendorSha256 = "sha256-Hf4ElC3H5sJkzKFELeDygTmfuqBHLqRhaHG1bfnqigM=";
+  vendorHash = "sha256-uz3ZqCcT+rmhNCO+y3PuCXWjTxUx8u3XDgcJxt7A37g=";
 
   subPackages = [ "cmd/helm" ];
   ldflags = [
diff --git a/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix b/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix
index 39a03eceacaaa..22a993a017eb3 100644
--- a/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix
+++ b/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "helm-secrets";
-  version = "4.2.2";
+  version = "4.4.2";
 
   src = fetchFromGitHub {
     owner = "jkroepke";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-aqRgny1vU+dxpZpzwL4aSbYfTGrZbRffQy81mMBvnJk=";
+    hash = "sha256-GpPgjRqzH4fcnaHs9SWfdaCZimwBleXnxQLjqy8SArs=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix
index b80c9c81d5d74..65699cda8518f 100644
--- a/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmfile";
-  version = "0.151.0";
+  version = "0.152.0";
 
   src = fetchFromGitHub {
     owner = "helmfile";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "sha256-hzsxuvHzdjNRqTk4yEBZhT/j1fVCAk+843kY4MsN0AM=";
+    sha256 = "sha256-y7IM9YMbJvDmCwzR4Iz5losKberxtGkMfyxpyuBEb+o=";
   };
 
-  vendorHash = "sha256-f0K3/xF+nJvlhtLAyLOah2RaZbaEqD8C28cPCLyaCXI=";
+  vendorHash = "sha256-GRTtpZ4du3FNGpD+LArmNkJFeHs72jkYKYbvp73I/5s=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/hubble/default.nix b/pkgs/applications/networking/cluster/hubble/default.nix
index a78950dde0a3a..812cc6561a7f1 100644
--- a/pkgs/applications/networking/cluster/hubble/default.nix
+++ b/pkgs/applications/networking/cluster/hubble/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hubble";
-  version = "0.10.0";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "cilium";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-L8sRvIA89RiXjrG0WcH72iYKlNTFvmQrveA9k5EBRKo=";
+    sha256 = "sha256-UshnNwpCGjAvEZY4+oIjSS8bqcmEcIrnm4e0IhH/8xM=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   ldflags = [
     "-s" "-w"
diff --git a/pkgs/applications/networking/cluster/k3s/1_26/default.nix b/pkgs/applications/networking/cluster/k3s/1_26/default.nix
index 558e800cedf12..f7dbe7e6839e5 100644
--- a/pkgs/applications/networking/cluster/k3s/1_26/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_26/default.nix
@@ -47,10 +47,10 @@
 # Those pieces of software we entirely ignore upstream's handling of, and just
 # make sure they're in the path if desired.
 let
-  k3sVersion = "1.26.3+k3s1";     # k3s git tag
-  k3sCommit = "01ea3ff27be0b04f945179171cec5a8e11a14f7b"; # k3s git commit at the above version
-  k3sRepoSha256 = "1wpciikmr4l2nw92i3wlz301vxjiyz8rlzkn8jhzcaiifykc565s";
-  k3sVendorSha256 = "sha256-1HFLj3zSHV7RvA0fsQ/dPzwnkSRqE9TXXDA4m8OhwZE=";
+  k3sVersion = "1.26.4+k3s1";     # k3s git tag
+  k3sCommit = "8d0255af07e95b841952563253d27b0d10bd72f0"; # k3s git commit at the above version
+  k3sRepoSha256 = "0qlszdnlsvj3hzx2p0wl3zhaw908w8a62z6vlf2g69a3c75f55cs";
+  k3sVendorSha256 = "sha256-JXTsZYtTspu/pWMRSS2BcegktawBJ6BK7YEKbz1J/ao=";
 
   # nix generated by update.sh
   # Based on the traefik charts here: https://github.com/k3s-io/k3s/blob/d71ab6317e22dd34673faa307a412a37a16767f6/scripts/download#L29-L32
diff --git a/pkgs/applications/networking/cluster/kaniko/default.nix b/pkgs/applications/networking/cluster/kaniko/default.nix
index a34c8634e1828..923d07af1b1f3 100644
--- a/pkgs/applications/networking/cluster/kaniko/default.nix
+++ b/pkgs/applications/networking/cluster/kaniko/default.nix
@@ -9,13 +9,13 @@
 
 buildGoModule rec {
   pname = "kaniko";
-  version = "1.9.1";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "GoogleContainerTools";
     repo = "kaniko";
     rev = "v${version}";
-    hash = "sha256-sPICsDgkijQ7PyeTWQgT553toc4/rWPPo7SY3ptX82U=";
+    hash = "sha256-dXQ0/o1qISv+sjNVIpfF85bkbM9sGOGwqVbWZpMWfMY=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/ktop/default.nix b/pkgs/applications/networking/cluster/ktop/default.nix
new file mode 100644
index 0000000000000..58fca5221c0dd
--- /dev/null
+++ b/pkgs/applications/networking/cluster/ktop/default.nix
@@ -0,0 +1,33 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "ktop";
+  version = "0.3.5";
+  excludedPackages = [".ci"];
+
+  src = fetchFromGitHub {
+    owner = "vladimirvivien";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-nkIRVt2kqsE9QBYvvHmupohnzH+OBcwWwV16rMePw4I=";
+  };
+
+  vendorHash = "sha256-IiAMmHOq69WMT2B1q9ZV2fGDnLr7AbRm1P7ACSde2FE=";
+  ldflags = [ "-s" "-w" "-X github.com/vladimirvivien/ktop/buildinfo.Version=v${version}" ];
+
+  postInstall = ''
+    rm $out/bin/hack
+  '';
+
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A top-like tool for your Kubernetes cluster";
+    longDescription = ''
+      Following the tradition of Unix/Linux top tools, ktop is a tool that displays useful metrics information about nodes, pods, and other workload resources running in a Kubernetes cluster.
+    '';
+    homepage = "https://github.com/vladimirvivien/ktop/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ qjoly ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/ktunnel/default.nix b/pkgs/applications/networking/cluster/ktunnel/default.nix
index 368532dbef4e7..449301c0602ee 100644
--- a/pkgs/applications/networking/cluster/ktunnel/default.nix
+++ b/pkgs/applications/networking/cluster/ktunnel/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, buildGoModule, fetchFromGitHub }:
 let
-  version = "1.4.8";
+  version = "1.5.2";
 in
 buildGoModule {
   pname = "ktunnel";
@@ -10,14 +10,14 @@ buildGoModule {
     owner  = "omrikiei";
     repo   = "ktunnel";
     rev    = "v${version}";
-    sha256 = "sha256-Iw7Z4iuKxmRrS51KP3k/ouXW4xssdNgxDDzNQR2Zygg=";
+    sha256 = "sha256-QZL3TSvxSPuBjjATAqoAOZNBSB6NCGfHHG2dq8C4Wwk=";
   };
 
   ldflags = [
     "-s" "-w"
   ];
 
-  vendorSha256 = "sha256-p9AYZWNO2oqLich0qzZYuAk55HqB6ttS66ORuNZ4rJg=";
+  vendorHash = "sha256-Q8t/NWGeUB1IpxdsxvyvbYh/adtcA4p+7bcCy9YFjsw=";
 
   preCheck = "export HOME=$(mktemp -d)";
 
diff --git a/pkgs/applications/networking/cluster/kubeconform/default.nix b/pkgs/applications/networking/cluster/kubeconform/default.nix
index a46e89ecca6f6..47c6451238d11 100644
--- a/pkgs/applications/networking/cluster/kubeconform/default.nix
+++ b/pkgs/applications/networking/cluster/kubeconform/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubeconform";
-  version = "0.5.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "yannh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YLPF8tR50gtiA608TLctKX54a7qf8LXjbkMr/GPJBSc=";
+    sha256 = "sha256-98wSFntt5ERbQ7URMlRz3iMTuL1beuX2nXbdWe+6Quw=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   meta = with lib; {
     description = "A FAST Kubernetes manifests validator, with support for Custom Resources!";
diff --git a/pkgs/applications/networking/cluster/linkerd/default.nix b/pkgs/applications/networking/cluster/linkerd/default.nix
index 7ac3f68b35ee9..c538479ecd9f5 100644
--- a/pkgs/applications/networking/cluster/linkerd/default.nix
+++ b/pkgs/applications/networking/cluster/linkerd/default.nix
@@ -2,7 +2,7 @@
 
 (callPackage ./generic.nix { }) {
   channel = "stable";
-  version = "2.12.4";
-  sha256 = "1nl831xjhxyw1r2zvdxy3455sfn1cnn6970n02q7aalmqgz9rpdd";
-  vendorSha256 = "sha256-c7x2vNO6ap5Ecx4+1hKy6PImFuclSQqvkBKr0LPdX4M=";
+  version = "2.13.1";
+  sha256 = "1qsf2d4haqs93qf88f2vvjsgm5a5gnmivkdpdbvpwy0q8bd8rfnj";
+  vendorSha256 = "sha256-6KuXEKuQJvRNUM+6Uo+J9D3eHI+1tt62C5XZsEDwkTc=";
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index e05e7847cfd48..99b9b942196e7 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -12,9 +12,9 @@
 
 buildGoModule rec {
   pname = "minikube";
-  version = "1.29.0";
+  version = "1.30.1";
 
-  vendorHash = "sha256-wRCSUDzz+1e4/ijwAnIM8a/AlnNNdVkiz3WO4Nhuy+M=";
+  vendorHash = "sha256-616T47H+8FdXU37MDvAHRyM59JXurU45uz8c/TNxkkc=";
 
   doCheck = false;
 
@@ -22,7 +22,7 @@ buildGoModule rec {
     owner = "kubernetes";
     repo = "minikube";
     rev = "v${version}";
-    sha256 = "sha256-rdcMgL7bzdlxrelui+V1APJik0v/4YyUqj9QlMRq1nI=";
+    sha256 = "sha256-dw+aFckp5Q9i6bNKPetw2WlslrpKAgEzXI+aGAwDurU=";
   };
 
   nativeBuildInputs = [ installShellFiles pkg-config which makeWrapper ];
diff --git a/pkgs/applications/networking/cluster/nerdctl/default.nix b/pkgs/applications/networking/cluster/nerdctl/default.nix
index 3244bb79a13c2..c42fb1b2a5cef 100644
--- a/pkgs/applications/networking/cluster/nerdctl/default.nix
+++ b/pkgs/applications/networking/cluster/nerdctl/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "nerdctl";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-mobPl1T33yhoIjFmxZn6D96ZdU4fwwPLn8cBsYSF/Fw=";
+    hash = "sha256-1wqPMT8JJ29K0BcooPj7jaXMKIVlN6YvFwneYnqaeDk=";
   };
 
-  vendorHash = "sha256-5SaYGRCgl8f5XeKbhT1autW6Kdy+HDwsWXUWTFeAMio=";
+  vendorHash = "sha256-ix18Mi4a1kW7C6rcwwFc6TDwzs3vYxNz3M3d5pD8l6c=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix b/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix
index eba9a8375dcca..2804604e2b79a 100644
--- a/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix
+++ b/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "nomad-driver-podman";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-miarvcV+b/6kbjHru7MpBIBU/v9ldHJGeXh2ATQ3BQ0=";
+    sha256 = "sha256-qHhdjWc9bxUpHYUFUrupjtxxIVQDP43OeKKsCDa+4/M=";
   };
 
-  vendorSha256 = "sha256-AtgxHAkNzzjMQoSqROpuNoSDum/6JR+mLpcHLFL9EIY=";
+  vendorHash = "sha256-UIUavFdBuSiaUsNaibPjRMURMLLK5UjNHVoyNSIRNQ4=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/networking/cluster/nova/default.nix b/pkgs/applications/networking/cluster/nova/default.nix
new file mode 100644
index 0000000000000..feabe332a15e5
--- /dev/null
+++ b/pkgs/applications/networking/cluster/nova/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "nova";
+  version = "3.6.2";
+
+  src = fetchFromGitHub {
+    owner = "FairwindsOps";
+    repo = pname;
+    rev = version;
+    hash = "sha256-l2HBjM5DyeWkdAwQGzPp+A3UuXXc0OTizInsVL0k/0I=";
+  };
+
+  vendorHash = "sha256-YvYfSb2ZC86S2osFRG7Ep9nrgYJV0tB8fBgZQZ07t2U=";
+
+  ldflags = [ "-X main.version=${version}" "-s" "-w" ];
+
+  meta = with lib; {
+    description = "Find outdated or deprecated Helm charts running in your cluster";
+    longDescription = ''
+      Nova scans your cluster for installed Helm charts, then
+      cross-checks them against all known Helm repositories. If it
+      finds an updated version of the chart you're using, or notices
+      your current version is deprecated, it will let you know.
+    '';
+    homepage = "https://nova.docs.fairwinds.com/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ qjoly ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/odo/default.nix b/pkgs/applications/networking/cluster/odo/default.nix
index ba982fd83b0c5..8f5bd153c78d8 100644
--- a/pkgs/applications/networking/cluster/odo/default.nix
+++ b/pkgs/applications/networking/cluster/odo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "odo";
-  version = "3.4.0";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
     owner = "redhat-developer";
     repo = "odo";
     rev = "v${version}";
-    sha256 = "sha256-UXeSerVtskEloH60vNom8H6/gEy7adUnBsc/5q7wrDM=";
+    sha256 = "sha256-7GkDxcin4hsqyjjUvI813Z7wHr9D9ZwSDodIts2RpzU=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   buildPhase = ''
     make bin
diff --git a/pkgs/applications/networking/cluster/openlens/default.nix b/pkgs/applications/networking/cluster/openlens/default.nix
index 42d3aab634669..4e75338da2b87 100644
--- a/pkgs/applications/networking/cluster/openlens/default.nix
+++ b/pkgs/applications/networking/cluster/openlens/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "openlens";
-  version = "6.4.5";
+  version = "6.4.15";
 
   src = fetchurl {
     url = "https://github.com/MuhammedKalkan/OpenLens/releases/download/v${version}/OpenLens-${version}.x86_64.AppImage";
-    sha256 = "sha256-Lwl4unhXSyYCEImiPncAnmIQt26CD4horsREMyi6nuA=";
+    sha256 = "sha256-Q7Vh+/SKbnQ7HbDlx1XqBXg1U2DaIvY139VrIIdOX5E=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/networking/cluster/pachyderm/default.nix b/pkgs/applications/networking/cluster/pachyderm/default.nix
index 74c92ecda895c..6cf37bb9c2501 100644
--- a/pkgs/applications/networking/cluster/pachyderm/default.nix
+++ b/pkgs/applications/networking/cluster/pachyderm/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pachyderm";
-  version = "2.5.2";
+  version = "2.5.4";
 
   src = fetchFromGitHub {
     owner = "pachyderm";
     repo = "pachyderm";
     rev = "v${version}";
-    hash = "sha256-COtOYR1toSr+oiRZ5Hfbgfy2InF9jFThT0ozwrcSVio=";
+    hash = "sha256-VYHSExQDIyK86kCz3gzIR+Q5iYrhkAPx56vST73vPOo=";
   };
 
   vendorHash = "sha256-XmIPifozTYd1rV2wm0dU0GPvg/+HFoSLGHB6DDrkzVc=";
diff --git a/pkgs/applications/networking/cluster/pluto/default.nix b/pkgs/applications/networking/cluster/pluto/default.nix
index 5b75fc6d59b31..4371331a3f251 100644
--- a/pkgs/applications/networking/cluster/pluto/default.nix
+++ b/pkgs/applications/networking/cluster/pluto/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pluto";
-  version = "5.16.0";
+  version = "5.16.1";
 
   src = fetchFromGitHub {
     owner = "FairwindsOps";
     repo = "pluto";
     rev = "v${version}";
-    sha256 = "sha256-M5zTnzuei/sECvRe89Dau72iIUuMtaLJyYTGeEF4GPo=";
+    sha256 = "sha256-UCq+aMUffvDWmPtSSc/PNbrak1LGWQe8Oe340O5q6LM=";
   };
 
-  vendorHash = "sha256-3wtE2Cz+AVF+zfsLH/+6KMHPihYcuYsrzTguHNnwT+U=";
+  vendorHash = "sha256-0VFCZ+U0W21tF35148Valpc7fDXkC9dPpz1O0+4D30U=";
 
   ldflags = [
     "-w" "-s"
diff --git a/pkgs/applications/networking/cluster/rke/default.nix b/pkgs/applications/networking/cluster/rke/default.nix
index 2ad528f1f74c4..ebd5ab9efeb1d 100644
--- a/pkgs/applications/networking/cluster/rke/default.nix
+++ b/pkgs/applications/networking/cluster/rke/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "rke";
-  version = "1.4.3";
+  version = "1.4.4";
 
   src = fetchFromGitHub {
     owner = "rancher";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-UTvDrrveFDrPD0ar87Q3NZSxTyCAe5gpp3e2QPeMMm4=";
+    hash = "sha256-2qqEpH3Lkd7Ok+KBcRpRWiaUp0kN6j0YGURsX/qe3No=";
   };
 
-  vendorHash = "sha256-zV1lrJhzrUAcEk6jYLCFrHcYw3CZart46qXErCTjZyQ=";
+  vendorHash = "sha256-wuEsG2VKU4F/phSqpzUN3wChD93V4AE7poVLJu6kpF0=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix b/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix
index a137fd5c70bbb..fb0482bf2c741 100644
--- a/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix
+++ b/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix
@@ -31,7 +31,7 @@ buildGo120Package rec {
   '';
 
   doCheck = true;
-  checkFlags = "-skip TestSetSessionHandlers";
+  checkFlags = [ "-skip=TestSetSessionHandlers" ];
 
   preCheck = ''
     if ! [[ $(go/bin/sessionmanagerplugin-main --version) = ${lib.escapeShellArg version} ]]; then
diff --git a/pkgs/applications/networking/cluster/stern/default.nix b/pkgs/applications/networking/cluster/stern/default.nix
index ca92df03fdadd..473377c22eefb 100644
--- a/pkgs/applications/networking/cluster/stern/default.nix
+++ b/pkgs/applications/networking/cluster/stern/default.nix
@@ -1,30 +1,27 @@
 { stdenv, lib, buildPackages, buildGoModule, fetchFromGitHub, installShellFiles }:
-let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform;
 
-in
 buildGoModule rec {
   pname = "stern";
-  version = "1.24.0";
+  version = "1.25.0";
 
   src = fetchFromGitHub {
     owner = "stern";
     repo = "stern";
     rev = "v${version}";
-    sha256 = "sha256-jJxrBBs8PkYg9oH9MY1RLJb262REmbKciHXiwWTqoRc=";
+    sha256 = "sha256-E4Hs9FH+6iQ7kv6CmYUHw9HchtJghMq9tnERO2rpL1g=";
   };
 
-  vendorHash = "sha256-1MhscgCGSJXkcj5Rt29+xbBX1uGfOS0kmab+DNY/Bt4=";
+  vendorHash = "sha256-+B3cAuV+HllmB1NaPeZitNpX9udWuCKfDFv+mOVHw2Y=";
 
   subPackages = [ "." ];
 
   nativeBuildInputs = [ installShellFiles ];
 
-  ldflags =
-    [ "-s" "-w" "-X github.com/stern/stern/cmd.version=${version}" ];
+  ldflags = [ "-s" "-w" "-X github.com/stern/stern/cmd.version=${version}" ];
 
-  postInstall =
-    let stern = if isCrossBuild then buildPackages.stern else "$out";
-    in
+  postInstall = let
+    stern = if stdenv.buildPlatform.canExecute stdenv.hostPlatform then "$out" else buildPackages.stern;
+  in
     ''
       for shell in bash zsh; do
         ${stern}/bin/stern --completion $shell > stern.$shell
diff --git a/pkgs/applications/networking/cluster/talosctl/default.nix b/pkgs/applications/networking/cluster/talosctl/default.nix
index db0cc5615711f..77629850e280a 100644
--- a/pkgs/applications/networking/cluster/talosctl/default.nix
+++ b/pkgs/applications/networking/cluster/talosctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "talosctl";
-  version = "1.3.7";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "siderolabs";
     repo = "talos";
     rev = "v${version}";
-    hash = "sha256-zJcfx4rHPo8bAN4p0BK0i8Vu1aAaUynj9Aj7bBQoVKU=";
+    hash = "sha256-EJrzq6fChNA1N3TTkwD5/1TdLDso9jGuTgWUG4RwqGA=";
   };
 
-  vendorHash = "sha256-m7w6ItXGAtoT/ZqNOXbDackXV6cHtpAMBi4jfVhQa9A=";
+  vendorHash = "sha256-Thkj8Zhj/HXAnRcFxuCEVd94CMrt8Bsq2FHx6siH6Ww=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
index 1bc55b3db4ff7..aee268f0a7090 100644
--- a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
+++ b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tektoncd-cli";
-  version = "0.28.0";
+  version = "0.30.1";
 
   src = fetchFromGitHub {
     owner = "tektoncd";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-8OW0n6aS7bDDbzbrMfJLL8Yvq3vJg47qHQB4zY0xxAw=";
+    sha256 = "sha256-tn7nK5YTdEYJf9UBajOZEc8fQ0cx3qM0X/7UYnDklj8=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index 9317b65dd3064..43f9e16de63a8 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -46,11 +46,11 @@
     "vendorHash": "sha256-nwl8GvS/hc07xSzM+wEwOAkT9oQcAuguHaEcM1nWjwg="
   },
   "alicloud": {
-    "hash": "sha256-ZFnVCrC2fK2i5idK2rWCOZQ3W4K3nDSG5ZkEZk2Zg9c=",
+    "hash": "sha256-6PStzU5YBhFDGtQOWUZ8Iyo9miRCTMgDsuJX0rNCYMQ=",
     "homepage": "https://registry.terraform.io/providers/aliyun/alicloud",
     "owner": "aliyun",
     "repo": "terraform-provider-alicloud",
-    "rev": "v1.202.0",
+    "rev": "v1.203.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -73,11 +73,11 @@
     "vendorHash": "sha256-DqAHkNxfI1txtW9PadHzgWuRCiuV/CVqq/qba+e0O7M="
   },
   "argocd": {
-    "hash": "sha256-IDPX+j9bxQGoBpG/XpLpsFx48iDLcCUzDso08xAsOf0=",
+    "hash": "sha256-3WhbyMqIlncD7UmmfJBFrb9FmmbC/a4CWesmjo0jzoU=",
     "homepage": "https://registry.terraform.io/providers/oboukili/argocd",
     "owner": "oboukili",
     "repo": "terraform-provider-argocd",
-    "rev": "v5.1.0",
+    "rev": "v5.2.0",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-mKefDPwWPlUleoAkJpTvJwQeOb7pA80cZQ7fpwir6kk="
   },
@@ -101,38 +101,38 @@
     "vendorHash": "sha256-0k1BYRQWp4iU9DRwPbluOg3S5VzL981PpFrgiQaYWNw="
   },
   "aviatrix": {
-    "hash": "sha256-dWG5qJtolzEKXgDy0LG68DHaVe02LqePKfBQFS2QoBk=",
+    "hash": "sha256-DjdA4kvOtPO4x1MY+lJjX+KNuQTxSZQvisSfokQk5Sg=",
     "homepage": "https://registry.terraform.io/providers/AviatrixSystems/aviatrix",
     "owner": "AviatrixSystems",
     "repo": "terraform-provider-aviatrix",
-    "rev": "v3.0.3",
+    "rev": "v3.0.5",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "aws": {
-    "hash": "sha256-vV1I9hQOil1ume9+GV14fBVo6NaBZlElemhFhnQ7rl4=",
+    "hash": "sha256-gI53y6/cbgXnWmFqihVPOZEtq4ZbpLtv1dgLiSxnYo4=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/aws",
     "owner": "hashicorp",
     "repo": "terraform-provider-aws",
-    "rev": "v4.62.0",
+    "rev": "v4.64.0",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-2OmadSxpr3buMukM25mb/xXnI5rVkIuX0sbbI0zqRYE="
+    "vendorHash": "sha256-1eIJCtcrod6MUragxcx2qoTJO9OVbD3n+VErL6xnvmw="
   },
   "azuread": {
-    "hash": "sha256-MGCGfocs16qmJnvMRRD7TRHnPkS17h+oNUkMARAQhLs=",
+    "hash": "sha256-bCnCj2pEd29aQVePGeaTbVhH6sF/Y+lj94SEw1+tROc=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/azuread",
     "owner": "hashicorp",
     "repo": "terraform-provider-azuread",
-    "rev": "v2.36.0",
+    "rev": "v2.37.2",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "azurerm": {
-    "hash": "sha256-NffjRiJz92MwTo6K0H2nuqcfdvmhj9i8Xre0T7gaPeA=",
+    "hash": "sha256-tStlnMSlkkL+X/DP0SBmnm7xL6dH8HfyiaKY/McuMQE=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/azurerm",
     "owner": "hashicorp",
     "repo": "terraform-provider-azurerm",
-    "rev": "v3.51.0",
+    "rev": "v3.53.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -182,13 +182,13 @@
     "vendorHash": "sha256-dm+2SseBeS49/QoepRwJ1VFwPCtU+6VymvyEH/sLkvI="
   },
   "buildkite": {
-    "hash": "sha256-4Bbod7IuinZE28AZ2r1BBrexgbS29jEpwtG8aTKj7M8=",
+    "hash": "sha256-/LTUDnE5XB8Gwbs+CroJW+3pM7opNSVQFWvRQWQjFqc=",
     "homepage": "https://registry.terraform.io/providers/buildkite/buildkite",
     "owner": "buildkite",
     "repo": "terraform-provider-buildkite",
-    "rev": "v0.14.0",
+    "rev": "v0.16.0",
     "spdx": "MIT",
-    "vendorHash": "sha256-dN5oNNO5lf8dUfk9SDUH3f3nA0CNoJyfTqk+Z5lwTz8="
+    "vendorHash": "sha256-ZXjmR1maiiLeWipXGOAGfLEuot9TsrzAX4EPRNQ5Gbo="
   },
   "checkly": {
     "hash": "sha256-tdimESlkfRO/kdA6JOX72vQNXFLJZ9VKwPRxsJo5WFI=",
@@ -218,13 +218,13 @@
     "vendorHash": "sha256-w7Rsr3UgijW/3RMKzhMyWCvn5b1R1oqRs87/ZPO7jHs="
   },
   "cloudflare": {
-    "hash": "sha256-dhSjFeTkbiG/Gx/DS1WzW2b31u3apfXX4Safh29e6Fw=",
+    "hash": "sha256-DDoPVceQpRTN23JaQ79uXrEStBgtb7WWrKBIVpIpok4=",
     "homepage": "https://registry.terraform.io/providers/cloudflare/cloudflare",
     "owner": "cloudflare",
     "repo": "terraform-provider-cloudflare",
-    "rev": "v4.3.0",
+    "rev": "v4.4.0",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-sgJ1HhhWQpvOGFVEC43pymBKyVcqdn8jLlW5fR21mFE="
+    "vendorHash": "sha256-b7h8CI1NeFAAXGdDsZ4CRXcomceoijon8IGriqP6tko="
   },
   "cloudfoundry": {
     "hash": "sha256-MKhsUGuDpKfYFf9Vk0uVrP/Z4hnQyO+2WiqWXO9EAC0=",
@@ -300,11 +300,11 @@
     "vendorHash": "sha256-BpXhKjfxyCLdGRHn1GexW0MoLj4/C6Bn7scZ76JARxQ="
   },
   "digitalocean": {
-    "hash": "sha256-fnABnzEMDJBzUl6/K1rgWdW4oCqrKZ+3RSXVvT1sHVk=",
+    "hash": "sha256-n3aem1oP5Pzd5J4Xot7HtixNhdXqKBeGRp8k79bEfr4=",
     "homepage": "https://registry.terraform.io/providers/digitalocean/digitalocean",
     "owner": "digitalocean",
     "repo": "terraform-provider-digitalocean",
-    "rev": "v2.27.1",
+    "rev": "v2.28.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -318,22 +318,22 @@
     "vendorHash": null
   },
   "dns": {
-    "hash": "sha256-qLKlnw0vnPvxJluvUiBERu1YdtrRklocVw314/lvQT4=",
+    "hash": "sha256-Bzj1rLTzWJuqKEq5mz0UAbYMWMp4JoRhedfC2lORocE=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/dns",
     "owner": "hashicorp",
     "repo": "terraform-provider-dns",
-    "rev": "v3.2.4",
+    "rev": "v3.3.1",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-Ba4J6LUchqhdZTxcJxTgP20aZVioybIzKvF4j5TDQIk="
+    "vendorHash": "sha256-wx8BXlobu86Nk9D8o5loKhbO14ANI+shFQ2i7jswKgE="
   },
   "dnsimple": {
-    "hash": "sha256-40ueiX2LrtTyiMgCgHRq07hMYrLKh6N+7wfrXr+MC7w=",
+    "hash": "sha256-I5TUhq8OZqcLQs/jr8LB22Uc9s5M/WH9LRzV8EsgRnc=",
     "homepage": "https://registry.terraform.io/providers/dnsimple/dnsimple",
     "owner": "dnsimple",
     "repo": "terraform-provider-dnsimple",
-    "rev": "v0.17.0",
+    "rev": "v1.1.0",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-LXRNq5nxoZ6xZdKioT6cjyLaYChRAN28PzKsJ5BRako="
+    "vendorHash": "sha256-2FZWc+i4mSLDo143CULLmsVhjs2otN8bSqcfZROZPTM="
   },
   "docker": {
     "hash": "sha256-UyHOI8C0eDV5YllAi9clHp/CEldHjIp3FHHMPy1rK58=",
@@ -354,13 +354,13 @@
     "vendorHash": "sha256-oVTanZpCWs05HwyIKW2ajiBPz1HXOFzBAt5Us+EtTRw="
   },
   "equinix": {
-    "hash": "sha256-zyRPpAaDgjRafn5RcrzmbVTzO6gGS1HMmvLR8VFdKow=",
+    "hash": "sha256-wuOgnliqwA8huZHmFuegbtuFbpTpe1VgQ53Z+XcgHjw=",
     "homepage": "https://registry.terraform.io/providers/equinix/equinix",
     "owner": "equinix",
     "repo": "terraform-provider-equinix",
-    "rev": "v1.13.0",
+    "rev": "v1.14.1",
     "spdx": "MIT",
-    "vendorHash": "sha256-Zi2e/Vg9iKTrU8Mb37Y8xHYIBL+IfDnWMUUg5Vqrbfo="
+    "vendorHash": "sha256-rJev48aS0nd8DRWmUN4i0LgDYvfjdfoO67N6AiWeg+k="
   },
   "exoscale": {
     "hash": "sha256-XbuVvVOv8k7T/7smr73+lvhFMxKtJkaLN3WgvTWIkrA=",
@@ -381,20 +381,20 @@
     "vendorHash": "sha256-E1gzdES/YVxQq2J47E2zosvud2C/ViBeQ8+RfNHMBAg="
   },
   "fastly": {
-    "hash": "sha256-YKF4aW+K5JffPd5b3Kh540ml0uc9q5WSvcNgj9g6/Bk=",
+    "hash": "sha256-Z38tG5Of+nYuIT3IxY/hxbV0HIgkITBnaXcr3oYIf6Y=",
     "homepage": "https://registry.terraform.io/providers/fastly/fastly",
     "owner": "fastly",
     "repo": "terraform-provider-fastly",
-    "rev": "v4.2.0",
+    "rev": "v4.3.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "flexibleengine": {
-    "hash": "sha256-0wpyi397+5YAa3epZZII312rK1SnPU5k9a1/iVTbqmU=",
+    "hash": "sha256-TZR/zXgecHUbaD9Yb83HvBwWauDtHDsnEcSZYFmY5y4=",
     "homepage": "https://registry.terraform.io/providers/FlexibleEngineCloud/flexibleengine",
     "owner": "FlexibleEngineCloud",
     "repo": "terraform-provider-flexibleengine",
-    "rev": "v1.36.1",
+    "rev": "v1.37.0",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-HcyUGKbgj322fU7keN/lBEn6UJhV3QXScBJHZHJkCII="
   },
@@ -419,11 +419,11 @@
     "vendorHash": "sha256-uWTY8cFztXFrQQ7GW6/R+x9M6vHmsb934ldq+oeW5vk="
   },
   "github": {
-    "hash": "sha256-GlNOYpIRX+DL7cfBsst83MdW/SXmh16L+MwDSFLzXYo=",
+    "hash": "sha256-iFYYKFPa9+pTpmTddFzqB1yRwBnp8NG281oxQP7V6+U=",
     "homepage": "https://registry.terraform.io/providers/integrations/github",
     "owner": "integrations",
     "repo": "terraform-provider-github",
-    "rev": "v5.22.0",
+    "rev": "v5.23.0",
     "spdx": "MIT",
     "vendorHash": null
   },
@@ -437,24 +437,24 @@
     "vendorHash": "sha256-s4FynUO6bT+8uZYkecbQCtFw1jFTAAYUkSzONI6Ba9g="
   },
   "google": {
-    "hash": "sha256-XSKujqCuBczKXVMJYzuGHzLiEKadRjYVNkk35zxGSdA=",
+    "hash": "sha256-rF68NnqyEY4BWl+oLOxfTaQw5zEGs6Ue/L9DwzsJ46M=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/google",
     "owner": "hashicorp",
     "proxyVendor": true,
     "repo": "terraform-provider-google",
-    "rev": "v4.61.0",
+    "rev": "v4.62.1",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-ztoWOiqyOrusSo0peigEV9wy2f387gVGfcolkYoJvhw="
+    "vendorHash": "sha256-Xm1P6P2tMLqjV9QFX6D7koBPzg4umTH6jCQesyt0A/A="
   },
   "google-beta": {
-    "hash": "sha256-T3SnuZYpwrd+wMv5DzTVW5H5ZP3p9ArLI1OFuIM/+/8=",
+    "hash": "sha256-/wcNrCMaXjameyE3o09N+bPjL8r627BJy1vYy1u2iAI=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/google-beta",
     "owner": "hashicorp",
     "proxyVendor": true,
     "repo": "terraform-provider-google-beta",
-    "rev": "v4.61.0",
+    "rev": "v4.62.1",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-ztoWOiqyOrusSo0peigEV9wy2f387gVGfcolkYoJvhw="
+    "vendorHash": "sha256-Xm1P6P2tMLqjV9QFX6D7koBPzg4umTH6jCQesyt0A/A="
   },
   "googleworkspace": {
     "hash": "sha256-dedYnsKHizxJZibuvJOMbJoux0W6zgKaK5fxIofKqCY=",
@@ -466,11 +466,11 @@
     "vendorHash": "sha256-fqVBnAivVekV+4tpkl+E6eNA3wi8mhLevJRCs3W7L2g="
   },
   "grafana": {
-    "hash": "sha256-7WonpFvk9jKPUGRanCmo5H6L01rDBuZN4DGjdaQaBq4=",
+    "hash": "sha256-cCluXspcWsRzuo+mP6Hk0VXtrP7zA5TGV1LCf3xuvhw=",
     "homepage": "https://registry.terraform.io/providers/grafana/grafana",
     "owner": "grafana",
     "repo": "terraform-provider-grafana",
-    "rev": "v1.37.0",
+    "rev": "v1.37.2",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-Mv3BKYS1j5AAHbXVCP5C3OQpEmOBea2ru3ONbJ0pYyc="
   },
@@ -484,13 +484,13 @@
     "vendorHash": null
   },
   "hcloud": {
-    "hash": "sha256-oFJ2+0qWWmt+lL+Nt0wEPL/G7P8YDtssnLN4K0Pjdsk=",
+    "hash": "sha256-B6XL9izArnbkI7TWbuB/m/UgGK+YlrpaQEJ+etWQBJk=",
     "homepage": "https://registry.terraform.io/providers/hetznercloud/hcloud",
     "owner": "hetznercloud",
     "repo": "terraform-provider-hcloud",
-    "rev": "v1.38.0",
+    "rev": "v1.38.2",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-popuZxLqK7NB2dt7xC5aP6sWyo8BsuhvVoAPZYWsSXU="
+    "vendorHash": "sha256-gz96b+GOE7AgXzEL4odneYA01wZv4oXwz//Yyu9rg3E="
   },
   "helm": {
     "hash": "sha256-X9keFjAmV86F/8ktxiv/VrnkHOazP9e/aOC9aRw1A48=",
@@ -584,31 +584,31 @@
     "vendorHash": null
   },
   "infoblox": {
-    "hash": "sha256-bLZK2lZqnpiE5vsJAAiGw4BrBzVWGyg5VZq/Ngr8VlA=",
+    "hash": "sha256-C7j9WvhLePQvZlGvYC51GQRIa5JwgARNDG1nGZwY6FU=",
     "homepage": "https://registry.terraform.io/providers/infobloxopen/infoblox",
     "owner": "infobloxopen",
     "repo": "terraform-provider-infoblox",
-    "rev": "v2.2.0",
+    "rev": "v2.3.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "jetstream": {
-    "hash": "sha256-XFJo01AK5UCraIzi/KkOoVbZznJwaA8BrRAIomK3U7Q=",
+    "hash": "sha256-CFjgF02JZJ072mAMvRnObaq3t+SPeT2uXqkRvlRrG5c=",
     "homepage": "https://registry.terraform.io/providers/nats-io/jetstream",
     "owner": "nats-io",
     "repo": "terraform-provider-jetstream",
-    "rev": "v0.0.34",
+    "rev": "v0.0.35",
     "spdx": "Apache-2.0",
-    "vendorHash": "sha256-vSIeSEzyJQzh9Aid/FWsF4xDYXMOhbsaLQ31mtfH7/Y="
+    "vendorHash": "sha256-OMDMpL9ox6tI9tkoSU0oVuFzRObmUGgGQy6RtsNbyIg="
   },
   "kafka": {
-    "hash": "sha256-p8KT6K9fcd0OFy+NoZyZzQxG13fIiyMJg2yNPKIWH60=",
+    "hash": "sha256-IG0xgMs0j2jRJBa52Wsx7/r4s9DRnw5b+AfYpZAewxI=",
     "homepage": "https://registry.terraform.io/providers/Mongey/kafka",
     "owner": "Mongey",
     "repo": "terraform-provider-kafka",
-    "rev": "v0.5.2",
+    "rev": "v0.5.3",
     "spdx": "MIT",
-    "vendorHash": "sha256-RzC8j+Toub7kiOKW6IppjwyJ0vGEJ0YHb8YXrWFkZW4="
+    "vendorHash": "sha256-Z5APR41/+MsrHAtpTZKnG0qTi1+JSBJbPTVxNpd6f84="
   },
   "kafka-connect": {
     "hash": "sha256-PiSVfzNPEXAgONb/eaVAN4yPudn5glcHL0BLqE5PWsw=",
@@ -638,11 +638,11 @@
     "vendorHash": "sha256-lXQHo66b9X0jZhoF+5Ix5qewQGyI82VPJ7gGzc2CHao="
   },
   "kubernetes": {
-    "hash": "sha256-FV5FoEd0zjXa8x77r/z8Tn/I1lZI1NZ4a8yisAuAhNQ=",
+    "hash": "sha256-B13jQTZqFb5o/GRTf4iQWUbOPhbb4uYKUy35nQrKGLI=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/kubernetes",
     "owner": "hashicorp",
     "repo": "terraform-provider-kubernetes",
-    "rev": "v2.19.0",
+    "rev": "v2.20.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -728,13 +728,13 @@
     "vendorHash": "sha256-QxbZv6YMa5/I4bTeQBNdmG3EKtLEmstnH7HMiZzFJrI="
   },
   "minio": {
-    "hash": "sha256-eF3yT3cI+ODGN4nqf9rTy3PUev09KMGgzvaa4znPIm4=",
+    "hash": "sha256-URn6XFqKTE3nXE5ZcaXmRvGl6qLdffLLSoMRq70zh4I=",
     "homepage": "https://registry.terraform.io/providers/aminueza/minio",
     "owner": "aminueza",
     "repo": "terraform-provider-minio",
-    "rev": "v1.13.0",
+    "rev": "v1.14.0",
     "spdx": "Apache-2.0",
-    "vendorHash": "sha256-Tps4SoiSmGwPWZgf2Q1MilpLhKnB/TCFe35Hb4DfwaU="
+    "vendorHash": "sha256-Mdy9uXYb7MH9XHqSNkG0QqTVzjvTy4+/Mr6VHXJBEZE="
   },
   "mongodbatlas": {
     "hash": "sha256-Ek7dIKWlyyAoEoMMTHx3DOBNuCoOtXP0CJHAsC04xy0=",
@@ -773,13 +773,13 @@
     "vendorHash": "sha256-WF4AdTu6lxoNSCsFKLMeQbHgH6j+hM0VNBRsue+azJA="
   },
   "nomad": {
-    "hash": "sha256-oHY+jM4JQgLlE1wd+/H9H8H2g0e9ZuxI6OMlz3Izfjg=",
+    "hash": "sha256-1TmcFS+ul7xpSGqQohcCdeQ2zuDD429xGI0X2Add5HQ=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/nomad",
     "owner": "hashicorp",
     "repo": "terraform-provider-nomad",
-    "rev": "v1.4.19",
+    "rev": "v1.4.20",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-3t8pUAwuVeZN5cYGs72YsdRvJunudSmKSldFWEFVA/4="
+    "vendorHash": "sha256-jnZ7LzKgyPVCnYoWp+nDeQy2w91sBVX43KjInzqRWqc="
   },
   "ns1": {
     "hash": "sha256-F7nKtDlVnW7jDPTeszYv9aYMAnHo2/k+MxsXdjghS88=",
@@ -801,29 +801,29 @@
   },
   "nutanix": {
     "deleteVendor": true,
-    "hash": "sha256-PQwP2xIh635pc8nL0qhiUUqaf5Dm8uERFk61LUk6Xmc=",
+    "hash": "sha256-szqvEU1cxEIBKIeHmeqT6YAEsXZDvINxfDyp76qswzw=",
     "homepage": "https://registry.terraform.io/providers/nutanix/nutanix",
     "owner": "nutanix",
     "repo": "terraform-provider-nutanix",
-    "rev": "v1.8.0",
+    "rev": "v1.8.1",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-LRIfxQGwG988HE5fftGl6JmBG7tTknvmgpm4Fu1NbWI="
   },
   "oci": {
-    "hash": "sha256-27vdHG/FRWGPZclW9Q0z/6ntY+of/5/PGIsKsePhF4k=",
+    "hash": "sha256-9Qcwxi8TojsDIWeyqwQcagTeTwKS/hkPukjeHANHGfU=",
     "homepage": "https://registry.terraform.io/providers/oracle/oci",
     "owner": "oracle",
     "repo": "terraform-provider-oci",
-    "rev": "v4.116.0",
+    "rev": "v4.117.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "okta": {
-    "hash": "sha256-j4tOWcY3x4FpfCEdB7x5XP7Pqms97tYtEvGDn8Fjst8=",
+    "hash": "sha256-pSGoD4WSfw6lTJTn/Yf8k60CtbPjZeEPJ7mH1c6cRD0=",
     "homepage": "https://registry.terraform.io/providers/okta/okta",
     "owner": "okta",
     "repo": "terraform-provider-okta",
-    "rev": "v3.45.0",
+    "rev": "v3.46.0",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-DkC4BmFfckBtT12lr3rgU9Mg4Nb+7sXjDT/EdfbSFQM="
   },
@@ -855,13 +855,13 @@
     "vendorHash": "sha256-62q67aaOZA3fQmyL8bEHB+W497bcx9Xy7kKrbkjkbaI="
   },
   "opentelekomcloud": {
-    "hash": "sha256-QcpA7FreTgITmnt0fQHUmUK6FZMP0QCeQK2MN2Y9tFQ=",
+    "hash": "sha256-bRvs4IxnUObX/ChPdCn97VUQSxTjV2tfnmBmWmgAXUA=",
     "homepage": "https://registry.terraform.io/providers/opentelekomcloud/opentelekomcloud",
     "owner": "opentelekomcloud",
     "repo": "terraform-provider-opentelekomcloud",
-    "rev": "v1.34.1",
+    "rev": "v1.34.2",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-4tJe8v31txzLBbruicOI6WUdDk38CqfLniFyc3hWVxg="
+    "vendorHash": "sha256-VEreMBvqvBGUZz5EY5+0jbNDOVbmhYerfLYGa1rl+aw="
   },
   "opsgenie": {
     "hash": "sha256-Wbe+DyK5wKuZZX8yd3DJN+2wT8KZt+YsBwJYKnZnfcI=",
@@ -882,11 +882,11 @@
     "vendorHash": null
   },
   "pagerduty": {
-    "hash": "sha256-ZjqxXsLHmTbQp5QVsQN6Wj6ff7dOKceuMWsQ9SXSNPE=",
+    "hash": "sha256-NWrE6DFyoI1RQnxLThenGeFNGj8AFiVWhXysk8U7RpI=",
     "homepage": "https://registry.terraform.io/providers/PagerDuty/pagerduty",
     "owner": "PagerDuty",
     "repo": "terraform-provider-pagerduty",
-    "rev": "v2.13.0",
+    "rev": "v2.14.3",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -963,13 +963,13 @@
     "vendorHash": null
   },
   "scaleway": {
-    "hash": "sha256-QIrIL0vqiZafggdfWchlSOzLRDCF5Zubh6MqwOzfr3Y=",
+    "hash": "sha256-b0prqlZNPrg0YjvLk3RdJ+4C6eL4Tzdzt7Berp6G32c=",
     "homepage": "https://registry.terraform.io/providers/scaleway/scaleway",
     "owner": "scaleway",
     "repo": "terraform-provider-scaleway",
-    "rev": "v2.16.3",
+    "rev": "v2.17.0",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-KUbE00fajvs4p8QxmuKV5IoRfCdWtfZTrOftcRAPSws="
+    "vendorHash": "sha256-tnZy6uN/lZaW4d6uo/quVAuEZZrXEX7qLAas0GauRJI="
   },
   "secret": {
     "hash": "sha256-MmAnA/4SAPqLY/gYcJSTnEttQTsDd2kEdkQjQj6Bb+A=",
@@ -1026,13 +1026,13 @@
     "vendorHash": null
   },
   "snowflake": {
-    "hash": "sha256-IAS0IJwWBmZi0x32ZMWFRyiiPZrnL6z1SGQ3AxuFAd8=",
+    "hash": "sha256-/9TTK33XwMW8izM35y9sOZOKFc6/HC2/CCnX3JMzY3I=",
     "homepage": "https://registry.terraform.io/providers/Snowflake-Labs/snowflake",
     "owner": "Snowflake-Labs",
     "repo": "terraform-provider-snowflake",
-    "rev": "v0.61.0",
+    "rev": "v0.62.0",
     "spdx": "MIT",
-    "vendorHash": "sha256-INAtZefgxjNpf/PWGLn8SS2PxKu3SBhY+06cEnr9V3g="
+    "vendorHash": "sha256-3Ry+XQxF39lXr3Ev+KOx0GatVbD0Sjs9Jai1VPjEDBE="
   },
   "sops": {
     "hash": "sha256-D1Yzs8hDimMP9y8ZRbizEhic3vGtLcZjOVSuSMUAqPk=",
@@ -1044,13 +1044,13 @@
     "vendorHash": "sha256-NO1r/EWLgH1Gogru+qPeZ4sW7FuDENxzNnpLSKstnE8="
   },
   "spotinst": {
-    "hash": "sha256-g/kELVG+hsR+RynLfyB0MQkjC7eUeUUVn/h7S/MABXU=",
+    "hash": "sha256-A9YPAIVH7kNQSirvxZYr8L1N4W5b/AJwWmatt3b/vBk=",
     "homepage": "https://registry.terraform.io/providers/spotinst/spotinst",
     "owner": "spotinst",
     "repo": "terraform-provider-spotinst",
-    "rev": "v1.110.0",
+    "rev": "v1.113.0",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-2HApI9Cw63zxzgSP9Xe6xAcqHDx8KSlRiIh+IVSEUfo="
+    "vendorHash": "sha256-pN1GVA63sYs52IKkQ/jfeDOzAlH0fN9a9ZCgRjrQ+8E="
   },
   "stackpath": {
     "hash": "sha256-7KQUddq+M35WYyAIAL8sxBjAaXFcsczBRO1R5HURUZg=",
@@ -1098,29 +1098,29 @@
     "vendorHash": "sha256-GkmUKSnqkabwGCl22/90529BWb0oJaIJHYHlS/h3KNY="
   },
   "tencentcloud": {
-    "hash": "sha256-Wapcnyf1jN75ZKZTFXMixRNianq1FWC8TMddXmFSmj8=",
+    "hash": "sha256-kIsH+kp+fnYsZatEJOH51lUdQs9cq/8FtpXHZIRzSM0=",
     "homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud",
     "owner": "tencentcloudstack",
     "repo": "terraform-provider-tencentcloud",
-    "rev": "v1.80.2",
+    "rev": "v1.80.5",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
   "tfe": {
-    "hash": "sha256-K0l9oaYkgilz47ErUxio9oJtPHQTWZnKdPpjRZ1SDhg=",
+    "hash": "sha256-GQPp7od9KM8x82qg88JIITnkMMUzTAEDWeVX2VujKfM=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/tfe",
     "owner": "hashicorp",
     "repo": "terraform-provider-tfe",
-    "rev": "v0.43.0",
+    "rev": "v0.44.1",
     "spdx": "MPL-2.0",
-    "vendorHash": "sha256-plYy3INLi/SeKu7R0lDLY1CvRDU7bmZsQKzFtMc2Wu4="
+    "vendorHash": "sha256-vKIbswlWQUIPeaFRAMPGygM/UlWiRIr66NuTNfnpGpc="
   },
   "thunder": {
-    "hash": "sha256-GmFEgEKpkx+cvztHe2qDTVStMIGYYzmbZM8/QmSwbcA=",
+    "hash": "sha256-amGtmE1i68K0ehhYBJ6wwcdUPuVGSWoVdYAb1PwhlAs=",
     "homepage": "https://registry.terraform.io/providers/a10networks/thunder",
     "owner": "a10networks",
     "repo": "terraform-provider-thunder",
-    "rev": "v1.2.0",
+    "rev": "v1.2.1",
     "spdx": "BSD-2-Clause",
     "vendorHash": null
   },
@@ -1162,11 +1162,11 @@
     "vendorHash": null
   },
   "ucloud": {
-    "hash": "sha256-1gKDd1lLGkDDKfg9a98J8W7kO2RZG1Q0XUM182WCdhU=",
+    "hash": "sha256-onsIA/cROImSgdU9PfnkmXbTtEd6OZ4ka+e+DSzOOlY=",
     "homepage": "https://registry.terraform.io/providers/ucloud/ucloud",
     "owner": "ucloud",
     "repo": "terraform-provider-ucloud",
-    "rev": "v1.35.1",
+    "rev": "v1.36.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
@@ -1180,12 +1180,12 @@
     "vendorHash": "sha256-yTcroKTdYv0O8cX80A451I1vjYclVjA8P69fsb0wY/U="
   },
   "vault": {
-    "hash": "sha256-HI+/vGQPwQWnTYyYZa5a7N1esWf2EQL2lziuZMv8DNE=",
+    "hash": "sha256-oyR9xqEnpt5JoTIe1jgV3aMDxKFdvrDx39UWNc5ECTM=",
     "homepage": "https://registry.terraform.io/providers/hashicorp/vault",
     "owner": "hashicorp",
     "proxyVendor": true,
     "repo": "terraform-provider-vault",
-    "rev": "v3.14.0",
+    "rev": "v3.15.0",
     "spdx": "MPL-2.0",
     "vendorHash": "sha256-Ox8Onq44NdE/KMrmzbOpKetJKww9T2PvEliLbWU/bLU="
   },
@@ -1235,11 +1235,11 @@
     "vendorHash": "sha256-guUjkk7oW+Gvu015LUAxGqUwZF4H+4xmmOaMqKixZaI="
   },
   "vultr": {
-    "hash": "sha256-fEeKvV2t38gD5SLYAgEOJJSPjTcIhCtIYmOYMFiwcYg=",
+    "hash": "sha256-cHMD4/jlXTIQ9ppTFJsUTHVQ3R9Qoe0I3me7zz2bxus=",
     "homepage": "https://registry.terraform.io/providers/vultr/vultr",
     "owner": "vultr",
     "repo": "terraform-provider-vultr",
-    "rev": "v2.13.0",
+    "rev": "v2.14.0",
     "spdx": "MPL-2.0",
     "vendorHash": null
   },
diff --git a/pkgs/applications/networking/cluster/terragrunt/default.nix b/pkgs/applications/networking/cluster/terragrunt/default.nix
index 3708ad4132c4f..2fc75004cd0d6 100644
--- a/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "terragrunt";
-  version = "0.45.0";
+  version = "0.45.2";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-SyA1DP9xm8NbgDfGOyzNZwaWq6Wn8IOiiL/m516/cLw=";
+    hash = "sha256-elaCrClNLTw3YiEjygwJxjiqYlp7BWwjvdIYDx5rWE8=";
   };
 
   vendorHash = "sha256-eY9YwXSIOrXbVWUIfVrUIRso1F5weBGKbPFv43k8t2Y=";
diff --git a/pkgs/applications/networking/cluster/werf/default.nix b/pkgs/applications/networking/cluster/werf/default.nix
index 5c95cfb568387..dfdc7fbb1870b 100644
--- a/pkgs/applications/networking/cluster/werf/default.nix
+++ b/pkgs/applications/networking/cluster/werf/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "werf";
-  version = "1.2.219";
+  version = "1.2.224";
 
   src = fetchFromGitHub {
     owner = "werf";
     repo = "werf";
     rev = "v${version}";
-    hash = "sha256-yenIGKN6OoDxPRn4aHOQu8Msp1WzjLZzTZkSSKq1zlc=";
+    hash = "sha256-j7Lio56CMC4bJ58Oucm1hCqFNzMeoDpDRh/ALmF9Y3Y=";
   };
 
-  vendorHash = "sha256-lif2Vj8HQH8rZeBIky1lz5J6ISdV2yPyR1vQrPcZLuU=";
+  vendorHash = "sha256-SdBWW1tv3OauCex8l6Kg7uKLFUOvDvCE8rnULytndqw=";
 
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/coreth/default.nix b/pkgs/applications/networking/coreth/default.nix
index 1366bfa7fdf55..1acbd96817c23 100644
--- a/pkgs/applications/networking/coreth/default.nix
+++ b/pkgs/applications/networking/coreth/default.nix
@@ -6,19 +6,19 @@
 
 buildGoModule rec {
   pname = "coreth";
-  version = "0.11.9";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "ava-labs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-i0mLyTeosGlnTpKvAUS3wDvBRFpgmnfmKXAtCnAGqE0=";
+    hash = "sha256-VZxViKtpdDkEC94DgYPHCjCcqrA3H3Uef/pK/ZqINkU=";
   };
 
   # go mod vendor has a bug, see: golang/go#57529
   proxyVendor = true;
 
-  vendorHash = "sha256-zX1rQ9RDBkzZIbqCDlFEgseYyKYUHYyGFApZqhOrkGU=";
+  vendorHash = "sha256-+tgDdhrSJb3h3NXhwcdgSWo2+NvYl18HW6dVEUOSpVs=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix
index e3775db084eae..47c47276095dc 100644
--- a/pkgs/applications/networking/dnscontrol/default.nix
+++ b/pkgs/applications/networking/dnscontrol/default.nix
@@ -1,19 +1,21 @@
-{ lib, fetchFromGitHub, buildGoModule }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "dnscontrol";
-  version = "3.30.0";
+  version = "3.31.1";
 
   src = fetchFromGitHub {
     owner = "StackExchange";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/ULO0ev1ybENaSrzAgblUdnyGp6QfFxO8XSHpH2wGpU=";
+    sha256 = "sha256-T8fErChbQbarvE3/Zds1482m1hfD9Qa3esYvqjzNN3c=";
   };
 
-  vendorHash = "sha256-BtwSn3MLeMkjKBRXhln7hCB3wBVkKASe0zzfqbALQMQ=";
+  vendorHash = "sha256-BE/UnJw5elHYmyB+quN89ZkrlMcTjaVN0T2+h8cpPS8=";
 
-  ldflags = [ "-s" "-w" ];
+  subPackages = [ "." ];
+
+  ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
 
   preCheck = ''
     # requires network
@@ -23,6 +25,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Synchronize your DNS to multiple providers from a simple DSL";
     homepage = "https://stackexchange.github.io/dnscontrol/";
+    changelog = "https://github.com/StackExchange/dnscontrol/releases/tag/${src.rev}";
     license = licenses.mit;
     maintainers = with maintainers; [ mmahut SuperSandro2000 ];
   };
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index a65110b802321..d2924df2ce0c9 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildFHSUserEnv, writeScript, makeDesktopItem }:
+{ stdenv, lib, buildFHSEnv, writeScript, makeDesktopItem }:
 
 let platforms = [ "i686-linux" "x86_64-linux" ]; in
 
@@ -30,7 +30,7 @@ let
   };
 in
 
-buildFHSUserEnv {
+buildFHSEnv {
   name = "dropbox";
 
   targetPkgs = pkgs: with pkgs; with xorg; [
diff --git a/pkgs/applications/networking/dyndns/cfdyndns/default.nix b/pkgs/applications/networking/dyndns/cfdyndns/default.nix
index afddb6be875ed..eb7d1bf5c8d9f 100644
--- a/pkgs/applications/networking/dyndns/cfdyndns/default.nix
+++ b/pkgs/applications/networking/dyndns/cfdyndns/default.nix
@@ -1,8 +1,6 @@
 { lib, fetchFromGitHub, rustPlatform, pkg-config, openssl }:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "cfdyndns";
   version = "0.0.3";
   src = fetchFromGitHub {
diff --git a/pkgs/applications/networking/expressvpn/default.nix b/pkgs/applications/networking/expressvpn/default.nix
index 0bc0fd34fe5ad..fa88705ad2e22 100644
--- a/pkgs/applications/networking/expressvpn/default.nix
+++ b/pkgs/applications/networking/expressvpn/default.nix
@@ -1,5 +1,5 @@
 { autoPatchelfHook
-, buildFHSUserEnv
+, buildFHSEnv
 , dpkg
 , fetchurl
 , inotify-tools
@@ -41,7 +41,7 @@ let
     '';
   };
 
-  expressvpndFHS = buildFHSUserEnv {
+  expressvpndFHS = buildFHSEnv {
     name = "expressvpnd";
 
     # When connected, it directly creates/deletes resolv.conf to change the DNS entries.
diff --git a/pkgs/applications/networking/feedreaders/feed2imap-go/default.nix b/pkgs/applications/networking/feedreaders/feed2imap-go/default.nix
new file mode 100644
index 0000000000000..46acbd5d78a53
--- /dev/null
+++ b/pkgs/applications/networking/feedreaders/feed2imap-go/default.nix
@@ -0,0 +1,27 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "feed2imap-go";
+  version = "1.6.0";
+
+  src = fetchFromGitHub {
+    owner = "Necoro";
+    repo = "feed2imap-go";
+    rev = "v${version}";
+    sha256 = "sha256-zRp/MfRtCgzYFNKoV4IWbORfCy7vaaDgmRvNQ0cICNQ=";
+  };
+
+  vendorHash = "sha256-py0totvLLw3kahEtdZkES1t7tZsKBAUS6IMTcn847kE=";
+
+  # The print-cache tool is not an end-user tool (https://github.com/Necoro/feed2imap-go/issues/94)
+  postInstall = ''
+    rm -f $out/bin/print-cache
+  '';
+
+  meta = with lib; {
+    description = "Uploads rss feeds as e-mails onto an IMAP server";
+    homepage = "https://github.com/Necoro/feed2imap-go";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ nomeata ];
+  };
+}
diff --git a/pkgs/applications/networking/feedreaders/newsboat/default.nix b/pkgs/applications/networking/feedreaders/newsboat/default.nix
index e2ef900ffb12d..0fd6bbee8b580 100644
--- a/pkgs/applications/networking/feedreaders/newsboat/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsboat/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, rustPlatform, fetchFromGitHub, stfl, sqlite, curl, gettext, pkg-config, libxml2, json_c, ncurses
-, asciidoctor, libiconv, Security, Foundation, makeWrapper }:
+, asciidoctor, libiconv, Security, Foundation, makeWrapper, nix-update-script }:
 
 rustPlatform.buildRustPackage rec {
   pname = "newsboat";
@@ -55,6 +55,10 @@ rustPlatform.buildRustPackage rec {
     done
   '';
 
+  passthru = {
+    updateScript = nix-update-script { };
+  };
+
   meta = with lib; {
     homepage    = "https://newsboat.org/";
     changelog   = "https://github.com/newsboat/newsboat/blob/${src.rev}/CHANGELOG.md";
diff --git a/pkgs/applications/networking/firewalld/default.nix b/pkgs/applications/networking/firewalld/default.nix
index b11c3d60c9087..997ea8e37edee 100644
--- a/pkgs/applications/networking/firewalld/default.nix
+++ b/pkgs/applications/networking/firewalld/default.nix
@@ -31,13 +31,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "firewalld";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "firewalld";
     repo = "firewalld";
     rev = "v${version}";
-    sha256 = "sha256-UQ61do0f0bT3VNyZAx2ZuwQ+6SGvKUS6V5Y1B6EpJ5Q=";
+    sha256 = "sha256-P9jErGxylTAgWGoefqglAgU7FNRVpKHVXu9JzyjBnA8=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 1509fbe9da438..0dd7ab182d2da 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -19,7 +19,7 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "flexget";
-  version = "3.6.0";
+  version = "3.6.3";
   format = "pyproject";
 
   # Fetch from GitHub in order to use `requirements.in`
@@ -27,7 +27,7 @@ python.pkgs.buildPythonApplication rec {
     owner = "Flexget";
     repo = "Flexget";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VsXiWsvEjRhWckwqHcUPx2B9mwOUmRLLHIM5ALoW9GI=";
+    hash = "sha256-Z1tiIs4NHHsWa7agAl1dnwliQbgFEl/SPT6QLQkqTVA=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/hydroxide/default.nix b/pkgs/applications/networking/hydroxide/default.nix
index 42ff691275533..df6f1e2d793f0 100644
--- a/pkgs/applications/networking/hydroxide/default.nix
+++ b/pkgs/applications/networking/hydroxide/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "hydroxide";
-  version = "0.2.25";
+  version = "0.2.26";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YBaimsHRmmh5d98c9x56JIyOOnkZsypxdqlSCG6pVJ4=";
+    sha256 = "sha256-UCS49P83dGTD/Wx95Mslstm2C6hKgJB/1tJTZmmwLDg=";
   };
 
   vendorHash = "sha256-OLsJc/AMtD03KA8SN5rsnaq57/cB7bMB/f7FfEjErEU=";
diff --git a/pkgs/applications/networking/ids/suricata/default.nix b/pkgs/applications/networking/ids/suricata/default.nix
index e10c87e683cbc..f1131cd7e39c2 100644
--- a/pkgs/applications/networking/ids/suricata/default.nix
+++ b/pkgs/applications/networking/ids/suricata/default.nix
@@ -34,11 +34,11 @@
 in
 stdenv.mkDerivation rec {
   pname = "suricata";
-  version = "6.0.10";
+  version = "6.0.11";
 
   src = fetchurl {
     url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz";
-    sha256 = "sha256-Wb/Rv12cFZYib6SBW/dmQ85ZaYhmwQeiYmnEgfElxNc=";
+    sha256 = "sha256-TaXk6R5JmSYzpgJM4Qr+ZEElWyd1qPIPHvGIvREprGY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index c86efd9c1030d..61fb4b43a033e 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -13,7 +13,7 @@
 
 buildGoPackage rec {
   pname = "coyim";
-  version = "0.4";
+  version = "0.4.1";
 
   goPackagePath = "github.com/coyim/coyim";
 
@@ -21,7 +21,7 @@ buildGoPackage rec {
     owner = "coyim";
     repo = "coyim";
     rev = "v${version}";
-    sha256 = "sha256-dpTU5Tx1pfUGZMt9QNEYDytgArhhvEvh1Yvj6IAjgeI=";
+    sha256 = "sha256-PmB6POaHKEXzIAaz3lAbUOhtVOzrj5oXRk90giYo6SI=";
   };
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook ];
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/Cargo.lock b/pkgs/applications/networking/instant-messengers/deltachat-desktop/Cargo.lock
index 5d9f4fa9c27c0..87198de0352e3 100644
--- a/pkgs/applications/networking/instant-messengers/deltachat-desktop/Cargo.lock
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/Cargo.lock
@@ -189,12 +189,12 @@ dependencies = [
 
 [[package]]
 name = "async-imap"
-version = "0.6.0"
-source = "git+https://github.com/async-email/async-imap?branch=master#90270474a5a494669e7c63c13471d189afdc98ae"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d11e163a705d0c809dfc886eee95df5117c758539c940c0fe9aa3aa4da5388ce"
 dependencies = [
  "async-channel",
- "async-native-tls 0.4.0",
- "base64 0.13.1",
+ "base64 0.21.0",
  "byte-pool",
  "chrono",
  "futures",
@@ -220,18 +220,6 @@ dependencies = [
 
 [[package]]
 name = "async-native-tls"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d57d4cec3c647232e1094dc013546c0b33ce785d8aeb251e1f20dfaf8a9a13fe"
-dependencies = [
- "native-tls",
- "thiserror",
- "tokio",
- "url",
-]
-
-[[package]]
-name = "async-native-tls"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9343dc5acf07e79ff82d0c37899f079db3534d99f189a1837c8e549c99405bec"
@@ -494,9 +482,9 @@ checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
 
 [[package]]
 name = "byte-pool"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8c7230ddbb427b1094d477d821a99f3f54d36333178eeb806e279bcdcecf0ca"
+checksum = "c2f1b21189f50b5625efa6227cf45e9d4cfdc2e73582df2b879e9689e78a7158"
 dependencies = [
  "crossbeam-queue",
  "stable_deref_trait",
@@ -836,9 +824,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.7"
+version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c"
+checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
 dependencies = [
  "cfg-if",
  "crossbeam-utils",
@@ -1061,13 +1049,13 @@ dependencies = [
 
 [[package]]
 name = "deltachat"
-version = "1.112.6"
+version = "1.112.7"
 dependencies = [
  "ansi_term",
  "anyhow",
  "async-channel",
  "async-imap",
- "async-native-tls 0.5.0",
+ "async-native-tls",
  "async-smtp",
  "async_zip",
  "backtrace",
@@ -1135,7 +1123,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-jsonrpc"
-version = "1.112.6"
+version = "1.112.7"
 dependencies = [
  "anyhow",
  "async-channel",
@@ -1158,7 +1146,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-repl"
-version = "1.112.6"
+version = "1.112.7"
 dependencies = [
  "ansi_term",
  "anyhow",
@@ -1173,7 +1161,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat-rpc-server"
-version = "1.112.6"
+version = "1.112.7"
 dependencies = [
  "anyhow",
  "deltachat",
@@ -1197,7 +1185,7 @@ dependencies = [
 
 [[package]]
 name = "deltachat_ffi"
-version = "1.112.6"
+version = "1.112.7"
 dependencies = [
  "anyhow",
  "deltachat",
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
index bcacfe6fe64cd..f0004246b247a 100644
--- a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
@@ -21,17 +21,16 @@
 
 let
   libdeltachat' = libdeltachat.overrideAttrs (old: rec {
-    version = "1.112.6";
+    version = "1.112.7";
     src = fetchFromGitHub {
       owner = "deltachat";
       repo = "deltachat-core-rust";
       rev = version;
-      hash = "sha256-xadf6N5x3zdefwsKUFaVs71HmLMpJoUq5LL7IENsvC0=";
+      hash = "sha256-zBstNj8IZ8ScwZxzvTxDPwe8R0n2z/EuvjbR+bJepJk=";
     };
     cargoDeps = rustPlatform.importCargoLock {
       lockFile = ./Cargo.lock;
       outputHashes = {
-        "async-imap-0.6.0" = "sha256-q6ZDm+4i+EtiMgkW/8LQ/TkDO/sj0p7KJhpYE76zAjo=";
         "email-0.0.21" = "sha256-Ys47MiEwVZenRNfenT579Rb17ABQ4QizVFTWUq3+bAY=";
         "encoded-words-0.2.0" = "sha256-KK9st0hLFh4dsrnLd6D8lC6pRFFs8W+WpZSGMGJcosk=";
         "lettre-0.9.2" = "sha256-+hU1cFacyyeC9UGVBpS14BWlJjHy90i/3ynMkKAzclk=";
@@ -53,16 +52,16 @@ let
   };
 in buildNpmPackage rec {
   pname = "deltachat-desktop";
-  version = "1.36.1";
+  version = "1.36.3";
 
   src = fetchFromGitHub {
     owner = "deltachat";
     repo = "deltachat-desktop";
     rev = "v${version}";
-    hash = "sha256-dfDgUDGRYcJKi7X30jaYx0kqlSkDjfo83yaZ16Mrklk=";
+    hash = "sha256-OmAWABZLTNU8EzXl2Rp/Y4DJcaqXuMt14ReaJbHx/u8=";
   };
 
-  npmDepsHash = "sha256-IQod8femD9yhM4c9mDfbpjmXdpLoWzOU0g3Z9g5DLQM=";
+  npmDepsHash = "sha256-u2hYIhXGMnjAp5T2h4THcTL5Om4Zg8aTO3NpSiphAXc=";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index 349c2e10cbcfd..0a5afe093cd18 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -3,7 +3,7 @@ let
   versions = if stdenv.isLinux then {
     stable = "0.0.26";
     ptb = "0.0.41";
-    canary = "0.0.150";
+    canary = "0.0.151";
   } else {
     stable = "0.0.273";
     ptb = "0.0.59";
@@ -22,7 +22,7 @@ let
       };
       canary = fetchurl {
         url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-        sha256 = "sha256-8huDp1u0t9/kZbeB7bPqQUw8+HQ6rIyzKYUVN02gQfo=";
+        sha256 = "sha256-ZN+lEGtSajgYsyMoGRmyTZCpUGVmb9LKgVv89NA4m7U=";
       };
     };
     x86_64-darwin = {
diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix
index 10fb303fdd678..43a0ff082bff3 100644
--- a/pkgs/applications/networking/instant-messengers/discord/linux.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix
@@ -6,9 +6,10 @@
 , libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, mesa, nspr, nss
 , pango, systemd, libappindicator-gtk3, libdbusmenu, writeScript, python3, runCommand
 , libunity
+, speechd
 , wayland
 , branch
-, common-updater-scripts, withOpenASAR ? false }:
+, common-updater-scripts, withOpenASAR ? false, withTTS ? false }:
 
 let
   disableBreakingUpdates = runCommand "disable-breaking-updates.py"
@@ -46,7 +47,7 @@ stdenv.mkDerivation rec {
 
   dontWrapGApps = true;
 
-  libPath = lib.makeLibraryPath [
+  libPath = lib.makeLibraryPath ([
     libcxx
     systemd
     libpulseaudio
@@ -87,7 +88,7 @@ stdenv.mkDerivation rec {
     libappindicator-gtk3
     libdbusmenu
     wayland
-  ];
+  ] ++ lib.optional withTTS speechd);
 
   installPhase = ''
     runHook preInstall
@@ -102,6 +103,7 @@ stdenv.mkDerivation rec {
     wrapProgramShell $out/opt/${binaryName}/${binaryName} \
         "''${gappsWrapperArgs[@]}" \
         --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations}}" \
+        ${lib.strings.optionalString withTTS "--add-flags \"--enable-speech-dispatcher\""} \
         --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
         --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/${binaryName} \
         --run "${lib.getExe disableBreakingUpdates}"
diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix
index 39370085ca10d..3547be38d4332 100644
--- a/pkgs/applications/networking/instant-messengers/element/pin.nix
+++ b/pkgs/applications/networking/instant-messengers/element/pin.nix
@@ -1,9 +1,9 @@
 {
-  "version" = "1.11.28";
+  "version" = "1.11.29";
   "hashes" = {
-    "desktopSrcHash" = "u8w9rk5N6N4ppyG4tTbtj6YoHWwNnJW+N84cwpadtJk=";
-    "desktopYarnHash" = "0sgc0na93h9qa7n88g2wfd48hw19ydkv20mj6gpkj1dkp8ibfl0b";
-    "webSrcHash" = "CSOkDktlKBen8t1LN2hvadAAJ28YEwRhts0DjxeRCx8=";
-    "webYarnHash" = "1crz34ln5879amqgnjlwc7f1wj5is02hzp46lq8pqd3yvjmidx4c";
+    "desktopSrcHash" = "/q2tMYz2Qu/njoFPzI965Vn69kliLXJqIAhWSB6CnBE=";
+    "desktopYarnHash" = "1v910qx9ij4szs1fyxc1d2lh71zzyga5ry8d9i0pdw9nlwbkqjdh";
+    "webSrcHash" = "tnCaq3k0DFBYnJfS1BY4/OOR9oe+zHMnwATPsOoNAHc=";
+    "webYarnHash" = "0rd7f6ypp64znwdlaxqfahpf6lrr0mn28y3h635bn7ipzfjcqmqk";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/ferdium/default.nix b/pkgs/applications/networking/instant-messengers/ferdium/default.nix
index 813e1973e5517..0ff76e4188620 100644
--- a/pkgs/applications/networking/instant-messengers/ferdium/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ferdium/default.nix
@@ -1,16 +1,22 @@
-{ lib, mkFranzDerivation, fetchurl, xorg }:
+{ lib, mkFranzDerivation, fetchurl, xorg, nix-update-script }:
 
 mkFranzDerivation rec {
   pname = "ferdium";
   name = "Ferdium";
-  version = "6.2.4";
+  version = "6.2.6";
   src = fetchurl {
     url = "https://github.com/ferdium/ferdium-app/releases/download/v${version}/Ferdium-linux-${version}-amd64.deb";
-    sha256 = "sha256-iat0d06IhupMVYfK8Ot14gBY+5rHO4e/lVYqbX9ucIo=";
+    sha256 = "sha256-jG3NdolWqQzj/62jYwnqJHz5uT6QIuOkrpL/FcLl56k=";
   };
 
   extraBuildInputs = [ xorg.libxshmfence ];
 
+  passthru = {
+    updateScript = nix-update-script {
+      extraArgs = [ "--override-filename" ./default.nix  ];
+    };
+  };
+
   meta = with lib; {
     description = "All your services in one place built by the community";
     homepage = "https://ferdium.org/";
diff --git a/pkgs/applications/networking/instant-messengers/fluffychat/default.nix b/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
index 7064a32365e12..a29a5364ce7ae 100644
--- a/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
@@ -13,15 +13,16 @@
 }:
 
 let
+  version = "1.10.0";
   # map of nix platform -> expected url platform
   platformMap = {
     x86_64-linux = "linux-x86";
     aarch64-linux = "linux-arm64";
   };
 in
-stdenv.mkDerivation rec {
-  version = "1.10.0";
-  name = "fluffychat";
+stdenv.mkDerivation {
+  inherit version;
+  pname = "fluffychat";
 
   src = fetchzip {
     url = "https://gitlab.com/api/v4/projects/16112282/packages/generic/fluffychat/${version}/fluffychat-${platformMap.${stdenv.hostPlatform.system}}.tar.gz";
diff --git a/pkgs/applications/networking/instant-messengers/franz/generic.nix b/pkgs/applications/networking/instant-messengers/franz/generic.nix
index 44546aabe2239..b48acec1d32be 100644
--- a/pkgs/applications/networking/instant-messengers/franz/generic.nix
+++ b/pkgs/applications/networking/instant-messengers/franz/generic.nix
@@ -28,9 +28,10 @@
 
 # Helper function for building a derivation for Franz and forks.
 
-{ pname, name, version, src, meta, extraBuildInputs ? [] }:
-
-stdenv.mkDerivation rec {
+{ pname, name, version, src, meta, extraBuildInputs ? [], ... } @ args:
+let
+  cleanedArgs = builtins.removeAttrs args [ "pname" "name" "version" "src" "meta" "extraBuildInputs" ];
+in stdenv.mkDerivation (rec {
   inherit pname version src meta;
 
   # Don't remove runtime deps.
@@ -91,4 +92,4 @@ stdenv.mkDerivation rec {
       --suffix PATH : ${xdg-utils}/bin \
       "''${gappsWrapperArgs[@]}"
   '';
-}
+} // cleanedArgs)
diff --git a/pkgs/applications/networking/instant-messengers/iamb/default.nix b/pkgs/applications/networking/instant-messengers/iamb/default.nix
new file mode 100644
index 0000000000000..9e9101d27d2e6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/iamb/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, darwin
+, stdenv
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "iamb";
+  version = "0.0.7";
+
+  src = fetchFromGitHub {
+    owner = "ulyssa";
+    repo = "iamb";
+    rev = "v${version}";
+    hash = "sha256-KKr7dfFSffkFgqcREy/3RIIn5c5IxhFR7CjFJqCmqdM=";
+  };
+
+  cargoHash = "sha256-/OBGRE9zualLnMh9Ikh9s9IE9b8mEmAC/H5KUids8a8=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.AppKit
+  ];
+
+  meta = with lib; {
+    description = "A Matrix client for Vim addicts";
+    homepage = "https://github.com/ulyssa/iamb";
+    changelog = "https://github.com/ulyssa/iamb/releases/tag/${src.rev}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ meain ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/jami/0001-fix-annotations-in-bin-dbus-cx.ring.Ring.CallManager.patch b/pkgs/applications/networking/instant-messengers/jami/0001-fix-annotations-in-bin-dbus-cx.ring.Ring.CallManager.patch
new file mode 100644
index 0000000000000..5420b77c89568
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/jami/0001-fix-annotations-in-bin-dbus-cx.ring.Ring.CallManager.patch
@@ -0,0 +1,52 @@
+From f60e38b394c55e709cba2c0839c1fbba2fd8a1d2 Mon Sep 17 00:00:00 2001
+From: Nick Cao <nickcao@nichi.co>
+Date: Sun, 16 Apr 2023 21:56:06 +0800
+Subject: [PATCH] fix annotations in bin/dbus/cx.ring.Ring.CallManager.xml
+
+---
+ bin/dbus/cx.ring.Ring.CallManager.xml | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/bin/dbus/cx.ring.Ring.CallManager.xml b/bin/dbus/cx.ring.Ring.CallManager.xml
+index 8c5732f30..4228fcad2 100644
+--- a/bin/dbus/cx.ring.Ring.CallManager.xml
++++ b/bin/dbus/cx.ring.Ring.CallManager.xml
+@@ -87,7 +87,7 @@
+             <tp:docstring>
+               Once enabled using the startSmartInfo method, this signal is emitted every refreshTimeMS
+             </tp:docstring>
+-             <annotation name="org.qtproject.QtDBus.QtTypeName.In0" value="MapStringString"/>
++             <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+              <arg type="a{ss}" name="info" direction="out" />
+        </signal>
+ 
+@@ -761,7 +761,7 @@
+                 The caller phone number.
+               </tp:docstring>
+             </arg>
+-            <annotation name="org.qtproject.QtDBus.QtTypeName.In3" value="VectorMapStringString"/>
++            <annotation name="org.qtproject.QtDBus.QtTypeName.Out3" value="VectorMapStringString"/>
+             <arg type="aa{ss}" name="mediaList">
+               <tp:docstring>
+                 The list of media offered in the incoming call.
+@@ -791,7 +791,7 @@
+                 Call ID of the incoming call.
+               </tp:docstring>
+             </arg>
+-            <annotation name="org.qtproject.QtDBus.QtTypeName.In2" value="VectorMapStringString"/>
++            <annotation name="org.qtproject.QtDBus.QtTypeName.Out2" value="VectorMapStringString"/>
+             <arg type="aa{ss}" name="mediaList">
+               <tp:docstring>
+                 The list of media offered in the incoming call.
+@@ -807,7 +807,7 @@
+             <arg type="s" name="accountId" />
+             <arg type="s" name="callId" />
+             <arg type="s" name="from" />
+-            <annotation name="org.qtproject.QtDBus.QtTypeName.In3" value="MapStringString"/>
++            <annotation name="org.qtproject.QtDBus.QtTypeName.Out3" value="MapStringString"/>
+             <arg type="a{ss}" name="messages" />
+         </signal>
+ 
+-- 
+2.39.2
+
diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix
index 9aa5f539bdea0..2872eb739e42a 100644
--- a/pkgs/applications/networking/instant-messengers/jami/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/default.nix
@@ -105,6 +105,8 @@ stdenv.mkDerivation rec {
     inherit src version meta;
     sourceRoot = "source/daemon";
 
+    patches = [ ./0001-fix-annotations-in-bin-dbus-cx.ring.Ring.CallManager.patch ];
+
     nativeBuildInputs = [
       autoreconfHook
       pkg-config
diff --git a/pkgs/applications/networking/instant-messengers/qq/default.nix b/pkgs/applications/networking/instant-messengers/qq/default.nix
index 32d34787d6579..9f037845def66 100644
--- a/pkgs/applications/networking/instant-messengers/qq/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qq/default.nix
@@ -6,6 +6,7 @@
 , glib
 , gtk3
 , lib
+, libappindicator
 , libdrm
 , libgcrypt
 , libkrb5
@@ -14,6 +15,7 @@
 , xorg
 , systemd
 , stdenv
+, vips
 , at-spi2-core
 , autoPatchelfHook
 , wrapGAppsHook
@@ -49,18 +51,20 @@ stdenv.mkDerivation {
     alsa-lib
     at-spi2-core
     cups
-    gtk3
     glib
+    gtk3
     libdrm
     libgcrypt
     libkrb5
     mesa
     nss
+    vips
     xorg.libXdamage
   ];
 
-  runtimeDependencies = [
-    (lib.getLib systemd)
+  runtimeDependencies = map lib.getLib [
+    libappindicator
+    systemd
   ];
 
   installPhase = ''
@@ -74,9 +78,16 @@ stdenv.mkDerivation {
       --replace "/usr/share" "$out/share"
     ln -s $out/opt/QQ/qq $out/bin/qq
 
+    # Remove bundled libraries
+    rm -r $out/opt/QQ/resources/app/sharp-lib
+
     runHook postInstall
   '';
 
+  preFixup = ''
+    gappsWrapperArgs+=(--prefix PATH : "${lib.makeBinPath [ gjs ]}")
+  '';
+
   meta = with lib; {
     homepage = "https://im.qq.com/linuxqq/";
     description = "Messaging app";
diff --git a/pkgs/applications/networking/instant-messengers/revolt-desktop/default.nix b/pkgs/applications/networking/instant-messengers/revolt-desktop/default.nix
new file mode 100644
index 0000000000000..e070fee1c3787
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/revolt-desktop/default.nix
@@ -0,0 +1,61 @@
+{ stdenv
+, lib
+, fetchurl
+, appimageTools
+, makeWrapper
+, electron
+}:
+
+stdenv.mkDerivation rec {
+  pname = "revolt-desktop";
+  version = "1.0.6";
+
+  src = fetchurl {
+    url = "https://github.com/revoltchat/desktop/releases/download/v${version}/Revolt-linux.AppImage";
+    sha256 = "sha256-Wsm6ef2Reenq3/aKGaP2yzlOuLKaxKtRHCLLMxvWUUY=";
+  };
+
+  appimageContents = appimageTools.extractType2 {
+    name = "${pname}-${version}";
+    inherit src;
+  };
+
+  dontUnpack = true;
+  dontConfigure = true;
+  dontBuild = true;
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share/{applications,revolt-desktop}
+
+    cp -a ${appimageContents}/{locales,resources} $out/share/${pname}
+    cp -a ${appimageContents}/revolt-desktop.desktop $out/share/applications/${pname}.desktop
+    cp -a ${appimageContents}/usr/share/icons $out/share/icons
+
+    substituteInPlace $out/share/applications/${pname}.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    makeWrapper ${electron}/bin/electron $out/bin/${pname} \
+      --add-flags $out/share/${pname}/resources/app.asar
+  '';
+
+  meta = with lib; {
+    description = "An open source user-first chat platform";
+    homepage = "https://revolt.chat/";
+    changelog = "https://github.com/revoltchat/desktop/releases/tag/v${version}";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ heyimnova ];
+    platforms = platforms.linux;
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    mainProgram = "revolt-desktop";
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/session-desktop/default.nix b/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
index 3cf6b2e1c4338..464fc65cfbe13 100644
--- a/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
@@ -8,12 +8,12 @@
 }:
 
 let
-  version = "1.10.4";
+  version = "1.10.8";
   pname = "session-desktop";
 
   src = fetchurl {
     url = "https://github.com/oxen-io/session-desktop/releases/download/v${version}/session-desktop-linux-x86_64-${version}.AppImage";
-    sha256 = "sha256-pSVTfZvjqWVgx3FAbIJO6e26GHZbhZBppxEptEuozQo=";
+    sha256 = "sha256-r/MQlZ3dmQmQZ/FCYIIF2sh9+VXwG97PFfTIXIQijx8=";
   };
   appimage = appimageTools.wrapType2 {
     inherit version pname src;
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index baca7bd39439a..cf2080b52bcef 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-cli";
-  version = "0.11.7";
+  version = "0.11.8";
 
   # Building from source would be preferred, but is much more involved.
   src = fetchurl {
     url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
-    hash = "sha256-oN80HQkPpJfhM4WBaRm4ytmhLjSokjEpfMhP6/XnQXs=";
+    hash = "sha256-lpCPPYkT+q9oYR32rHUGTJI4TmTvy01ttpJxeTSGxVo=";
   };
 
   buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index be06dbf386bac..a697cb7afed08 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -1,12 +1,12 @@
 { callPackage }: builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; })) {
   signal-desktop = {
     dir = "Signal";
-    version = "6.10.1";
-    hash = "sha256-uWwRgP9iYirZU9x3QtS5lRGI7vLOOtX4B4fgVuYxkho=";
+    version = "6.15.0";
+    hash = "sha256-uZXFnbDe49GrjKm4A0lsOTGV8Xqg0+oC0+AwRMKykfY=";
   };
   signal-desktop-beta = {
     dir = "Signal Beta";
-    version = "6.11.0-beta.2";
-    hash = "sha256-tw8VsPC0shKIN13ICD0PVKhKxA7rdj16r2lP2UEJGsY=";
+    version = "6.16.0-beta.1";
+    hash = "sha256-J7YPuQetfob8Ybab+c5W0Z4Urzi4AtEJAnIVRIGtv0Q=";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
index 48220b18a30b2..b352f4b7322fe 100644
--- a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
@@ -2,13 +2,13 @@
 
 (if stdenv.isDarwin then darwin.apple_sdk_11_0.clang14Stdenv else stdenv).mkDerivation rec {
   pname = "signalbackup-tools";
-  version = "20230404";
+  version = "20230414";
 
   src = fetchFromGitHub {
     owner = "bepaald";
     repo = pname;
     rev = version;
-    hash = "sha256-uDQeXEG3xTIXdzj9LaI+p5cLYy9nR2w7QTiZIJlZyQw=";
+    hash = "sha256-0pCItZCYdwX/Bl20HHc/FhIF4ZHsqz9aadfFYNdQ71M=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
index 2ea2de235bb2a..aa71039e9f3c9 100644
--- a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
@@ -12,17 +12,18 @@
 , libpulseaudio
 , pipewire
 , alsa-utils
+, which
 }:
 
 stdenv.mkDerivation rec {
   pname = "teams-for-linux";
-  version = "1.0.59";
+  version = "1.0.65";
 
   src = fetchFromGitHub {
     owner = "IsmaelMartinez";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-82uRZEktKHMQhozG5Zpa2DFu1VZOEDBWpsbfgMzoXY8=";
+    sha256 = "sha256-Rj6A1h5R4w8zacoTV0WKTbTD67qwsw4zHP+KQ6h7/gs=";
   };
 
   offlineCache = fetchYarnDeps {
@@ -30,6 +31,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-3zjmVIPQ+F2jPQ2xkAv5hQUjr8k5jIHTsa73J+IMayw=";
   };
 
+  patches = [
+    # Can be removed once Electron upstream resolves https://github.com/electron/electron/issues/36660
+    ./screensharing-wayland-hack-fix.patch
+  ];
+
   nativeBuildInputs = [ yarn fixup_yarn_lock nodejs copyDesktopItems makeWrapper ];
 
   configurePhase = ''
@@ -71,7 +77,7 @@ stdenv.mkDerivation rec {
     # Linux needs 'aplay' for notification sounds, 'libpulse' for meeting sound, and 'libpipewire' for screen sharing
     makeWrapper '${electron}/bin/electron' "$out/bin/teams-for-linux" \
       ${lib.optionalString stdenv.isLinux ''
-        --prefix PATH : ${lib.makeBinPath [ alsa-utils ]} \
+        --prefix PATH : ${lib.makeBinPath [ alsa-utils which ]} \
         --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libpulseaudio pipewire ]} \
       ''} \
       --add-flags "$out/share/teams-for-linux/app.asar" \
diff --git a/pkgs/applications/networking/instant-messengers/teams-for-linux/screensharing-wayland-hack-fix.patch b/pkgs/applications/networking/instant-messengers/teams-for-linux/screensharing-wayland-hack-fix.patch
new file mode 100644
index 0000000000000..3e5d993e869ec
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/teams-for-linux/screensharing-wayland-hack-fix.patch
@@ -0,0 +1,28 @@
+diff --git a/app/index.js b/app/index.js
+index 20ccf43..b251f62 100644
+--- a/app/index.js
++++ b/app/index.js
+@@ -1,4 +1,4 @@
+-const { app, ipcMain, desktopCapturer, systemPreferences, powerMonitor } = require('electron');
++const { app, ipcMain, desktopCapturer, nativeImage, systemPreferences, powerMonitor } = require('electron');
+ const path = require('path');
+ const { LucidLog } = require('lucid-log');
+ const isDev = require('electron-is-dev');
+@@ -93,7 +93,16 @@ if (!gotTheLock) {
+ 	ipcMain.handle('getSystemIdleState', handleGetSystemIdleState);
+ 	ipcMain.handle('getZoomLevel', handleGetZoomLevel);
+ 	ipcMain.handle('saveZoomLevel', handleSaveZoomLevel);
+-	ipcMain.handle('desktopCapturerGetSources', (event, opts) => desktopCapturer.getSources(opts));
++	ipcMain.handle('desktopCapturerGetSources', (event, opts) => process.env.XDG_SESSION_TYPE == 'wayland' ?
++		// Port wayland electron 22+ screenshare "fix" from webcord
++		Promise.resolve([{
++			id: "screen:1:0",
++			appIcon: nativeImage.createEmpty(),
++			display_id: "",
++			name: "Entire Screen",
++			thumbnail: nativeImage.createEmpty()
++		}])
++		: desktopCapturer.getSources(opts));
+ 	ipcMain.on('play-notification-sound', playNotificationSound);
+ }
+ 
diff --git a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
index 6c95c7557eb46..3adfe73ab62df 100644
--- a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
+++ b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "twitch-tui";
-  version = "2.0.2";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "Xithrius";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-4gEE2JCYNxPOV47w/wMRvYn5YJdgvlYl+fkk6qcXLr8=";
+    hash = "sha256-ecPrG3zZW+tr0LSCMLgGc6w2qmqzZOTAmEB88xKJxvk=";
   };
 
-  cargoHash = "sha256-IYk01mueNZu791LPdkB79VaxsFXZbqEFDbpw1ckYTMo=";
+  cargoHash = "sha256-SQ0anSl/MrSEyfcLbzma3RT2iDqVa0wrcYAmIMysyew=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/networking/instant-messengers/webcord/default.nix b/pkgs/applications/networking/instant-messengers/webcord/default.nix
index 188158e70b6db..67e99f540b1dd 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/webcord/default.nix
@@ -1,18 +1,18 @@
 { lib, stdenv, buildNpmPackage, fetchFromGitHub, copyDesktopItems
-, python3, pipewire, libpulseaudio, xdg-utils, electron_22, makeDesktopItem }:
+, python3, pipewire, libpulseaudio, xdg-utils, electron_24, makeDesktopItem }:
 
 buildNpmPackage rec {
   pname = "webcord";
-  version = "4.1.1";
+  version = "4.2.0";
 
   src = fetchFromGitHub {
     owner = "SpacingBat3";
     repo = "WebCord";
     rev = "v${version}";
-    sha256 = "sha256-Buu7eKmI0UGV/9Kfj+urmDcjBtR9HSwW+mlHaYhfUa4=";
+    sha256 = "sha256-530iWNvehImwSYt5HnZaqa4TAslrwxAOZi3gRm1K2/w=";
   };
 
-  npmDepsHash = "sha256-PeoOoEljbkHynjZwocCWCTyYvIvSE1gQiABUzIiXEdM=";
+  npmDepsHash = "sha256-YguZtGn8CT4EqOQWS0GeNGBdZSC3Lj1gFR0ZiegWTJU=";
 
   nativeBuildInputs = [
     copyDesktopItems
@@ -46,7 +46,7 @@ buildNpmPackage rec {
     install -Dm644 sources/assets/icons/app.png $out/share/icons/hicolor/256x256/apps/webcord.png
 
     # Add xdg-utils to path via suffix, per PR #181171
-    makeWrapper '${electron_22}/bin/electron' $out/bin/webcord \
+    makeWrapper '${electron_24}/bin/electron' $out/bin/webcord \
       --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/webcord \
       --suffix PATH : "${lib.makeBinPath [ xdg-utils ]}" \
       --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland}}" \
@@ -73,6 +73,6 @@ buildNpmPackage rec {
     changelog = "https://github.com/SpacingBat3/WebCord/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ huantian ];
-    platforms = electron_22.meta.platforms;
+    platforms = electron_24.meta.platforms;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index 4a9ac6d8f74d6..64b59c745429e 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -48,23 +48,23 @@ let
   # and often with different versions.  We write them on three lines
   # like this (rather than using {}) so that the updater script can
   # find where to edit them.
-  versions.aarch64-darwin = "5.14.2.17213";
-  versions.x86_64-darwin = "5.14.2.17213";
-  versions.x86_64-linux = "5.14.2.2046";
+  versions.aarch64-darwin = "5.14.5.17687";
+  versions.x86_64-darwin = "5.14.5.17687";
+  versions.x86_64-linux = "5.14.5.2430";
 
   srcs = {
     aarch64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64";
       name = "zoomusInstallerFull.pkg";
-      hash = "sha256-jXSjfPIQepSeG5B/CLBHiCbRP1ceczHt+Mu3KYLonkU=";
+      hash = "sha256-cklNvp6q/4yGWpLhDbruGiBHgaQrY5wHwhtsVapRxx4=";
     };
     x86_64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg";
-      hash = "sha256-F/k9NE2GVzn5etkPWCMX80kkyRzVznsKo3rgtztcYn8=";
+      hash = "sha256-1w41TGBqUl8lnl08PglQImSV7JM71khlshacxh1oTJo=";
     };
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz";
-      hash = "sha256-k16JlqabzdNC/UXoPWM2yYzs66rOtJvhExHpjVka5M0=";
+      hash = "sha256-sf7w9P6Gajm8/D7DHo/u5d4kZwjxeJjAE96BUW/e4KE=";
     };
   };
 
diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
index 49e8852fd0ce4..57596342e22fc 100644
--- a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
+++ b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
@@ -22,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution-ews";
-  version = "3.46.4";
+  version = "3.48.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "bLYE99MKkh7MgxA9ZPKOj1+1VcFT9mHSQvayB/9Hy58=";
+    sha256 = "vqakEdZAHXOqTh3oHUN5LwPAQ54DBZxVSn+YTEptmtg=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/hardcode-gsettings.patch b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/hardcode-gsettings.patch
index c5fb77fc2a510..dae88b9e2bae6 100644
--- a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/hardcode-gsettings.patch
+++ b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/hardcode-gsettings.patch
@@ -70,3 +70,27 @@ index ff1b8e3..4f876c0 100644
  	strv = g_settings_get_strv (settings, "labels");
  
  	for (ii = 0; strv && strv[ii]; ii++) {
+diff --git a/src/Microsoft365/common/e-m365-tz-utils.c b/src/Microsoft365/common/e-m365-tz-utils.c
+index 7a1d7f4..3c0d5e1 100644
+--- a/src/Microsoft365/common/e-m365-tz-utils.c
++++ b/src/Microsoft365/common/e-m365-tz-utils.c
+@@ -192,7 +192,18 @@ e_m365_tz_utils_get_user_timezone (void)
+ 	gchar *location;
+ 	ICalTimezone *zone = NULL;
+ 
+-	settings = g_settings_new ("org.gnome.evolution.calendar");
++	{
++		g_autoptr(GSettingsSchemaSource) schema_source;
++		g_autoptr(GSettingsSchema) schema;
++		schema_source = g_settings_schema_source_new_from_directory("@evo@",
++									    g_settings_schema_source_get_default(),
++									    TRUE,
++									    NULL);
++		schema = g_settings_schema_source_lookup(schema_source,
++							 "org.gnome.evolution.calendar",
++							 FALSE);
++		settings = g_settings_new_full(schema, NULL, NULL);
++	}
+ 
+ 	if (g_settings_get_boolean (settings, "use-system-timezone"))
+ 		location = e_cal_util_get_system_timezone_location ();
diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
index a7d902b2d3f9d..1e88f20e78a41 100644
--- a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
+++ b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
@@ -44,11 +44,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution";
-  version = "3.48.0";
+  version = "3.48.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "LYRygZWJ6S78zk8tw70STpPTedMwCXj2mpZTxZKmDvY=";
+    sha256 = "tJpa3u3JGx0yVPAw9affjiYYLjNAzvd3Ecob9FU+5lA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index d7de9e971ea3e..3dccf614fb964 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, lib, stdenv
 , pkg-config, gnupg
-, xapian, gmime, talloc, zlib
+, xapian, gmime3, talloc, zlib
 , doxygen, perl, texinfo
 , notmuch
 , pythonPackages
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gnupg                     # undefined dependencies
-    xapian gmime talloc zlib  # dependencies described in INSTALL
+    xapian gmime3 talloc zlib  # dependencies described in INSTALL
     perl
     pythonPackages.python
   ] ++ lib.optional withRuby ruby;
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
     ln -s ${test-database} test/test-databases/database-v1.tar.xz
   '';
 
-  doCheck = !stdenv.hostPlatform.isDarwin && (lib.versionAtLeast gmime.version "3.0.3");
+  doCheck = !stdenv.hostPlatform.isDarwin && (lib.versionAtLeast gmime3.version "3.0.3");
   checkTarget = "test";
   nativeCheckInputs = [
     which dtach openssl bash
diff --git a/pkgs/applications/networking/mullvad-vpn/default.nix b/pkgs/applications/networking/mullvad-vpn/default.nix
index a3f128a842184..6b505f41560a6 100644
--- a/pkgs/applications/networking/mullvad-vpn/default.nix
+++ b/pkgs/applications/networking/mullvad-vpn/default.nix
@@ -43,11 +43,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mullvad-vpn";
-  version = "2023.2";
+  version = "2023.3";
 
   src = fetchurl {
     url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb";
-    sha256 = "sha256-3evIB8IW0bioRqtpAdCRQhDywu8xPMN1oxhqQGIBANY=";
+    sha256 = "sha256-+XK9xUeSs93egmtsQ7qATug/n9taeQkmc4ZgObPYvn4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/netmaker/default.nix b/pkgs/applications/networking/netmaker/default.nix
index 4268191b42ffb..20c8115a379f7 100644
--- a/pkgs/applications/networking/netmaker/default.nix
+++ b/pkgs/applications/networking/netmaker/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "netmaker";
-  version = "0.17.1";
+  version = "0.18.6";
 
   src = fetchFromGitHub {
     owner = "gravitl";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-8uxPPhy1/FqPGouqzUxY2lGnO/giqH9bJbAqQ9rZI0g=";
+    hash = "sha256-k0cQ82RVzIdru0YOd7GvzFQ+DUciTALQg876thqEoeU=";
   };
 
-  vendorHash = "sha256-4LaGwwDu3pKd6I6r/F3isCi9CuFqPGvc5SdVTV34qOI=";
+  vendorHash = "sha256-hJg2TlLMDNN0FreWXNYiCIvTscgPy4ZDlntcPeIcl6U=";
 
   inherit subPackages;
 
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index d7966e3fc4e5d..68e2bec7ccc38 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -24,11 +24,11 @@
 
 stdenv.mkDerivation rec {
   pname = "liferea";
-  version = "1.14.4";
+  version = "1.15.0";
 
   src = fetchurl {
     url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    sha256 = "MD1Qx+4/y1wdIllHFPuthLZMLiMdox0FFpVE7tcdYu8=";
+    sha256 = "1a7dlwuUOHeCsB+ofAOPlbyuh/QAB8kf50MsocMNz70=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/nextcloud-client/default.nix b/pkgs/applications/networking/nextcloud-client/default.nix
index 373bcc363b59b..701fc6f7b8341 100644
--- a/pkgs/applications/networking/nextcloud-client/default.nix
+++ b/pkgs/applications/networking/nextcloud-client/default.nix
@@ -26,7 +26,7 @@
 
 mkDerivation rec {
   pname = "nextcloud-client";
-  version = "3.8.0";
+  version = "3.8.1";
 
   outputs = [ "out" "dev" ];
 
@@ -34,7 +34,7 @@ mkDerivation rec {
     owner = "nextcloud";
     repo = "desktop";
     rev = "v${version}";
-    sha256 = "sha256-kwSETOz/0/LMypbTmwvMMrGzZdquBjkXfoSrLgTfPiQ=";
+    sha256 = "sha256-BTve1dq+OiUwh/Kiy20iSAyALolkdOX7FHwxvVAdS4U=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/p2p/torrential/default.nix b/pkgs/applications/networking/p2p/torrential/default.nix
index 4cf4e1becf053..cfc10c3f7466f 100644
--- a/pkgs/applications/networking/p2p/torrential/default.nix
+++ b/pkgs/applications/networking/p2p/torrential/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitHub
 , nix-update-script
 , desktop-file-utils
@@ -7,11 +8,11 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook4
 , curl
 , dht
 , glib
-, gtk3
+, gtk4
 , libb64
 , libevent
 , libgee
@@ -25,13 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "torrential";
-  version = "2.0.1";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "davidmhewitt";
     repo = "torrential";
     rev = version;
-    sha256 = "sha256-W9Is6l8y5XSlPER2BLlf+cyMPPdEQuaP4xM59VhfDE0=";
+    sha256 = "sha256-uHc/VNtbhetmGyuhynZH1TvxJscVX17eWO6dzX6Ft3A=";
   };
 
   nativeBuildInputs = [
@@ -41,14 +42,14 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
     curl
     dht
     glib
-    gtk3
+    gtk4
     libb64
     libevent
     libgee
@@ -57,12 +58,15 @@ stdenv.mkDerivation rec {
     libutp
     miniupnpc
     openssl
-    pantheon.granite
+    pantheon.granite7
   ];
 
   postPatch = ''
     chmod +x meson/post_install.py
     patchShebangs meson/post_install.py
+
+    substituteInPlace meson/post_install.py \
+      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
   '';
 
   passthru = {
diff --git a/pkgs/applications/networking/pcloud/default.nix b/pkgs/applications/networking/pcloud/default.nix
index 2071521266b38..403d1e0cf341a 100644
--- a/pkgs/applications/networking/pcloud/default.nix
+++ b/pkgs/applications/networking/pcloud/default.nix
@@ -3,7 +3,7 @@
 # of applications.
 #
 # What Nix does, simplifying a bit, is that it extracts an AppImage and starts
-# it via buildFHSUserEnv - this is totally fine for majority of apps, but makes
+# it via buildFHSEnv - this is totally fine for majority of apps, but makes
 # it by-design *impossible* to launch SUID wrappers [^1]; in case of pCloud,
 # it's fusermount.
 # (so pCloud starts, but silently fails to mount the FUSE drive.)
diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix
index db76d3f58611c..11462dab9a1bd 100644
--- a/pkgs/applications/networking/pjsip/default.nix
+++ b/pkgs/applications/networking/pjsip/default.nix
@@ -1,4 +1,5 @@
 { lib
+, testers
 , stdenv
 , fetchFromGitHub
 , fetchpatch
@@ -11,17 +12,16 @@
 , Security
 , python3
 , pythonSupport ? true
-, pjsip
 , runCommand
 }:
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "pjsip";
   version = "2.13";
 
   src = fetchFromGitHub {
-    owner = pname;
+    owner = finalAttrs.pname;
     repo = "pjproject";
-    rev = version;
+    rev = finalAttrs.version;
     sha256 = "sha256-yzszmm3uIyXtYFgZtUP3iswLx4u/8UbFt80Ln25ToFE=";
   };
 
@@ -64,8 +64,8 @@ stdenv.mkDerivation rec {
   postInstall = ''
     mkdir -p $out/bin
     cp pjsip-apps/bin/pjsua-* $out/bin/pjsua
-    mkdir -p $out/share/${pname}-${version}/samples
-    cp pjsip-apps/bin/samples/*/* $out/share/${pname}-${version}/samples
+    mkdir -p $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples
+    cp pjsip-apps/bin/samples/*/* $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples
   '' + lib.optionalString pythonSupport ''
     (cd pjsip-apps/src/swig/python && \
       python setup.py install --prefix=$py
@@ -98,11 +98,26 @@ stdenv.mkDerivation rec {
         install_name_tool -id $lib "''${change_args[@]}" $lib
       fi
     done
+
+    # Rewrite library references for all executables.
+    find "$out" -executable -type f | while read executable; do
+      install_name_tool "''${change_args[@]}" "$executable"
+    done
   '';
 
   # We need the libgcc_s.so.1 loadable (for pthread_cancel to work)
   dontPatchELF = true;
 
+  passthru.tests.version = testers.testVersion {
+    package = finalAttrs.finalPackage;
+    command = "pjsua --version";
+  };
+
+  passthru.tests.pkg-config = testers.hasPkgConfigModule {
+    package = finalAttrs.finalPackage;
+    moduleName = "libpjproject";
+  };
+
   passthru.tests.python-pjsua2 = runCommand "python-pjsua2" { } ''
     ${(python3.withPackages (pkgs: [ pkgs.pjsua2 ])).interpreter} -c "import pjsua2" > $out
   '';
@@ -115,4 +130,4 @@ stdenv.mkDerivation rec {
     mainProgram = "pjsua";
     platforms = platforms.linux ++ platforms.darwin;
   };
-}
+})
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index f1abf58348371..a76bad22c9e2d 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.4.29";
+  version = "1.4.30";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "sha256-8B19rqbOYY+lS3Q/vh3Eu696KW03SOvlP9dgXPYYDiU=";
+    sha256 = "sha256-VYBolB6VJ3lT/rNl87qMW5DU5rdFCNvKezSLzx5y1JI=";
   };
 
   nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
diff --git a/pkgs/applications/networking/remote/vmware-horizon-client/default.nix b/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
index 3841c4af45398..6b6e152efab32 100644
--- a/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
+++ b/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
@@ -1,10 +1,11 @@
 { stdenv
 , lib
-, buildFHSUserEnv
+, buildFHSEnvChroot
 , fetchurl
 , gsettings-desktop-schemas
 , makeDesktopItem
 , makeWrapper
+, opensc
 , writeTextDir
 , configText ? ""
 }:
@@ -53,11 +54,16 @@ let
       # This library causes the program to core-dump occasionally. Use ours instead.
       rm -r $out/lib/vmware/view/crtbora
 
+      # This opensc library is required to support smartcard authentication during the
+      # initial connection to Horizon.
+      mkdir $out/lib/vmware/view/pkcs11
+      ln -s ${opensc}/lib/pkcs11/opensc-pkcs11.so $out/lib/vmware/view/pkcs11/libopenscpkcs11.so
+
       ${lib.concatMapStrings wrapBinCommands bins}
     '';
   };
 
-  vmwareFHSUserEnv = name: buildFHSUserEnv {
+  vmwareFHSUserEnv = name: buildFHSEnvChroot {
     inherit name;
 
     runScript = "${vmwareHorizonClientFiles}/bin/${name}_wrapper";
diff --git a/pkgs/applications/networking/seaweedfs/default.nix b/pkgs/applications/networking/seaweedfs/default.nix
index 24923c3e6be9c..433519cb7e2fa 100644
--- a/pkgs/applications/networking/seaweedfs/default.nix
+++ b/pkgs/applications/networking/seaweedfs/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "seaweedfs";
-  version = "3.45";
+  version = "3.46";
 
   src = fetchFromGitHub {
     owner = "seaweedfs";
     repo = "seaweedfs";
     rev = version;
-    hash = "sha256-sWomfombHGFhiLmVX56GOc2QDzj5Q2W7qHVgJ3lRxoU=";
+    hash = "sha256-ur4GAgGyqbot3Z8GsJLAj6WUJJ0C7slubemJL021gLM=";
   };
 
-  vendorHash = "sha256-/sL5W9UmvHnp6OD3kmray8fty85v9fcS7R0A/K2PZLg=";
+  vendorHash = "sha256-9DH/mkISdJCacpB8Nt9DA9fyHqOEdH1GpFZ6TuRQgAQ=";
 
   subPackages = [ "weed" ];
 
diff --git a/pkgs/applications/networking/sniffnet/default.nix b/pkgs/applications/networking/sniffnet/default.nix
index 0fc2167f02a93..95c85d95d647b 100644
--- a/pkgs/applications/networking/sniffnet/default.nix
+++ b/pkgs/applications/networking/sniffnet/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sniffnet";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "gyulyvgc";
     repo = "sniffnet";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sJUc14MXaCS4OHtwdCuwI1b7NAlOnaGsXBNUYCEXJqQ=";
+    hash = "sha256-8G6cfp5/eXjwyNBk2SvE2XmUt7Y42E76IjDU5QHUK7s=";
   };
 
-  cargoHash = "sha256-neRVpJmI4TgzvIQqKNqBr61O7rR8246PcxG50IIKE/M=";
+  cargoHash = "sha256-KN7jlB6PzRGpHBk5UvqPLhxRG7QAzOXLmEuFYNhdZJU=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/applications/networking/warp/Cargo.lock b/pkgs/applications/networking/warp/Cargo.lock
deleted file mode 100644
index b156ce488d56a..0000000000000
--- a/pkgs/applications/networking/warp/Cargo.lock
+++ /dev/null
@@ -1,3476 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "addr2line"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "aead"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877"
-dependencies = [
- "generic-array",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "aes"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8"
-dependencies = [
- "cfg-if",
- "cipher",
- "cpufeatures",
- "opaque-debug",
-]
-
-[[package]]
-name = "aes-gcm"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df5f85a83a7d8b0442b6aa7b504b8212c1733da07b98aae43d4bc21b2cb3cdf6"
-dependencies = [
- "aead",
- "aes",
- "cipher",
- "ctr",
- "ghash",
- "subtle",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "android_system_properties"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.68"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61"
-
-[[package]]
-name = "arrayvec"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
-
-[[package]]
-name = "async-attributes"
-version = "1.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3203e79f4dd9bdda415ed03cf14dae5a2bf775c683a00f94e9cd1faf0f596e5"
-dependencies = [
- "quote",
- "syn",
-]
-
-[[package]]
-name = "async-broadcast"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b19760fa2b7301cf235360ffd6d3558b1ed4249edd16d6cca8d690cee265b95"
-dependencies = [
- "event-listener",
- "futures-core",
- "parking_lot",
-]
-
-[[package]]
-name = "async-channel"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833"
-dependencies = [
- "concurrent-queue",
- "event-listener",
- "futures-core",
-]
-
-[[package]]
-name = "async-executor"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b"
-dependencies = [
- "async-lock",
- "async-task",
- "concurrent-queue",
- "fastrand",
- "futures-lite",
- "slab",
-]
-
-[[package]]
-name = "async-fs"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06"
-dependencies = [
- "async-lock",
- "autocfg",
- "blocking",
- "futures-lite",
-]
-
-[[package]]
-name = "async-global-executor"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776"
-dependencies = [
- "async-channel",
- "async-executor",
- "async-io",
- "async-lock",
- "blocking",
- "futures-lite",
- "once_cell",
-]
-
-[[package]]
-name = "async-io"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794"
-dependencies = [
- "async-lock",
- "autocfg",
- "concurrent-queue",
- "futures-lite",
- "libc",
- "log",
- "parking",
- "polling",
- "slab",
- "socket2",
- "waker-fn",
- "windows-sys",
-]
-
-[[package]]
-name = "async-lock"
-version = "2.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8101efe8695a6c17e02911402145357e718ac92d3ff88ae8419e84b1707b685"
-dependencies = [
- "event-listener",
- "futures-lite",
-]
-
-[[package]]
-name = "async-net"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4051e67316bc7eff608fe723df5d32ed639946adcd69e07df41fd42a7b411f1f"
-dependencies = [
- "async-io",
- "autocfg",
- "blocking",
- "futures-lite",
-]
-
-[[package]]
-name = "async-process"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6381ead98388605d0d9ff86371043b5aa922a3905824244de40dc263a14fcba4"
-dependencies = [
- "async-io",
- "async-lock",
- "autocfg",
- "blocking",
- "cfg-if",
- "event-listener",
- "futures-lite",
- "libc",
- "signal-hook",
- "windows-sys",
-]
-
-[[package]]
-name = "async-recursion"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b015a331cc64ebd1774ba119538573603427eaace0a1950c423ab971f903796"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "async-std"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d"
-dependencies = [
- "async-attributes",
- "async-channel",
- "async-global-executor",
- "async-io",
- "async-lock",
- "async-process",
- "crossbeam-utils",
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-lite",
- "gloo-timers",
- "kv-log-macro",
- "log",
- "memchr",
- "once_cell",
- "pin-project-lite",
- "pin-utils",
- "slab",
- "wasm-bindgen-futures",
-]
-
-[[package]]
-name = "async-tar"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c49359998a76e32ef6e870dbc079ebad8f1e53e8441c5dd39d27b44493fe331"
-dependencies = [
- "async-std",
- "filetime",
- "libc",
- "pin-project",
- "redox_syscall",
- "xattr",
-]
-
-[[package]]
-name = "async-task"
-version = "4.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
-
-[[package]]
-name = "async-tls"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f23d769dbf1838d5df5156e7b1ad404f4c463d1ac2c6aeb6cd943630f8a8400"
-dependencies = [
- "futures-core",
- "futures-io",
- "rustls",
- "webpki",
- "webpki-roots",
-]
-
-[[package]]
-name = "async-trait"
-version = "0.1.62"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "689894c2db1ea643a50834b999abf1c110887402542955ff5451dab8f861f9ed"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "async-tungstenite"
-version = "0.17.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1b71b31561643aa8e7df3effe284fa83ab1a840e52294c5f4bd7bfd8b2becbb"
-dependencies = [
- "async-std",
- "async-tls",
- "futures-io",
- "futures-util",
- "log",
- "pin-project-lite",
- "tungstenite",
-]
-
-[[package]]
-name = "atomic-waker"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "debc29dde2e69f9e47506b525f639ed42300fc014a3e007832592448fa8e4599"
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "backtrace"
-version = "0.3.67"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca"
-dependencies = [
- "addr2line",
- "cc",
- "cfg-if",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
-]
-
-[[package]]
-name = "base64"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-
-[[package]]
-name = "base64"
-version = "0.20.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ea22880d78093b0cbe17c89f64a7d457941e65759157ec6cb31a31d652b05e5"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "blake2"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
-dependencies = [
- "digest 0.10.6",
-]
-
-[[package]]
-name = "block"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
-
-[[package]]
-name = "block-buffer"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "blocking"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c67b173a56acffd6d2326fb7ab938ba0b00a71480e14902b2591c87bc5741e8"
-dependencies = [
- "async-channel",
- "async-lock",
- "async-task",
- "atomic-waker",
- "fastrand",
- "futures-lite",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
-
-[[package]]
-name = "bytecodec"
-version = "0.4.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adf4c9d0bbf32eea58d7c0f812058138ee8edaf0f2802b6d03561b504729a325"
-dependencies = [
- "byteorder",
- "trackable 0.2.24",
-]
-
-[[package]]
-name = "bytemuck"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393"
-
-[[package]]
-name = "byteorder"
-version = "1.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
-[[package]]
-name = "bytes"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c"
-
-[[package]]
-name = "bzip2"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
-dependencies = [
- "bzip2-sys",
- "libc",
-]
-
-[[package]]
-name = "bzip2-sys"
-version = "0.1.11+1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
-dependencies = [
- "cc",
- "libc",
- "pkg-config",
-]
-
-[[package]]
-name = "cache-padded"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c"
-
-[[package]]
-name = "cairo-rs"
-version = "0.16.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3125b15ec28b84c238f6f476c6034016a5f6cc0221cb514ca46c532139fc97d"
-dependencies = [
- "bitflags",
- "cairo-sys-rs",
- "glib",
- "libc",
- "once_cell",
- "thiserror",
-]
-
-[[package]]
-name = "cairo-sys-rs"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48f4af05fabdcfa9658178e1326efa061853f040ce7d72e33af6885196f421"
-dependencies = [
- "glib-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.78"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
-
-[[package]]
-name = "cfg-expr"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa"
-dependencies = [
- "smallvec",
-]
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chacha20"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c80e5460aa66fe3b91d40bcbdab953a597b60053e34d684ac6903f863b680a6"
-dependencies = [
- "cfg-if",
- "cipher",
- "cpufeatures",
- "zeroize",
-]
-
-[[package]]
-name = "chacha20poly1305"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18446b09be63d457bbec447509e85f662f32952b035ce892290396bc0b0cff5"
-dependencies = [
- "aead",
- "chacha20",
- "cipher",
- "poly1305",
- "zeroize",
-]
-
-[[package]]
-name = "checked_int_cast"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cc5e6b5ab06331c33589842070416baa137e8b0eb912b008cfd4a78ada7919"
-
-[[package]]
-name = "chrono"
-version = "0.4.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
-dependencies = [
- "iana-time-zone",
- "js-sys",
- "num-integer",
- "num-traits",
- "time 0.1.45",
- "wasm-bindgen",
- "winapi",
-]
-
-[[package]]
-name = "cipher"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "codespan-reporting"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
-dependencies = [
- "termcolor",
- "unicode-width",
-]
-
-[[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "concurrent-queue"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e"
-dependencies = [
- "crossbeam-utils",
-]
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
-
-[[package]]
-name = "cpufeatures"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "crc"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49fc9a695bca7f35f5f4c15cddc84415f66a74ea78eef08e90c5024f2b540e23"
-dependencies = [
- "crc-catalog",
-]
-
-[[package]]
-name = "crc-catalog"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccaeedb56da03b09f598226e25e80088cb4cd25f316e6e4df7d695f0feeb1403"
-
-[[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-utils"
-version = "0.8.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
-dependencies = [
- "cfg-if",
-]
-
-[[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 = "ctor"
-version = "0.1.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
-dependencies = [
- "quote",
- "syn",
-]
-
-[[package]]
-name = "ctr"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "curve25519-dalek"
-version = "3.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90f9d052967f590a76e62eb387bd0bbb1b000182c3cefe5364db6b7211651bc0"
-dependencies = [
- "byteorder",
- "digest 0.9.0",
- "rand_core 0.5.1",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "cxx"
-version = "1.0.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b61a7545f753a88bcbe0a70de1fcc0221e10bfc752f576754fa91e663db1622e"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f464457d494b5ed6905c63b0c4704842aba319084a0a3561cdc1359536b53200"
-dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43c7119ce3a3701ed81aca8410b9acf6fc399d2629d057b87e2efa4e63a3aaea"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e07508b90551e610910fa648a1878991d367064997a596135b86df30daf07e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "darling"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858"
-dependencies = [
- "darling_core",
- "darling_macro",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim",
- "syn",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72"
-dependencies = [
- "darling_core",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "derivative"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "derive_more"
-version = "0.99.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "digest"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "digest"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
-dependencies = [
- "block-buffer",
- "crypto-common",
- "subtle",
-]
-
-[[package]]
-name = "dirs"
-version = "4.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
-name = "enumflags2"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb"
-dependencies = [
- "enumflags2_derive",
- "serde",
-]
-
-[[package]]
-name = "enumflags2_derive"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "errno"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "event-listener"
-version = "2.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
-
-[[package]]
-name = "fastrand"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "field-offset"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
-dependencies = [
- "memoffset",
- "rustc_version 0.3.3",
-]
-
-[[package]]
-name = "filetime"
-version = "0.2.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e884668cd0c7480504233e951174ddc3b382f7c2666e3b7310b5c4e7b0c37f9"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall",
- "windows-sys",
-]
-
-[[package]]
-name = "flate2"
-version = "1.0.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
-dependencies = [
- "crc32fast",
- "miniz_oxide",
-]
-
-[[package]]
-name = "fnv"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-[[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 = "futures"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-channel"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
-dependencies = [
- "futures-core",
- "futures-sink",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
-
-[[package]]
-name = "futures-executor"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-io"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
-
-[[package]]
-name = "futures-lite"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
-dependencies = [
- "fastrand",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
-
-[[package]]
-name = "futures-macro"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "futures-sink"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
-
-[[package]]
-name = "futures-task"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
-
-[[package]]
-name = "futures-util"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-macro",
- "futures-sink",
- "futures-task",
- "memchr",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "futures_ringbuf"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b905098b5519bd63b2a1f9f4615198b0e38a473ce201ffdbd4dea6eb63087ddc"
-dependencies = [
- "futures",
- "log",
- "log-derive",
- "ringbuf",
- "rustc_version 0.4.0",
-]
-
-[[package]]
-name = "gdk-pixbuf"
-version = "0.16.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3578c60dee9d029ad86593ed88cb40f35c1b83360e12498d055022385dd9a05"
-dependencies = [
- "bitflags",
- "gdk-pixbuf-sys",
- "gio",
- "glib",
- "libc",
-]
-
-[[package]]
-name = "gdk-pixbuf-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3092cf797a5f1210479ea38070d9ae8a5b8e9f8f1be9f32f4643c529c7d70016"
-dependencies = [
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "gdk4"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2181330ebf9d091f8ea7fed6877f7adc92114128592e1fdaeb1da28e0d01e9"
-dependencies = [
- "bitflags",
- "cairo-rs",
- "gdk-pixbuf",
- "gdk4-sys",
- "gio",
- "glib",
- "libc",
- "pango",
-]
-
-[[package]]
-name = "gdk4-sys"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de55cb49432901fe2b3534177fa06844665b9b0911d85d8601a8d8b88b7791db"
-dependencies = [
- "cairo-sys-rs",
- "gdk-pixbuf-sys",
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "libc",
- "pango-sys",
- "pkg-config",
- "system-deps",
-]
-
-[[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 = "getrandom"
-version = "0.1.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
-]
-
-[[package]]
-name = "gettext-rs"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
-dependencies = [
- "gettext-sys",
- "locale_config",
-]
-
-[[package]]
-name = "gettext-sys"
-version = "0.21.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d"
-dependencies = [
- "cc",
- "temp-dir",
-]
-
-[[package]]
-name = "ghash"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99"
-dependencies = [
- "opaque-debug",
- "polyval",
-]
-
-[[package]]
-name = "gimli"
-version = "0.27.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dec7af912d60cdbd3677c1af9352ebae6fb8394d165568a2234df0fa00f87793"
-
-[[package]]
-name = "gio"
-version = "0.16.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a1c84b4534a290a29160ef5c6eff2a9c95833111472e824fc5cb78b513dd092"
-dependencies = [
- "bitflags",
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-util",
- "gio-sys",
- "glib",
- "libc",
- "once_cell",
- "pin-project-lite",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gio-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9b693b8e39d042a95547fc258a7b07349b1f0b48f4b2fa3108ba3c51c0b5229"
-dependencies = [
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
- "winapi",
-]
-
-[[package]]
-name = "glib"
-version = "0.16.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddd4df61a866ed7259d6189b8bcb1464989a77f1d85d25d002279bbe9dd38b2f"
-dependencies = [
- "bitflags",
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-task",
- "futures-util",
- "gio-sys",
- "glib-macros",
- "glib-sys",
- "gobject-sys",
- "libc",
- "once_cell",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "glib-macros"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e084807350b01348b6d9dbabb724d1a0bb987f47a2c85de200e98e12e30733bf"
-dependencies = [
- "anyhow",
- "heck",
- "proc-macro-crate",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "glib-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61a4f46316d06bfa33a7ac22df6f0524c8be58e3db2d9ca99ccb1f357b62a65"
-dependencies = [
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "gloo-timers"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"
-dependencies = [
- "futures-channel",
- "futures-core",
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "gobject-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3520bb9c07ae2a12c7f2fbb24d4efc11231c8146a86956413fb1a79bb760a0f1"
-dependencies = [
- "glib-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "graphene-rs"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ecb4d347e6d09820df3bdfd89a74a8eec07753a06bb92a3aac3ad31d04447b"
-dependencies = [
- "glib",
- "graphene-sys",
- "libc",
-]
-
-[[package]]
-name = "graphene-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9aa82337d3972b4eafdea71e607c23f47be6f27f749aab613f1ad8ddbe6dcd6"
-dependencies = [
- "glib-sys",
- "libc",
- "pkg-config",
- "system-deps",
-]
-
-[[package]]
-name = "gsk4"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "591239f5c52ca803b222124ac9c47f230cd180cee9b114c4d672e4a94b74f491"
-dependencies = [
- "bitflags",
- "cairo-rs",
- "gdk4",
- "glib",
- "graphene-rs",
- "gsk4-sys",
- "libc",
- "pango",
-]
-
-[[package]]
-name = "gsk4-sys"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "195a63f0be42529f98c3eb3bae0decfd0428ba2cc683b3e20ced88f340904ec5"
-dependencies = [
- "cairo-sys-rs",
- "gdk4-sys",
- "glib-sys",
- "gobject-sys",
- "graphene-sys",
- "libc",
- "pango-sys",
- "system-deps",
-]
-
-[[package]]
-name = "gtk4"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd89dba65def483a233dc4fdd3f3dab01576e3d83f80f6c9303ebe421661855e"
-dependencies = [
- "bitflags",
- "cairo-rs",
- "field-offset",
- "futures-channel",
- "gdk-pixbuf",
- "gdk4",
- "gio",
- "glib",
- "graphene-rs",
- "gsk4",
- "gtk4-macros",
- "gtk4-sys",
- "libc",
- "once_cell",
- "pango",
-]
-
-[[package]]
-name = "gtk4-macros"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "832687a415d9d8bc11fe9c17dda1bf13ee262c41b995dd4df1d1cce33cead405"
-dependencies = [
- "anyhow",
- "proc-macro-crate",
- "proc-macro-error",
- "proc-macro2",
- "quick-xml",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "gtk4-sys"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e370564e3fdacff7cffc99f7366b6a4689feb44e819d3ccee598a9a215b71605"
-dependencies = [
- "cairo-sys-rs",
- "gdk-pixbuf-sys",
- "gdk4-sys",
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "graphene-sys",
- "gsk4-sys",
- "libc",
- "pango-sys",
- "system-deps",
-]
-
-[[package]]
-name = "gvdb"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45a25bb788ebbe56697e340805b370e1ec0851be6308f2c883f07c7ccaeaa7dd"
-dependencies = [
- "byteorder",
- "flate2",
- "json",
- "memmap2",
- "safe-transmute",
- "serde",
- "serde-xml-rs",
- "walkdir",
- "xml-rs",
- "zvariant",
-]
-
-[[package]]
-name = "gvdb-macros"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e10e4d0758e2231af146c92815f59233acb78d8c0f58c0bbf7bd496e5fde0d01"
-dependencies = [
- "gvdb",
- "litrs",
- "proc-macro2",
- "quote",
-]
-
-[[package]]
-name = "heck"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "hkdf"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437"
-dependencies = [
- "hmac",
-]
-
-[[package]]
-name = "hmac"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
-dependencies = [
- "digest 0.10.6",
-]
-
-[[package]]
-name = "hmac-sha1"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1333fad8d94b82cab989da428b0b36a3435db3870d85e971a1d6dc0a8576722"
-dependencies = [
- "sha1 0.2.0",
-]
-
-[[package]]
-name = "http"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399"
-dependencies = [
- "bytes",
- "fnv",
- "itoa",
-]
-
-[[package]]
-name = "httparse"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
-
-[[package]]
-name = "humantime"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
-dependencies = [
- "quick-error",
-]
-
-[[package]]
-name = "iana-time-zone"
-version = "0.1.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
-dependencies = [
- "android_system_properties",
- "core-foundation-sys",
- "iana-time-zone-haiku",
- "js-sys",
- "wasm-bindgen",
- "winapi",
-]
-
-[[package]]
-name = "iana-time-zone-haiku"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
-dependencies = [
- "cxx",
- "cxx-build",
-]
-
-[[package]]
-name = "ident_case"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
-
-[[package]]
-name = "idna"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "if-addrs"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbc0fa01ffc752e9dbc72818cdb072cd028b86be5e09dd04c5a643704fe101a9"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "image"
-version = "0.23.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "num-iter",
- "num-rational",
- "num-traits",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7d6c6f8c91b4b9ed43484ad1a938e393caf35960fce7f82a040497207bd8e9e"
-dependencies = [
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
-
-[[package]]
-name = "js-sys"
-version = "0.3.60"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "json"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd"
-
-[[package]]
-name = "kv-log-macro"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f"
-dependencies = [
- "log",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libadwaita"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dfa0722d4f1724f661cbf668c273c5926296ca411ed3814e206f8fd082b6c48"
-dependencies = [
- "bitflags",
- "futures-channel",
- "gdk-pixbuf",
- "gdk4",
- "gio",
- "glib",
- "gtk4",
- "libadwaita-sys",
- "libc",
- "once_cell",
- "pango",
-]
-
-[[package]]
-name = "libadwaita-sys"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de902982372b454a0081d7fd9dd567b37b73ae29c8f6da1820374d345fd95d5b"
-dependencies = [
- "gdk4-sys",
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "gtk4-sys",
- "libc",
- "pango-sys",
- "system-deps",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.139"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
-
-[[package]]
-name = "link-cplusplus"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
-
-[[package]]
-name = "litrs"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9275e0933cf8bb20f008924c0cb07a0692fe54d8064996520bf998de9eb79aa"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "locale_config"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
-dependencies = [
- "lazy_static",
- "objc",
- "objc-foundation",
- "regex",
- "winapi",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "log"
-version = "0.4.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
- "value-bag",
-]
-
-[[package]]
-name = "log-derive"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a42526bb432bcd1b43571d5f163984effa25409a29f1a3242a54d0577d55bcf"
-dependencies = [
- "darling",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "magic-wormhole"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "803ddb5f8d832299be44336b5b2ddf1c10952999498247dd516b5757be2b51c7"
-dependencies = [
- "async-io",
- "async-std",
- "async-tar",
- "async-trait",
- "async-tungstenite",
- "base64 0.20.0",
- "bytecodec",
- "derive_more",
- "futures",
- "futures_ringbuf",
- "hex",
- "hkdf",
- "if-addrs",
- "libc",
- "log",
- "noise-protocol",
- "noise-rust-crypto",
- "percent-encoding",
- "rand",
- "rmp-serde",
- "serde",
- "serde_derive",
- "serde_json",
- "sha-1",
- "sha2",
- "socket2",
- "spake2",
- "stun_codec",
- "thiserror",
- "time 0.3.17",
- "url",
- "xsalsa20poly1305",
-]
-
-[[package]]
-name = "malloc_buf"
-version = "0.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "md5"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771"
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memmap2"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b182332558b18d807c4ce1ca8ca983b34c3ee32765e47b3f0f69b90355cc1dc"
-dependencies = [
- "libc",
-]
-
-[[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.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "nix"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
-dependencies = [
- "autocfg",
- "bitflags",
- "cfg-if",
- "libc",
- "memoffset",
- "pin-utils",
-]
-
-[[package]]
-name = "noise-protocol"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb474d36dfe51bb4d7e733fee2b0dfd92ee1b95c716030a70e92737dea1a52b"
-dependencies = [
- "arrayvec",
-]
-
-[[package]]
-name = "noise-rust-crypto"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e7cfeb8e6a63b4a5ccef34ed7a22d084a129b1e53a000c080bbc54c0da6f8c"
-dependencies = [
- "aes-gcm",
- "blake2",
- "chacha20poly1305",
- "getrandom 0.2.8",
- "noise-protocol",
- "sha2",
- "x25519-dalek",
- "zeroize",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "objc"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
-dependencies = [
- "malloc_buf",
-]
-
-[[package]]
-name = "objc-foundation"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
-dependencies = [
- "block",
- "objc",
- "objc_id",
-]
-
-[[package]]
-name = "objc_id"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
-dependencies = [
- "objc",
-]
-
-[[package]]
-name = "object"
-version = "0.30.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b8c786513eb403643f2a88c244c2aaa270ef2153f55094587d0c48a3cf22a83"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66"
-
-[[package]]
-name = "opaque-debug"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
-[[package]]
-name = "ordered-stream"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4eb9ba3f3e42dbdd3b7b122de5ca169c81e93d561eb900da3a8c99bcfcf381a"
-dependencies = [
- "futures-core",
- "pin-project-lite",
-]
-
-[[package]]
-name = "pango"
-version = "0.16.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdff66b271861037b89d028656184059e03b0b6ccb36003820be19f7200b1e94"
-dependencies = [
- "bitflags",
- "gio",
- "glib",
- "libc",
- "once_cell",
- "pango-sys",
-]
-
-[[package]]
-name = "pango-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e134909a9a293e04d2cc31928aa95679c5e4df954d0b85483159bd20d8f047f"
-dependencies = [
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "parking"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-
-[[package]]
-name = "parking_lot"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
-dependencies = [
- "lock_api",
- "parking_lot_core",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall",
- "smallvec",
- "windows-sys",
-]
-
-[[package]]
-name = "paste"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
-
-[[package]]
-name = "percent-encoding"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
-
-[[package]]
-name = "pest"
-version = "2.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4257b4a04d91f7e9e6290be5d3da4804dd5784fafde3a497d73eb2b4a158c30a"
-dependencies = [
- "thiserror",
- "ucd-trie",
-]
-
-[[package]]
-name = "pin-project"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc"
-dependencies = [
- "pin-project-internal",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "pkg-config"
-version = "0.3.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
-
-[[package]]
-name = "polling"
-version = "2.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6"
-dependencies = [
- "autocfg",
- "cfg-if",
- "libc",
- "log",
- "wepoll-ffi",
- "windows-sys",
-]
-
-[[package]]
-name = "poly1305"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede"
-dependencies = [
- "cpufeatures",
- "opaque-debug",
- "universal-hash",
-]
-
-[[package]]
-name = "polyval"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "opaque-debug",
- "universal-hash",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
-
-[[package]]
-name = "pretty_env_logger"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "926d36b9553851b8b0005f1275891b392ee4d2d833852c417ed025477350fb9d"
-dependencies = [
- "env_logger",
- "log",
-]
-
-[[package]]
-name = "proc-macro-crate"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eda0fc3b0fb7c975631757e14d9049da17374063edb6ebbcbc54d880d4fe94e9"
-dependencies = [
- "once_cell",
- "thiserror",
- "toml",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.50"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "qrcode"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16d2f1455f3630c6e5107b4f2b94e74d76dea80736de0981fd27644216cff57f"
-dependencies = [
- "checked_int_cast",
- "image",
-]
-
-[[package]]
-name = "quick-error"
-version = "1.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-
-[[package]]
-name = "quick-xml"
-version = "0.27.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc053f057dd768a56f62cd7e434c42c831d296968997e9ac1f76ea7c2d14c41"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.16",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom 0.2.8",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
-dependencies = [
- "getrandom 0.2.8",
- "redox_syscall",
- "thiserror",
-]
-
-[[package]]
-name = "regex"
-version = "1.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
-
-[[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 = "ringbuf"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f65af18d50f789e74aaf23bbb3f65dcd22a3cb6e029b5bced149f6bd57c5c2a2"
-dependencies = [
- "cache-padded",
-]
-
-[[package]]
-name = "rmp"
-version = "0.8.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44519172358fd6d58656c86ab8e7fbc9e1490c3e8f14d35ed78ca0dd07403c9f"
-dependencies = [
- "byteorder",
- "num-traits",
- "paste",
-]
-
-[[package]]
-name = "rmp-serde"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5b13be192e0220b8afb7222aa5813cb62cc269ebb5cac346ca6487681d2913e"
-dependencies = [
- "byteorder",
- "rmp",
- "serde",
-]
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342"
-
-[[package]]
-name = "rustc_version"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
-dependencies = [
- "semver 0.11.0",
-]
-
-[[package]]
-name = "rustc_version"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
-dependencies = [
- "semver 1.0.16",
-]
-
-[[package]]
-name = "rustix"
-version = "0.36.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03"
-dependencies = [
- "bitflags",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
-
-[[package]]
-name = "rustls"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7"
-dependencies = [
- "base64 0.13.1",
- "log",
- "ring",
- "sct",
- "webpki",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
-
-[[package]]
-name = "safe-transmute"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98a01dab6acf992653be49205bdd549f32f17cb2803e8eacf1560bf97259aae8"
-
-[[package]]
-name = "salsa20"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c0fbb5f676da676c260ba276a8f43a8dc67cf02d1438423aeb1c677a7212686"
-dependencies = [
- "cipher",
- "zeroize",
-]
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "scratch"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
-
-[[package]]
-name = "sct"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "semver"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
-dependencies = [
- "semver-parser",
-]
-
-[[package]]
-name = "semver"
-version = "1.0.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a"
-
-[[package]]
-name = "semver-parser"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
-dependencies = [
- "pest",
-]
-
-[[package]]
-name = "serde"
-version = "1.0.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde-xml-rs"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb3aa78ecda1ebc9ec9847d5d3aba7d618823446a049ba2491940506da6e2782"
-dependencies = [
- "log",
- "serde",
- "thiserror",
- "xml-rs",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_repr"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.6",
-]
-
-[[package]]
-name = "sha1"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc30b1e1e8c40c121ca33b86c23308a090d19974ef001b4bf6e61fd1a0fb095c"
-
-[[package]]
-name = "sha1"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.6",
-]
-
-[[package]]
-name = "sha2"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
-dependencies = [
- "cfg-if",
- "cpufeatures",
- "digest 0.10.6",
-]
-
-[[package]]
-name = "signal-hook"
-version = "0.3.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d"
-dependencies = [
- "libc",
- "signal-hook-registry",
-]
-
-[[package]]
-name = "signal-hook-registry"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "simple_moving_average"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdd19d3808aad2604c824399fd270260d634678b010328c9d96851bb0fb63121"
-dependencies = [
- "num-traits",
-]
-
-[[package]]
-name = "slab"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
-
-[[package]]
-name = "smol"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1"
-dependencies = [
- "async-channel",
- "async-executor",
- "async-fs",
- "async-io",
- "async-lock",
- "async-net",
- "async-process",
- "blocking",
- "futures-lite",
-]
-
-[[package]]
-name = "socket2"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "spake2"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7139ade210556eca57dfc299ec2454846ab6be09232eb1139a36e285ae7fd48e"
-dependencies = [
- "curve25519-dalek",
- "hkdf",
- "rand_core 0.5.1",
- "sha2",
-]
-
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "strsim"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
-
-[[package]]
-name = "stun_codec"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f1df6c4e592afc1ffed8f4bc50ab9f4d70cfccb42829662b7d276247cbef3b1"
-dependencies = [
- "bytecodec",
- "byteorder",
- "crc",
- "hmac-sha1",
- "md5",
- "trackable 1.2.0",
-]
-
-[[package]]
-name = "subtle"
-version = "2.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
-
-[[package]]
-name = "syn"
-version = "1.0.107"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "synstructure"
-version = "0.12.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "unicode-xid",
-]
-
-[[package]]
-name = "system-deps"
-version = "6.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff"
-dependencies = [
- "cfg-expr",
- "heck",
- "pkg-config",
- "toml",
- "version-compare",
-]
-
-[[package]]
-name = "temp-dir"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
-
-[[package]]
-name = "tempfile"
-version = "3.3.0"
-source = "git+https://github.com/Stebalien/tempfile.git#1c6149d7ce33b2ad8b20a38a8ddce0fc29f68f0e"
-dependencies = [
- "cfg-if",
- "fastrand",
- "redox_syscall",
- "remove_dir_all",
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "time"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
-dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
-]
-
-[[package]]
-name = "time"
-version = "0.3.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376"
-dependencies = [
- "itoa",
- "serde",
- "time-core",
- "time-macros",
-]
-
-[[package]]
-name = "time-core"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
-
-[[package]]
-name = "time-macros"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d967f99f534ca7e495c575c62638eebc2898a8c84c119b89e250477bc4ba16b2"
-dependencies = [
- "time-core",
-]
-
-[[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 = "toml"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "tracing"
-version = "0.1.37"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
-dependencies = [
- "cfg-if",
- "pin-project-lite",
- "tracing-attributes",
- "tracing-core",
-]
-
-[[package]]
-name = "tracing-attributes"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "tracing-core"
-version = "0.1.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
-dependencies = [
- "once_cell",
-]
-
-[[package]]
-name = "trackable"
-version = "0.2.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98abb9e7300b9ac902cc04920945a874c1973e08c310627cc4458c04b70dd32"
-dependencies = [
- "trackable 1.2.0",
- "trackable_derive",
-]
-
-[[package]]
-name = "trackable"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "017e2a1a93718e4e8386d037cfb8add78f1d690467f4350fb582f55af1203167"
-dependencies = [
- "trackable_derive",
-]
-
-[[package]]
-name = "trackable_derive"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebeb235c5847e2f82cfe0f07eb971d1e5f6804b18dac2ae16349cc604380f82f"
-dependencies = [
- "quote",
- "syn",
-]
-
-[[package]]
-name = "tungstenite"
-version = "0.17.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0"
-dependencies = [
- "base64 0.13.1",
- "byteorder",
- "bytes",
- "http",
- "httparse",
- "log",
- "rand",
- "sha-1",
- "thiserror",
- "url",
- "utf-8",
-]
-
-[[package]]
-name = "typenum"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
-
-[[package]]
-name = "ucd-trie"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81"
-
-[[package]]
-name = "uds_windows"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce65604324d3cce9b966701489fbd0cf318cb1f7bd9dd07ac9a4ee6fb791930d"
-dependencies = [
- "tempfile",
- "winapi",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58"
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
-
-[[package]]
-name = "universal-hash"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05"
-dependencies = [
- "generic-array",
- "subtle",
-]
-
-[[package]]
-name = "untrusted"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
-
-[[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 = "urlencoding"
-version = "2.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8db7427f936968176eaa7cdf81b7f98b980b18495ec28f1b5791ac3bfe3eea9"
-
-[[package]]
-name = "utf-8"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
-
-[[package]]
-name = "value-bag"
-version = "1.0.0-alpha.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2209b78d1249f7e6f3293657c9779fe31ced465df091bbd433a1cf88e916ec55"
-dependencies = [
- "ctor",
- "version_check",
-]
-
-[[package]]
-name = "version-compare"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "waker-fn"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
-
-[[package]]
-name = "walkdir"
-version = "2.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
-dependencies = [
- "same-file",
- "winapi",
- "winapi-util",
-]
-
-[[package]]
-name = "warp"
-version = "0.4.0"
-dependencies = [
- "async-broadcast",
- "async-channel",
- "backtrace",
- "chrono",
- "futures",
- "gdk4",
- "gettext-rs",
- "gio",
- "glib",
- "gtk4",
- "gvdb",
- "gvdb-macros",
- "libadwaita",
- "log",
- "magic-wormhole",
- "once_cell",
- "pretty_env_logger",
- "qrcode",
- "regex",
- "scopeguard",
- "serde",
- "serde_json",
- "simple_moving_average",
- "smol",
- "tempfile",
- "thiserror",
- "url",
- "urlencoding",
- "walkdir",
- "win32console",
- "xml-rs",
- "zbus",
- "zip",
- "zip-extensions",
-]
-
-[[package]]
-name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-futures"
-version = "0.4.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d"
-dependencies = [
- "cfg-if",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
-
-[[package]]
-name = "web-sys"
-version = "0.3.60"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "webpki"
-version = "0.21.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "webpki-roots"
-version = "0.21.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aabe153544e473b775453675851ecc86863d2a81d786d741f6b76778f2a48940"
-dependencies = [
- "webpki",
-]
-
-[[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "win32console"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e69bbdf01990d3e8b9f5a7c4667feda30c63be20aa2f8e66b2f4efb6c06f673"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
-dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
-
-[[package]]
-name = "x25519-dalek"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2392b6b94a576b4e2bf3c5b2757d63f10ada8020a2e4d08ac849ebcf6ea8e077"
-dependencies = [
- "curve25519-dalek",
- "rand_core 0.5.1",
- "zeroize",
-]
-
-[[package]]
-name = "xattr"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "xml-rs"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
-
-[[package]]
-name = "xsalsa20poly1305"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e68bcb965d6c650091450b95cea12f07dcd299a01c15e2f9433b0813ea3c0886"
-dependencies = [
- "aead",
- "poly1305",
- "rand_core 0.6.4",
- "salsa20",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "zbus"
-version = "3.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "379d587c0ccb632d1179cf44082653f682842f0535f0fdfaefffc34849cc855e"
-dependencies = [
- "async-broadcast",
- "async-executor",
- "async-io",
- "async-lock",
- "async-recursion",
- "async-task",
- "async-trait",
- "byteorder",
- "derivative",
- "dirs",
- "enumflags2",
- "event-listener",
- "futures-core",
- "futures-sink",
- "futures-util",
- "hex",
- "nix",
- "once_cell",
- "ordered-stream",
- "rand",
- "serde",
- "serde_repr",
- "sha1 0.10.5",
- "static_assertions",
- "tracing",
- "uds_windows",
- "winapi",
- "zbus_macros",
- "zbus_names",
- "zvariant",
-]
-
-[[package]]
-name = "zbus_macros"
-version = "3.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66492a2e90c0df7190583eccb8424aa12eb7ff06edea415a4fff6688fae18cf8"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "regex",
- "syn",
-]
-
-[[package]]
-name = "zbus_names"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f34f314916bd89bdb9934154627fab152f4f28acdda03e7c4c68181b214fe7e3"
-dependencies = [
- "serde",
- "static_assertions",
- "zvariant",
-]
-
-[[package]]
-name = "zeroize"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd"
-dependencies = [
- "zeroize_derive",
-]
-
-[[package]]
-name = "zeroize_derive"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44bf07cb3e50ea2003396695d58bf46bc9887a1f362260446fad6bc4e79bd36c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "synstructure",
-]
-
-[[package]]
-name = "zip"
-version = "0.5.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93ab48844d61251bb3835145c521d88aa4031d7139e8485990f60ca911fa0815"
-dependencies = [
- "byteorder",
- "bzip2",
- "crc32fast",
- "flate2",
- "thiserror",
- "time 0.1.45",
-]
-
-[[package]]
-name = "zip-extensions"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a64c3c977bc3434ce2d4bcea8ad3c644672de0f2c402b72b9171ca80a8885d14"
-dependencies = [
- "zip",
-]
-
-[[package]]
-name = "zvariant"
-version = "3.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "576cc41e65c7f283e5460f5818073e68fb1f1631502b969ef228c2e03c862efb"
-dependencies = [
- "byteorder",
- "enumflags2",
- "libc",
- "serde",
- "static_assertions",
- "zvariant_derive",
-]
-
-[[package]]
-name = "zvariant_derive"
-version = "3.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fd4aafc0dee96ae7242a24249ce9babf21e1562822f03df650d4e68c20e41ed"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn",
-]
diff --git a/pkgs/applications/networking/warp/default.nix b/pkgs/applications/networking/warp/default.nix
index 16ba528e156a9..4ae189595aab9 100644
--- a/pkgs/applications/networking/warp/default.nix
+++ b/pkgs/applications/networking/warp/default.nix
@@ -17,25 +17,24 @@
 
 stdenv.mkDerivation rec {
   pname = "warp";
-  version = "0.4";
+  version = "0.5.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-c8X0kedfM8DPTEQAbh8cXIfEvxG2cdUD3twVHs0/k7U";
+    hash = "sha256-VtmLWbZXKTv+sjICnaBt2EPbtDwIVZym/PZdL2N7UQo=";
   };
 
   postPatch = ''
     patchShebangs build-aux
   '';
 
-  cargoDeps = rustPlatform.importCargoLock {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "tempfile-3.3.0" = "sha256-zVbGZOEYEmOJGtl5Ko8rYIW9NY16lq5+zMzJ/TSkfsc=";
-    };
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    hash = "sha256-NT6reZUsieqMTX7HW9QmrjcgBpqxZOUfzht9b7suNeY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/PageEdit/default.nix b/pkgs/applications/office/PageEdit/default.nix
index 4d52782c857a7..b95eb6cb51e47 100644
--- a/pkgs/applications/office/PageEdit/default.nix
+++ b/pkgs/applications/office/PageEdit/default.nix
@@ -1,7 +1,7 @@
-{ lib, mkDerivation, fetchFromGitHub, cmake, qtsvg, qtwebengine, qttranslations }:
+{ lib, stdenv, mkDerivation, fetchFromGitHub, cmake, qtsvg, qtwebengine, qttranslations, wrapQtAppsHook }:
 
-mkDerivation rec {
-  pname = "PageEdit";
+stdenv.mkDerivation rec {
+  pname = "pageedit";
   version = "1.9.20";
 
   src = fetchFromGitHub {
@@ -11,10 +11,21 @@ mkDerivation rec {
     hash = "sha256-naoflFANeMwabbdrNL3+ndvEXYT4Yqf+Mo77HcCexHE=";
   };
 
-  nativeBuildInputs = [ cmake qttranslations ];
+  nativeBuildInputs = [ cmake qttranslations wrapQtAppsHook ];
   propagatedBuildInputs = [ qtsvg qtwebengine ];
   cmakeFlags = [ "-DINSTALL_BUNDLED_DICTS=0" ];
 
+  installPhase =
+    if stdenv.isDarwin then ''
+      runHook preInstall
+
+      mkdir -p $out/Applications
+      cp -r bin/PageEdit.app $out/Applications
+      makeWrapper $out/Applications/PageEdit.app/Contents/MacOS/PageEdit $out/bin/pageedit
+
+      runHook postInstall
+    '' else null;
+
   meta = with lib; {
     description = "ePub XHTML Visual Editor";
     homepage = "https://sigil-ebook.com/pageedit/";
diff --git a/pkgs/applications/office/abiword/default.nix b/pkgs/applications/office/abiword/default.nix
index 954c50befc8a9..b90b23a3905a4 100644
--- a/pkgs/applications/office/abiword/default.nix
+++ b/pkgs/applications/office/abiword/default.nix
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     wrapGAppsHook
+    perl
   ];
 
   buildInputs = [
@@ -44,12 +45,12 @@ stdenv.mkDerivation rec {
     enchant
     wv
     libjpeg
-    perl
     boost
     libxslt
     goffice
   ];
 
+  strictDeps = true;
   enableParallelBuilding = true;
 
   meta = with lib; {
diff --git a/pkgs/applications/office/micropad/default.nix b/pkgs/applications/office/micropad/default.nix
index 184157d9d0118..adc6eb6ec1837 100644
--- a/pkgs/applications/office/micropad/default.nix
+++ b/pkgs/applications/office/micropad/default.nix
@@ -14,18 +14,18 @@ let
 in
   mkYarnPackage rec {
     pname = "micropad";
-    version = "4.2.0";
+    version = "4.2.1";
 
     src = fetchFromGitHub {
       owner = "MicroPad";
       repo = "Micropad-Electron";
       rev = "v${version}";
-      sha256 = "sha256-XylyQd4AhvrwJzBZXab7rA2IrZcqzEv8BANk+ozYyHk=";
+      sha256 = "sha256-XmnKhyb0JMWP0ZGzPvLPtpkgAemW/mdxunbFW9WV9lE=";
     };
 
     micropad-core = fetchzip {
       url = "https://github.com/MicroPad/MicroPad-Core/releases/download/v${version}/micropad.tar.xz";
-      sha256 = "0vddz95c1khalvl2a9zccy36j8s7862gpqcqlrvp1pn4bbp2pm3s";
+      sha256 = "0mzyd2p4mmnc19ffvd4sd75x7xwb1g5masdaqpn2n3h91687jmsf";
     };
 
     packageJSON = ./package.json;
diff --git a/pkgs/applications/office/micropad/package.json b/pkgs/applications/office/micropad/package.json
index 167cef8113bef..912e451cbab77 100644
--- a/pkgs/applications/office/micropad/package.json
+++ b/pkgs/applications/office/micropad/package.json
@@ -1,6 +1,6 @@
 {
   "name": "micropad",
-  "version": "4.2.0",
+  "version": "4.2.1",
   "description": "A powerful note-taking app that helps you organise + take notes without restrictions.",
   "main": "main.js",
   "scripts": {
@@ -26,9 +26,9 @@
   "homepage": "https://getmicropad.com",
   "devDependencies": {
     "@types/node": "^18.7.18",
-    "electron": "^21.2.2",
-    "electron-builder": "^23.3.3",
-    "typescript": "~4.8.3"
+    "electron": "^23.1.3",
+    "electron-builder": "^23.6.0",
+    "typescript": "~4.9.5"
   },
   "dependencies": {
     "dictionary-en": "^3.0.0",
diff --git a/pkgs/applications/office/micropad/yarn.lock b/pkgs/applications/office/micropad/yarn.lock
index 93e7ea8736677..a6a8c100f451b 100644
--- a/pkgs/applications/office/micropad/yarn.lock
+++ b/pkgs/applications/office/micropad/yarn.lock
@@ -15,21 +15,20 @@
     ajv "^6.12.0"
     ajv-keywords "^3.4.1"
 
-"@electron/get@^1.14.1":
-  version "1.14.1"
-  resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz#16ba75f02dffb74c23965e72d617adc721d27f40"
-  integrity sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==
+"@electron/get@^2.0.0":
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/@electron/get/-/get-2.0.2.tgz#ae2a967b22075e9c25aaf00d5941cd79c21efd7e"
+  integrity sha512-eFZVFoRXb3GFGd7Ak7W4+6jBl9wBtiZ4AaYOse97ej6mKj5tkyO0dUnUChs1IhJZtx1BENo4/p4WUTXpi6vT+g==
   dependencies:
     debug "^4.1.1"
     env-paths "^2.2.0"
     fs-extra "^8.1.0"
-    got "^9.6.0"
+    got "^11.8.5"
     progress "^2.0.3"
     semver "^6.2.0"
     sumchecker "^3.0.1"
   optionalDependencies:
     global-agent "^3.0.0"
-    global-tunnel-ng "^2.7.1"
 
 "@electron/universal@1.2.1":
   version "1.2.1"
@@ -61,23 +60,33 @@
     lodash "^4.17.15"
     tmp-promise "^3.0.2"
 
-"@sindresorhus/is@^0.14.0":
-  version "0.14.0"
-  resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
-  integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
+"@sindresorhus/is@^4.0.0":
+  version "4.6.0"
+  resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
+  integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==
 
-"@szmarczak/http-timer@^1.1.2":
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"
-  integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==
+"@szmarczak/http-timer@^4.0.5":
+  version "4.0.6"
+  resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"
+  integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==
   dependencies:
-    defer-to-connect "^1.0.1"
+    defer-to-connect "^2.0.0"
 
 "@tootallnate/once@2":
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf"
   integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
 
+"@types/cacheable-request@^6.0.1":
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.3.tgz#a430b3260466ca7b5ca5bfd735693b36e7a9d183"
+  integrity sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==
+  dependencies:
+    "@types/http-cache-semantics" "*"
+    "@types/keyv" "^3.1.4"
+    "@types/node" "*"
+    "@types/responselike" "^1.0.0"
+
 "@types/debug@^4.1.6":
   version "4.1.7"
   resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82"
@@ -100,6 +109,18 @@
     "@types/minimatch" "*"
     "@types/node" "*"
 
+"@types/http-cache-semantics@*":
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812"
+  integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==
+
+"@types/keyv@^3.1.4":
+  version "3.1.4"
+  resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6"
+  integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==
+  dependencies:
+    "@types/node" "*"
+
 "@types/minimatch@*":
   version "5.1.2"
   resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca"
@@ -111,14 +132,14 @@
   integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==
 
 "@types/node@*", "@types/node@^18.7.18":
-  version "18.11.9"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.9.tgz#02d013de7058cea16d36168ef2fc653464cfbad4"
-  integrity sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==
+  version "18.15.0"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.0.tgz#286a65e3fdffd691e170541e6ecb0410b16a38be"
+  integrity sha512-z6nr0TTEOBGkzLGmbypWOGnpSpSIBorEhC4L+4HeQ2iezKCi4f77kyslRwvHeNitymGQ+oFyIWGP96l/DPSV9w==
 
 "@types/node@^16.11.26":
-  version "16.18.3"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.3.tgz#d7f7ba828ad9e540270f01ce00d391c54e6e0abc"
-  integrity sha512-jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==
+  version "16.18.14"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.14.tgz#5465ce598486a703caddbefe8603f8a2cffa3461"
+  integrity sha512-wvzClDGQXOCVNU4APPopC2KtMYukaF1MN/W3xAmslx22Z4/IF1/izDMekuyoUlwfnDHYCIZGaj7jMwnJKBTxKw==
 
 "@types/plist@^3.0.1":
   version "3.0.2"
@@ -128,6 +149,13 @@
     "@types/node" "*"
     xmlbuilder ">=11.0.1"
 
+"@types/responselike@^1.0.0":
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"
+  integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==
+  dependencies:
+    "@types/node" "*"
+
 "@types/verror@^1.10.3":
   version "1.10.6"
   resolved "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.6.tgz#3e600c62d210c5826460858f84bcbb65805460bb"
@@ -139,9 +167,9 @@
   integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
 
 "@types/yargs@^17.0.1":
-  version "17.0.13"
-  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.13.tgz#34cced675ca1b1d51fcf4d34c3c6f0fa142a5c76"
-  integrity sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==
+  version "17.0.22"
+  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a"
+  integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==
   dependencies:
     "@types/yargs-parser" "*"
 
@@ -384,18 +412,23 @@ builder-util@23.6.0:
     stat-mode "^1.0.0"
     temp-file "^3.4.0"
 
-cacheable-request@^6.0.0:
-  version "6.1.0"
-  resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912"
-  integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==
+cacheable-lookup@^5.0.3:
+  version "5.0.4"
+  resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005"
+  integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==
+
+cacheable-request@^7.0.2:
+  version "7.0.2"
+  resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27"
+  integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==
   dependencies:
     clone-response "^1.0.2"
     get-stream "^5.1.0"
     http-cache-semantics "^4.0.0"
-    keyv "^3.0.0"
+    keyv "^4.0.0"
     lowercase-keys "^2.0.0"
-    normalize-url "^4.1.0"
-    responselike "^1.0.2"
+    normalize-url "^6.0.1"
+    responselike "^2.0.0"
 
 chalk@^4.0.2, chalk@^4.1.1:
   version "4.1.2"
@@ -416,9 +449,9 @@ chromium-pickle-js@^0.2.0:
   integrity sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==
 
 ci-info@^3.2.0:
-  version "3.5.0"
-  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.5.0.tgz#bfac2a29263de4c829d806b1ab478e35091e171f"
-  integrity sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==
+  version "3.8.0"
+  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91"
+  integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==
 
 cli-truncate@^2.1.0:
   version "2.1.0"
@@ -490,14 +523,6 @@ concat-map@0.0.1:
   resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
   integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
 
-config-chain@^1.1.11:
-  version "1.1.13"
-  resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"
-  integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
-  dependencies:
-    ini "^1.3.4"
-    proto-list "~1.2.1"
-
 core-util-is@1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
@@ -533,22 +558,22 @@ debug@^2.6.8:
   dependencies:
     ms "2.0.0"
 
-decompress-response@^3.3.0:
-  version "3.3.0"
-  resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
-  integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==
+decompress-response@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
+  integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
   dependencies:
-    mimic-response "^1.0.0"
+    mimic-response "^3.1.0"
 
-defer-to-connect@^1.0.1:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
-  integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
+defer-to-connect@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
+  integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
 
 define-properties@^1.1.3:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"
-  integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5"
+  integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==
   dependencies:
     has-property-descriptors "^1.0.0"
     object-keys "^1.1.1"
@@ -621,11 +646,6 @@ dotenv@^9.0.2:
   resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz#dacc20160935a37dea6364aa1bef819fb9b6ab05"
   integrity sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==
 
-duplexer3@^0.1.4:
-  version "0.1.5"
-  resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e"
-  integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==
-
 ejs@^3.1.7:
   version "3.1.8"
   resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b"
@@ -633,7 +653,7 @@ ejs@^3.1.7:
   dependencies:
     jake "^10.8.5"
 
-electron-builder@^23.3.3:
+electron-builder@^23.6.0:
   version "23.6.0"
   resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-23.6.0.tgz#c79050cbdce90ed96c5feb67c34e9e0a21b5331b"
   integrity sha512-y8D4zO+HXGCNxFBV/JlyhFnoQ0Y0K7/sFH+XwIbj47pqaW8S6PGYQbjoObolKBR1ddQFPt4rwp4CnwMJrW3HAw==
@@ -652,18 +672,18 @@ electron-builder@^23.3.3:
     yargs "^17.5.1"
 
 electron-context-menu@^3.1.2:
-  version "3.6.0"
-  resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.6.0.tgz#d60fabb99d5bb06c46b6929c342c75cc0eee348e"
-  integrity sha512-7uhF3WX7ZalLEurKqML2cJJrBUw1JSZNzbwIB9kVbip7sVwyl7bVjiwHzdYjuOh/+xHw21ZzxwgZcB6sTeKdEw==
+  version "3.6.1"
+  resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.6.1.tgz#42f117e15309687b22283e6f8f7a0d95a19afe84"
+  integrity sha512-lcpO6tzzKUROeirhzBjdBWNqayEThmdW+2I2s6H6QMrwqTVyT3EK47jW3Nxm60KTxl5/bWfEoIruoUNn57/QkQ==
   dependencies:
     cli-truncate "^2.1.0"
     electron-dl "^3.2.1"
     electron-is-dev "^2.0.0"
 
 electron-dl@^3.2.1:
-  version "3.4.1"
-  resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.4.1.tgz#2d74a47a04eb8a042c90480cb59736c6f2626219"
-  integrity sha512-NUrjWTlFW7n/+0ECxQ1AkjikNxdeRDpaprLY7YhmOg6pkFcPHwdEfpkTK+CIhyGMAlZOuto1clB1z5HAwgZcaA==
+  version "3.5.0"
+  resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.5.0.tgz#7a80bf13f168f7e5204774eee89dbc7c86de957b"
+  integrity sha512-Oj+VSuScVx8hEKM2HEvTQswTX6G3MLh7UoAz/oZuvKyNDfudNi1zY6PK/UnFoK1nCl9DF6k+3PFwElKbtZlDig==
   dependencies:
     ext-name "^5.0.0"
     pupa "^2.0.1"
@@ -707,12 +727,12 @@ electron-window-state@^5.0.3:
     jsonfile "^4.0.0"
     mkdirp "^0.5.1"
 
-electron@^21.2.2:
-  version "21.2.2"
-  resolved "https://registry.yarnpkg.com/electron/-/electron-21.2.2.tgz#e2f3dd014981df555d2cd1655590168b404edae4"
-  integrity sha512-Q0j1tzLTM5JRjSJVAfDSONZgdtuyruHR1pc1y2IbMYQz62pVJWVWAvcJXzpty5iRh2HKzW9+B9WVlmfWNFA8ag==
+electron@^23.1.3:
+  version "23.1.3"
+  resolved "https://registry.yarnpkg.com/electron/-/electron-23.1.3.tgz#42efdb98443a51db38bb0b627ec6788b1a64b92d"
+  integrity sha512-MNjuUS2K6/OxlJ0zTC77djo1R3xM038v1kUunvNFgDMZHYKpSOzOMNsPiwM2BGp+uZbkUb0nTnYafxXrM8H16w==
   dependencies:
-    "@electron/get" "^1.14.1"
+    "@electron/get" "^2.0.0"
     "@types/node" "^16.11.26"
     extract-zip "^2.0.1"
 
@@ -721,11 +741,6 @@ emoji-regex@^8.0.0:
   resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
   integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
 
-encodeurl@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
-  integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
-
 end-of-stream@^1.1.0:
   version "1.4.4"
   resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
@@ -873,21 +888,14 @@ get-caller-file@^2.0.5:
   integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
 
 get-intrinsic@^1.1.1:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"
-  integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f"
+  integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==
   dependencies:
     function-bind "^1.1.1"
     has "^1.0.3"
     has-symbols "^1.0.3"
 
-get-stream@^4.1.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
-  integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
-  dependencies:
-    pump "^3.0.0"
-
 get-stream@^5.1.0:
   version "5.2.0"
   resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
@@ -919,16 +927,6 @@ global-agent@^3.0.0:
     semver "^7.3.2"
     serialize-error "^7.0.1"
 
-global-tunnel-ng@^2.7.1:
-  version "2.7.1"
-  resolved "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz#d03b5102dfde3a69914f5ee7d86761ca35d57d8f"
-  integrity sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==
-  dependencies:
-    encodeurl "^1.0.2"
-    lodash "^4.17.10"
-    npm-conf "^1.1.3"
-    tunnel "^0.0.6"
-
 globalthis@^1.0.1:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
@@ -936,22 +934,22 @@ globalthis@^1.0.1:
   dependencies:
     define-properties "^1.1.3"
 
-got@^9.6.0:
-  version "9.6.0"
-  resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85"
-  integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==
-  dependencies:
-    "@sindresorhus/is" "^0.14.0"
-    "@szmarczak/http-timer" "^1.1.2"
-    cacheable-request "^6.0.0"
-    decompress-response "^3.3.0"
-    duplexer3 "^0.1.4"
-    get-stream "^4.1.0"
-    lowercase-keys "^1.0.1"
-    mimic-response "^1.0.1"
-    p-cancelable "^1.0.0"
-    to-readable-stream "^1.0.0"
-    url-parse-lax "^3.0.0"
+got@^11.8.5:
+  version "11.8.6"
+  resolved "https://registry.yarnpkg.com/got/-/got-11.8.6.tgz#276e827ead8772eddbcfc97170590b841823233a"
+  integrity sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==
+  dependencies:
+    "@sindresorhus/is" "^4.0.0"
+    "@szmarczak/http-timer" "^4.0.5"
+    "@types/cacheable-request" "^6.0.1"
+    "@types/responselike" "^1.0.0"
+    cacheable-lookup "^5.0.3"
+    cacheable-request "^7.0.2"
+    decompress-response "^6.0.0"
+    http2-wrapper "^1.0.0-beta.5.2"
+    lowercase-keys "^2.0.0"
+    p-cancelable "^2.0.0"
+    responselike "^2.0.0"
 
 graceful-fs@^4.1.6, graceful-fs@^4.2.0:
   version "4.2.10"
@@ -995,9 +993,9 @@ hosted-git-info@^4.1.0:
     lru-cache "^6.0.0"
 
 http-cache-semantics@^4.0.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
-  integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a"
+  integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==
 
 http-proxy-agent@^5.0.0:
   version "5.0.0"
@@ -1008,6 +1006,14 @@ http-proxy-agent@^5.0.0:
     agent-base "6"
     debug "4"
 
+http2-wrapper@^1.0.0-beta.5.2:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d"
+  integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==
+  dependencies:
+    quick-lru "^5.1.1"
+    resolve-alpn "^1.0.0"
+
 https-proxy-agent@^5.0.0:
   version "5.0.1"
   resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6"
@@ -1054,11 +1060,6 @@ inherits@2:
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
 
-ini@^1.3.4:
-  version "1.3.8"
-  resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
-  integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
-
 is-ci@^3.0.0:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867"
@@ -1110,10 +1111,10 @@ js-yaml@^4.1.0:
   dependencies:
     argparse "^2.0.1"
 
-json-buffer@3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
-  integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==
+json-buffer@3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
+  integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
 
 json-schema-traverse@^0.4.1:
   version "0.4.1"
@@ -1126,9 +1127,9 @@ json-stringify-safe@^5.0.1:
   integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
 
 json5@^2.2.0:
-  version "2.2.1"
-  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
-  integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
+  version "2.2.3"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
+  integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
 
 jsonfile@^4.0.0:
   version "4.0.0"
@@ -1146,12 +1147,12 @@ jsonfile@^6.0.1:
   optionalDependencies:
     graceful-fs "^4.1.6"
 
-keyv@^3.0.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9"
-  integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==
+keyv@^4.0.0:
+  version "4.5.2"
+  resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56"
+  integrity sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==
   dependencies:
-    json-buffer "3.0.0"
+    json-buffer "3.0.1"
 
 lazy-val@^1.0.4, lazy-val@^1.0.5:
   version "1.0.5"
@@ -1172,16 +1173,11 @@ localforage@^1.10.0:
   dependencies:
     lie "3.1.1"
 
-lodash@^4.17.10, lodash@^4.17.15:
+lodash@^4.17.15:
   version "4.17.21"
   resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
   integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
 
-lowercase-keys@^1.0.0, lowercase-keys@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
-  integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
-
 lowercase-keys@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
@@ -1218,11 +1214,16 @@ mime@^2.5.2:
   resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
   integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
 
-mimic-response@^1.0.0, mimic-response@^1.0.1:
+mimic-response@^1.0.0:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
   integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
 
+mimic-response@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
+  integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
+
 minimatch@3.0.4:
   version "3.0.4"
   resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
@@ -1238,29 +1239,29 @@ minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2:
     brace-expansion "^1.1.7"
 
 minimatch@^5.0.1:
-  version "5.1.0"
-  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7"
-  integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==
+  version "5.1.6"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96"
+  integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==
   dependencies:
     brace-expansion "^2.0.1"
 
-minimist@^1.2.0:
-  version "1.2.7"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"
-  integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==
-
-minimist@^1.2.6:
-  version "1.2.6"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
-  integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
+minimist@^1.2.0, minimist@^1.2.6:
+  version "1.2.8"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
+  integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
 
 minipass@^3.0.0:
-  version "3.3.4"
-  resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.4.tgz#ca99f95dd77c43c7a76bf51e6d200025eee0ffae"
-  integrity sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==
+  version "3.3.6"
+  resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a"
+  integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==
   dependencies:
     yallist "^4.0.0"
 
+minipass@^4.0.0:
+  version "4.2.4"
+  resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.2.4.tgz#7d0d97434b6a19f59c5c3221698b48bbf3b2cd06"
+  integrity sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==
+
 minizlib@^2.1.1:
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931"
@@ -1301,18 +1302,10 @@ node-addon-api@^1.6.3:
   resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d"
   integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==
 
-normalize-url@^4.1.0:
-  version "4.5.1"
-  resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a"
-  integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==
-
-npm-conf@^1.1.3:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9"
-  integrity sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==
-  dependencies:
-    config-chain "^1.1.11"
-    pify "^3.0.0"
+normalize-url@^6.0.1:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
+  integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
 
 object-keys@^1.1.1:
   version "1.1.1"
@@ -1326,10 +1319,10 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
   dependencies:
     wrappy "1"
 
-p-cancelable@^1.0.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
-  integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
+p-cancelable@^2.0.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"
+  integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==
 
 path-exists@^4.0.0:
   version "4.0.0"
@@ -1351,11 +1344,6 @@ pend@~1.2.0:
   resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
   integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==
 
-pify@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
-  integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==
-
 plist@^3.0.1, plist@^3.0.4:
   version "3.0.6"
   resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.6.tgz#7cfb68a856a7834bca6dbfe3218eb9c7740145d3"
@@ -1364,21 +1352,11 @@ plist@^3.0.1, plist@^3.0.4:
     base64-js "^1.5.1"
     xmlbuilder "^15.1.1"
 
-prepend-http@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
-  integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==
-
 progress@^2.0.3:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
   integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
 
-proto-list@~1.2.1:
-  version "1.2.4"
-  resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
-  integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==
-
 pump@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
@@ -1388,9 +1366,9 @@ pump@^3.0.0:
     once "^1.3.1"
 
 punycode@^2.1.0:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
-  integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
+  integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
 
 pupa@^2.0.1:
   version "2.1.1"
@@ -1399,6 +1377,11 @@ pupa@^2.0.1:
   dependencies:
     escape-goat "^2.0.0"
 
+quick-lru@^5.1.1:
+  version "5.1.1"
+  resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
+  integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
+
 read-config-file@6.2.0:
   version "6.2.0"
   resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.2.0.tgz#71536072330bcd62ba814f91458b12add9fc7ade"
@@ -1415,12 +1398,17 @@ require-directory@^2.1.1:
   resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
   integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
 
-responselike@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
-  integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==
+resolve-alpn@^1.0.0:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"
+  integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
+
+responselike@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc"
+  integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==
   dependencies:
-    lowercase-keys "^1.0.0"
+    lowercase-keys "^2.0.0"
 
 rimraf@^3.0.0:
   version "3.0.2"
@@ -1500,9 +1488,9 @@ shebang-regex@^3.0.0:
   integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
 
 simple-update-notifier@^1.0.7:
-  version "1.0.7"
-  resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.0.7.tgz#7edf75c5bdd04f88828d632f762b2bc32996a9cc"
-  integrity sha512-BBKgR84BJQJm6WjWFMHgLVuo61FBDSj1z/xSFUIozqO6wO7ii0JxCqlIud7Enr/+LhlbNI0whErq96P2qHNWew==
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82"
+  integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==
   dependencies:
     semver "~7.0.0"
 
@@ -1588,13 +1576,13 @@ supports-color@^7.1.0:
     has-flag "^4.0.0"
 
 tar@^6.1.11:
-  version "6.1.12"
-  resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.12.tgz#3b742fb05669b55671fb769ab67a7791ea1a62e6"
-  integrity sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==
+  version "6.1.13"
+  resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b"
+  integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==
   dependencies:
     chownr "^2.0.0"
     fs-minipass "^2.0.0"
-    minipass "^3.0.0"
+    minipass "^4.0.0"
     minizlib "^2.1.1"
     mkdirp "^1.0.3"
     yallist "^4.0.0"
@@ -1621,11 +1609,6 @@ tmp@^0.2.0:
   dependencies:
     rimraf "^3.0.0"
 
-to-readable-stream@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771"
-  integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==
-
 truncate-utf8-bytes@^1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b"
@@ -1633,20 +1616,15 @@ truncate-utf8-bytes@^1.0.0:
   dependencies:
     utf8-byte-length "^1.0.1"
 
-tunnel@^0.0.6:
-  version "0.0.6"
-  resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c"
-  integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==
-
 type-fest@^0.13.1:
   version "0.13.1"
   resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934"
   integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==
 
-typescript@~4.8.3:
-  version "4.8.4"
-  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6"
-  integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==
+typescript@~4.9.5:
+  version "4.9.5"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
+  integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
 
 typo-js@^1.2.1:
   version "1.2.2"
@@ -1678,13 +1656,6 @@ uri-js@^4.2.2:
   dependencies:
     punycode "^2.1.0"
 
-url-parse-lax@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
-  integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==
-  dependencies:
-    prepend-http "^2.0.0"
-
 utf8-byte-length@^1.0.1:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61"
@@ -1735,15 +1706,15 @@ yallist@^4.0.0:
   resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
   integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
 
-yargs-parser@^21.0.0:
+yargs-parser@^21.1.1:
   version "21.1.1"
   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
   integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
 
 yargs@^17.5.1:
-  version "17.6.1"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.1.tgz#712508771045019cda059bc1ba3ae091aaa1402e"
-  integrity sha512-leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==
+  version "17.7.1"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967"
+  integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==
   dependencies:
     cliui "^8.0.1"
     escalade "^3.1.1"
@@ -1751,7 +1722,7 @@ yargs@^17.5.1:
     require-directory "^2.1.1"
     string-width "^4.2.3"
     y18n "^5.0.5"
-    yargs-parser "^21.0.0"
+    yargs-parser "^21.1.1"
 
 yauzl@^2.10.0:
   version "2.10.0"
diff --git a/pkgs/applications/office/micropad/yarn.nix b/pkgs/applications/office/micropad/yarn.nix
index 71457edcd05ce..6642790712f74 100644
--- a/pkgs/applications/office/micropad/yarn.nix
+++ b/pkgs/applications/office/micropad/yarn.nix
@@ -18,11 +18,11 @@
       };
     }
     {
-      name = "_electron_get___get_1.14.1.tgz";
+      name = "_electron_get___get_2.0.2.tgz";
       path = fetchurl {
-        name = "_electron_get___get_1.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz";
-        sha512 = "BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==";
+        name = "_electron_get___get_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@electron/get/-/get-2.0.2.tgz";
+        sha512 = "eFZVFoRXb3GFGd7Ak7W4+6jBl9wBtiZ4AaYOse97ej6mKj5tkyO0dUnUChs1IhJZtx1BENo4/p4WUTXpi6vT+g==";
       };
     }
     {
@@ -50,19 +50,19 @@
       };
     }
     {
-      name = "_sindresorhus_is___is_0.14.0.tgz";
+      name = "_sindresorhus_is___is_4.6.0.tgz";
       path = fetchurl {
-        name = "_sindresorhus_is___is_0.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz";
-        sha512 = "9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==";
+        name = "_sindresorhus_is___is_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz";
+        sha512 = "t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==";
       };
     }
     {
-      name = "_szmarczak_http_timer___http_timer_1.1.2.tgz";
+      name = "_szmarczak_http_timer___http_timer_4.0.6.tgz";
       path = fetchurl {
-        name = "_szmarczak_http_timer___http_timer_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz";
-        sha512 = "XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==";
+        name = "_szmarczak_http_timer___http_timer_4.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz";
+        sha512 = "4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==";
       };
     }
     {
@@ -74,6 +74,14 @@
       };
     }
     {
+      name = "_types_cacheable_request___cacheable_request_6.0.3.tgz";
+      path = fetchurl {
+        name = "_types_cacheable_request___cacheable_request_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.3.tgz";
+        sha512 = "IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==";
+      };
+    }
+    {
       name = "_types_debug___debug_4.1.7.tgz";
       path = fetchurl {
         name = "_types_debug___debug_4.1.7.tgz";
@@ -98,6 +106,22 @@
       };
     }
     {
+      name = "_types_http_cache_semantics___http_cache_semantics_4.0.1.tgz";
+      path = fetchurl {
+        name = "_types_http_cache_semantics___http_cache_semantics_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz";
+        sha512 = "SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==";
+      };
+    }
+    {
+      name = "_types_keyv___keyv_3.1.4.tgz";
+      path = fetchurl {
+        name = "_types_keyv___keyv_3.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.4.tgz";
+        sha512 = "BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==";
+      };
+    }
+    {
       name = "_types_minimatch___minimatch_5.1.2.tgz";
       path = fetchurl {
         name = "_types_minimatch___minimatch_5.1.2.tgz";
@@ -114,19 +138,19 @@
       };
     }
     {
-      name = "_types_node___node_18.11.9.tgz";
+      name = "_types_node___node_18.15.0.tgz";
       path = fetchurl {
-        name = "_types_node___node_18.11.9.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-18.11.9.tgz";
-        sha512 = "CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==";
+        name = "_types_node___node_18.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-18.15.0.tgz";
+        sha512 = "z6nr0TTEOBGkzLGmbypWOGnpSpSIBorEhC4L+4HeQ2iezKCi4f77kyslRwvHeNitymGQ+oFyIWGP96l/DPSV9w==";
       };
     }
     {
-      name = "_types_node___node_16.18.3.tgz";
+      name = "_types_node___node_16.18.14.tgz";
       path = fetchurl {
-        name = "_types_node___node_16.18.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-16.18.3.tgz";
-        sha512 = "jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==";
+        name = "_types_node___node_16.18.14.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-16.18.14.tgz";
+        sha512 = "wvzClDGQXOCVNU4APPopC2KtMYukaF1MN/W3xAmslx22Z4/IF1/izDMekuyoUlwfnDHYCIZGaj7jMwnJKBTxKw==";
       };
     }
     {
@@ -138,6 +162,14 @@
       };
     }
     {
+      name = "_types_responselike___responselike_1.0.0.tgz";
+      path = fetchurl {
+        name = "_types_responselike___responselike_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz";
+        sha512 = "85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==";
+      };
+    }
+    {
       name = "_types_verror___verror_1.10.6.tgz";
       path = fetchurl {
         name = "_types_verror___verror_1.10.6.tgz";
@@ -154,11 +186,11 @@
       };
     }
     {
-      name = "_types_yargs___yargs_17.0.13.tgz";
+      name = "_types_yargs___yargs_17.0.22.tgz";
       path = fetchurl {
-        name = "_types_yargs___yargs_17.0.13.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.13.tgz";
-        sha512 = "9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==";
+        name = "_types_yargs___yargs_17.0.22.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz";
+        sha512 = "pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==";
       };
     }
     {
@@ -418,11 +450,19 @@
       };
     }
     {
-      name = "cacheable_request___cacheable_request_6.1.0.tgz";
+      name = "cacheable_lookup___cacheable_lookup_5.0.4.tgz";
       path = fetchurl {
-        name = "cacheable_request___cacheable_request_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz";
-        sha512 = "Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==";
+        name = "cacheable_lookup___cacheable_lookup_5.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz";
+        sha512 = "2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==";
+      };
+    }
+    {
+      name = "cacheable_request___cacheable_request_7.0.2.tgz";
+      path = fetchurl {
+        name = "cacheable_request___cacheable_request_7.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz";
+        sha512 = "pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==";
       };
     }
     {
@@ -450,11 +490,11 @@
       };
     }
     {
-      name = "ci_info___ci_info_3.5.0.tgz";
+      name = "ci_info___ci_info_3.8.0.tgz";
       path = fetchurl {
-        name = "ci_info___ci_info_3.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.5.0.tgz";
-        sha512 = "yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==";
+        name = "ci_info___ci_info_3.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz";
+        sha512 = "eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==";
       };
     }
     {
@@ -546,14 +586,6 @@
       };
     }
     {
-      name = "config_chain___config_chain_1.1.13.tgz";
-      path = fetchurl {
-        name = "config_chain___config_chain_1.1.13.tgz";
-        url  = "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz";
-        sha512 = "qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==";
-      };
-    }
-    {
       name = "core_util_is___core_util_is_1.0.2.tgz";
       path = fetchurl {
         name = "core_util_is___core_util_is_1.0.2.tgz";
@@ -594,27 +626,27 @@
       };
     }
     {
-      name = "decompress_response___decompress_response_3.3.0.tgz";
+      name = "decompress_response___decompress_response_6.0.0.tgz";
       path = fetchurl {
-        name = "decompress_response___decompress_response_3.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz";
-        sha512 = "BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==";
+        name = "decompress_response___decompress_response_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz";
+        sha512 = "aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==";
       };
     }
     {
-      name = "defer_to_connect___defer_to_connect_1.1.3.tgz";
+      name = "defer_to_connect___defer_to_connect_2.0.1.tgz";
       path = fetchurl {
-        name = "defer_to_connect___defer_to_connect_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz";
-        sha512 = "0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==";
+        name = "defer_to_connect___defer_to_connect_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz";
+        sha512 = "4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==";
       };
     }
     {
-      name = "define_properties___define_properties_1.1.4.tgz";
+      name = "define_properties___define_properties_1.2.0.tgz";
       path = fetchurl {
-        name = "define_properties___define_properties_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz";
-        sha512 = "uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==";
+        name = "define_properties___define_properties_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz";
+        sha512 = "xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==";
       };
     }
     {
@@ -690,14 +722,6 @@
       };
     }
     {
-      name = "duplexer3___duplexer3_0.1.5.tgz";
-      path = fetchurl {
-        name = "duplexer3___duplexer3_0.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz";
-        sha512 = "1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==";
-      };
-    }
-    {
       name = "ejs___ejs_3.1.8.tgz";
       path = fetchurl {
         name = "ejs___ejs_3.1.8.tgz";
@@ -714,19 +738,19 @@
       };
     }
     {
-      name = "electron_context_menu___electron_context_menu_3.6.0.tgz";
+      name = "electron_context_menu___electron_context_menu_3.6.1.tgz";
       path = fetchurl {
-        name = "electron_context_menu___electron_context_menu_3.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.6.0.tgz";
-        sha512 = "7uhF3WX7ZalLEurKqML2cJJrBUw1JSZNzbwIB9kVbip7sVwyl7bVjiwHzdYjuOh/+xHw21ZzxwgZcB6sTeKdEw==";
+        name = "electron_context_menu___electron_context_menu_3.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.6.1.tgz";
+        sha512 = "lcpO6tzzKUROeirhzBjdBWNqayEThmdW+2I2s6H6QMrwqTVyT3EK47jW3Nxm60KTxl5/bWfEoIruoUNn57/QkQ==";
       };
     }
     {
-      name = "electron_dl___electron_dl_3.4.1.tgz";
+      name = "electron_dl___electron_dl_3.5.0.tgz";
       path = fetchurl {
-        name = "electron_dl___electron_dl_3.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.4.1.tgz";
-        sha512 = "NUrjWTlFW7n/+0ECxQ1AkjikNxdeRDpaprLY7YhmOg6pkFcPHwdEfpkTK+CIhyGMAlZOuto1clB1z5HAwgZcaA==";
+        name = "electron_dl___electron_dl_3.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.5.0.tgz";
+        sha512 = "Oj+VSuScVx8hEKM2HEvTQswTX6G3MLh7UoAz/oZuvKyNDfudNi1zY6PK/UnFoK1nCl9DF6k+3PFwElKbtZlDig==";
       };
     }
     {
@@ -762,11 +786,11 @@
       };
     }
     {
-      name = "electron___electron_21.2.2.tgz";
+      name = "electron___electron_23.1.3.tgz";
       path = fetchurl {
-        name = "electron___electron_21.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/electron/-/electron-21.2.2.tgz";
-        sha512 = "Q0j1tzLTM5JRjSJVAfDSONZgdtuyruHR1pc1y2IbMYQz62pVJWVWAvcJXzpty5iRh2HKzW9+B9WVlmfWNFA8ag==";
+        name = "electron___electron_23.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/electron/-/electron-23.1.3.tgz";
+        sha512 = "MNjuUS2K6/OxlJ0zTC77djo1R3xM038v1kUunvNFgDMZHYKpSOzOMNsPiwM2BGp+uZbkUb0nTnYafxXrM8H16w==";
       };
     }
     {
@@ -778,14 +802,6 @@
       };
     }
     {
-      name = "encodeurl___encodeurl_1.0.2.tgz";
-      path = fetchurl {
-        name = "encodeurl___encodeurl_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
-        sha512 = "TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==";
-      };
-    }
-    {
       name = "end_of_stream___end_of_stream_1.4.4.tgz";
       path = fetchurl {
         name = "end_of_stream___end_of_stream_1.4.4.tgz";
@@ -962,19 +978,11 @@
       };
     }
     {
-      name = "get_intrinsic___get_intrinsic_1.1.3.tgz";
+      name = "get_intrinsic___get_intrinsic_1.2.0.tgz";
       path = fetchurl {
-        name = "get_intrinsic___get_intrinsic_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz";
-        sha512 = "QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==";
-      };
-    }
-    {
-      name = "get_stream___get_stream_4.1.0.tgz";
-      path = fetchurl {
-        name = "get_stream___get_stream_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz";
-        sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==";
+        name = "get_intrinsic___get_intrinsic_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz";
+        sha512 = "L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==";
       };
     }
     {
@@ -1002,14 +1010,6 @@
       };
     }
     {
-      name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz";
-      path = fetchurl {
-        name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz";
-        sha512 = "4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==";
-      };
-    }
-    {
       name = "globalthis___globalthis_1.0.3.tgz";
       path = fetchurl {
         name = "globalthis___globalthis_1.0.3.tgz";
@@ -1018,11 +1018,11 @@
       };
     }
     {
-      name = "got___got_9.6.0.tgz";
+      name = "got___got_11.8.6.tgz";
       path = fetchurl {
-        name = "got___got_9.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz";
-        sha512 = "R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==";
+        name = "got___got_11.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/got/-/got-11.8.6.tgz";
+        sha512 = "6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==";
       };
     }
     {
@@ -1082,11 +1082,11 @@
       };
     }
     {
-      name = "http_cache_semantics___http_cache_semantics_4.1.0.tgz";
+      name = "http_cache_semantics___http_cache_semantics_4.1.1.tgz";
       path = fetchurl {
-        name = "http_cache_semantics___http_cache_semantics_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz";
-        sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==";
+        name = "http_cache_semantics___http_cache_semantics_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz";
+        sha512 = "er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==";
       };
     }
     {
@@ -1098,6 +1098,14 @@
       };
     }
     {
+      name = "http2_wrapper___http2_wrapper_1.0.3.tgz";
+      path = fetchurl {
+        name = "http2_wrapper___http2_wrapper_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz";
+        sha512 = "V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==";
+      };
+    }
+    {
       name = "https_proxy_agent___https_proxy_agent_5.0.1.tgz";
       path = fetchurl {
         name = "https_proxy_agent___https_proxy_agent_5.0.1.tgz";
@@ -1154,14 +1162,6 @@
       };
     }
     {
-      name = "ini___ini_1.3.8.tgz";
-      path = fetchurl {
-        name = "ini___ini_1.3.8.tgz";
-        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
-        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
-      };
-    }
-    {
       name = "is_ci___is_ci_3.0.1.tgz";
       path = fetchurl {
         name = "is_ci___is_ci_3.0.1.tgz";
@@ -1226,11 +1226,11 @@
       };
     }
     {
-      name = "json_buffer___json_buffer_3.0.0.tgz";
+      name = "json_buffer___json_buffer_3.0.1.tgz";
       path = fetchurl {
-        name = "json_buffer___json_buffer_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz";
-        sha512 = "CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==";
+        name = "json_buffer___json_buffer_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz";
+        sha512 = "4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==";
       };
     }
     {
@@ -1250,11 +1250,11 @@
       };
     }
     {
-      name = "json5___json5_2.2.1.tgz";
+      name = "json5___json5_2.2.3.tgz";
       path = fetchurl {
-        name = "json5___json5_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz";
-        sha512 = "1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==";
+        name = "json5___json5_2.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz";
+        sha512 = "XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==";
       };
     }
     {
@@ -1274,11 +1274,11 @@
       };
     }
     {
-      name = "keyv___keyv_3.1.0.tgz";
+      name = "keyv___keyv_4.5.2.tgz";
       path = fetchurl {
-        name = "keyv___keyv_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz";
-        sha512 = "9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==";
+        name = "keyv___keyv_4.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz";
+        sha512 = "5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==";
       };
     }
     {
@@ -1314,14 +1314,6 @@
       };
     }
     {
-      name = "lowercase_keys___lowercase_keys_1.0.1.tgz";
-      path = fetchurl {
-        name = "lowercase_keys___lowercase_keys_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz";
-        sha512 = "G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==";
-      };
-    }
-    {
       name = "lowercase_keys___lowercase_keys_2.0.0.tgz";
       path = fetchurl {
         name = "lowercase_keys___lowercase_keys_2.0.0.tgz";
@@ -1378,6 +1370,14 @@
       };
     }
     {
+      name = "mimic_response___mimic_response_3.1.0.tgz";
+      path = fetchurl {
+        name = "mimic_response___mimic_response_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz";
+        sha512 = "z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==";
+      };
+    }
+    {
       name = "minimatch___minimatch_3.0.4.tgz";
       path = fetchurl {
         name = "minimatch___minimatch_3.0.4.tgz";
@@ -1394,35 +1394,35 @@
       };
     }
     {
-      name = "minimatch___minimatch_5.1.0.tgz";
+      name = "minimatch___minimatch_5.1.6.tgz";
       path = fetchurl {
-        name = "minimatch___minimatch_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz";
-        sha512 = "9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==";
+        name = "minimatch___minimatch_5.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz";
+        sha512 = "lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==";
       };
     }
     {
-      name = "minimist___minimist_1.2.7.tgz";
+      name = "minimist___minimist_1.2.8.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.7.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz";
-        sha512 = "bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==";
+        name = "minimist___minimist_1.2.8.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz";
+        sha512 = "2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==";
       };
     }
     {
-      name = "minimist___minimist_1.2.6.tgz";
+      name = "minipass___minipass_3.3.6.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz";
-        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
+        name = "minipass___minipass_3.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz";
+        sha512 = "DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==";
       };
     }
     {
-      name = "minipass___minipass_3.3.4.tgz";
+      name = "minipass___minipass_4.2.4.tgz";
       path = fetchurl {
-        name = "minipass___minipass_3.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.3.4.tgz";
-        sha512 = "I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==";
+        name = "minipass___minipass_4.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-4.2.4.tgz";
+        sha512 = "lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==";
       };
     }
     {
@@ -1482,19 +1482,11 @@
       };
     }
     {
-      name = "normalize_url___normalize_url_4.5.1.tgz";
+      name = "normalize_url___normalize_url_6.1.0.tgz";
       path = fetchurl {
-        name = "normalize_url___normalize_url_4.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz";
-        sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==";
-      };
-    }
-    {
-      name = "npm_conf___npm_conf_1.1.3.tgz";
-      path = fetchurl {
-        name = "npm_conf___npm_conf_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz";
-        sha512 = "Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==";
+        name = "normalize_url___normalize_url_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz";
+        sha512 = "DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==";
       };
     }
     {
@@ -1514,11 +1506,11 @@
       };
     }
     {
-      name = "p_cancelable___p_cancelable_1.1.0.tgz";
+      name = "p_cancelable___p_cancelable_2.1.1.tgz";
       path = fetchurl {
-        name = "p_cancelable___p_cancelable_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz";
-        sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==";
+        name = "p_cancelable___p_cancelable_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz";
+        sha512 = "BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==";
       };
     }
     {
@@ -1554,14 +1546,6 @@
       };
     }
     {
-      name = "pify___pify_3.0.0.tgz";
-      path = fetchurl {
-        name = "pify___pify_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz";
-        sha512 = "C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==";
-      };
-    }
-    {
       name = "plist___plist_3.0.6.tgz";
       path = fetchurl {
         name = "plist___plist_3.0.6.tgz";
@@ -1570,14 +1554,6 @@
       };
     }
     {
-      name = "prepend_http___prepend_http_2.0.0.tgz";
-      path = fetchurl {
-        name = "prepend_http___prepend_http_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz";
-        sha512 = "ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==";
-      };
-    }
-    {
       name = "progress___progress_2.0.3.tgz";
       path = fetchurl {
         name = "progress___progress_2.0.3.tgz";
@@ -1586,14 +1562,6 @@
       };
     }
     {
-      name = "proto_list___proto_list_1.2.4.tgz";
-      path = fetchurl {
-        name = "proto_list___proto_list_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz";
-        sha512 = "vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==";
-      };
-    }
-    {
       name = "pump___pump_3.0.0.tgz";
       path = fetchurl {
         name = "pump___pump_3.0.0.tgz";
@@ -1602,11 +1570,11 @@
       };
     }
     {
-      name = "punycode___punycode_2.1.1.tgz";
+      name = "punycode___punycode_2.3.0.tgz";
       path = fetchurl {
-        name = "punycode___punycode_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
-        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+        name = "punycode___punycode_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz";
+        sha512 = "rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==";
       };
     }
     {
@@ -1618,6 +1586,14 @@
       };
     }
     {
+      name = "quick_lru___quick_lru_5.1.1.tgz";
+      path = fetchurl {
+        name = "quick_lru___quick_lru_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz";
+        sha512 = "WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==";
+      };
+    }
+    {
       name = "read_config_file___read_config_file_6.2.0.tgz";
       path = fetchurl {
         name = "read_config_file___read_config_file_6.2.0.tgz";
@@ -1634,11 +1610,19 @@
       };
     }
     {
-      name = "responselike___responselike_1.0.2.tgz";
+      name = "resolve_alpn___resolve_alpn_1.2.1.tgz";
+      path = fetchurl {
+        name = "resolve_alpn___resolve_alpn_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz";
+        sha512 = "0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==";
+      };
+    }
+    {
+      name = "responselike___responselike_2.0.1.tgz";
       path = fetchurl {
-        name = "responselike___responselike_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz";
-        sha512 = "/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==";
+        name = "responselike___responselike_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz";
+        sha512 = "4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==";
       };
     }
     {
@@ -1738,11 +1722,11 @@
       };
     }
     {
-      name = "simple_update_notifier___simple_update_notifier_1.0.7.tgz";
+      name = "simple_update_notifier___simple_update_notifier_1.1.0.tgz";
       path = fetchurl {
-        name = "simple_update_notifier___simple_update_notifier_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.0.7.tgz";
-        sha512 = "BBKgR84BJQJm6WjWFMHgLVuo61FBDSj1z/xSFUIozqO6wO7ii0JxCqlIud7Enr/+LhlbNI0whErq96P2qHNWew==";
+        name = "simple_update_notifier___simple_update_notifier_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz";
+        sha512 = "VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==";
       };
     }
     {
@@ -1842,11 +1826,11 @@
       };
     }
     {
-      name = "tar___tar_6.1.12.tgz";
+      name = "tar___tar_6.1.13.tgz";
       path = fetchurl {
-        name = "tar___tar_6.1.12.tgz";
-        url  = "https://registry.yarnpkg.com/tar/-/tar-6.1.12.tgz";
-        sha512 = "jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==";
+        name = "tar___tar_6.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz";
+        sha512 = "jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==";
       };
     }
     {
@@ -1874,14 +1858,6 @@
       };
     }
     {
-      name = "to_readable_stream___to_readable_stream_1.0.0.tgz";
-      path = fetchurl {
-        name = "to_readable_stream___to_readable_stream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz";
-        sha512 = "Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==";
-      };
-    }
-    {
       name = "truncate_utf8_bytes___truncate_utf8_bytes_1.0.2.tgz";
       path = fetchurl {
         name = "truncate_utf8_bytes___truncate_utf8_bytes_1.0.2.tgz";
@@ -1890,14 +1866,6 @@
       };
     }
     {
-      name = "tunnel___tunnel_0.0.6.tgz";
-      path = fetchurl {
-        name = "tunnel___tunnel_0.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz";
-        sha512 = "1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==";
-      };
-    }
-    {
       name = "type_fest___type_fest_0.13.1.tgz";
       path = fetchurl {
         name = "type_fest___type_fest_0.13.1.tgz";
@@ -1906,11 +1874,11 @@
       };
     }
     {
-      name = "typescript___typescript_4.8.4.tgz";
+      name = "typescript___typescript_4.9.5.tgz";
       path = fetchurl {
-        name = "typescript___typescript_4.8.4.tgz";
-        url  = "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz";
-        sha512 = "QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==";
+        name = "typescript___typescript_4.9.5.tgz";
+        url  = "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz";
+        sha512 = "1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==";
       };
     }
     {
@@ -1954,14 +1922,6 @@
       };
     }
     {
-      name = "url_parse_lax___url_parse_lax_3.0.0.tgz";
-      path = fetchurl {
-        name = "url_parse_lax___url_parse_lax_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz";
-        sha512 = "NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==";
-      };
-    }
-    {
       name = "utf8_byte_length___utf8_byte_length_1.0.4.tgz";
       path = fetchurl {
         name = "utf8_byte_length___utf8_byte_length_1.0.4.tgz";
@@ -2034,11 +1994,11 @@
       };
     }
     {
-      name = "yargs___yargs_17.6.1.tgz";
+      name = "yargs___yargs_17.7.1.tgz";
       path = fetchurl {
-        name = "yargs___yargs_17.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.6.1.tgz";
-        sha512 = "leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==";
+        name = "yargs___yargs_17.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz";
+        sha512 = "cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==";
       };
     }
     {
diff --git a/pkgs/applications/office/portfolio/default.nix b/pkgs/applications/office/portfolio/default.nix
index 54d28ba0d6f08..fa87d669d117b 100644
--- a/pkgs/applications/office/portfolio/default.nix
+++ b/pkgs/applications/office/portfolio/default.nix
@@ -27,11 +27,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "PortfolioPerformance";
-  version = "0.61.4";
+  version = "0.62.0";
 
   src = fetchurl {
     url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
-    hash = "sha256-VXna2ofhh8Hcyfp9+ekXHs68xcXF7HdcJNagJlzPV6c=";
+    hash = "sha256-V3CHp0r+3Vya9lcuCfHeVQqmy9rxlN9cs5ZShoJ9XTA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/qnotero/default.nix b/pkgs/applications/office/qnotero/default.nix
index fbfe11a2c9476..e90184b522125 100644
--- a/pkgs/applications/office/qnotero/default.nix
+++ b/pkgs/applications/office/qnotero/default.nix
@@ -26,6 +26,18 @@ python3Packages.buildPythonPackage rec {
     wrapQtApp "$out"/bin/qnotero
   '';
 
+  postInstall = ''
+    mkdir $out/share
+    mv $out/usr/share/applications $out/share/applications
+
+    substituteInPlace $out/share/applications/qnotero.desktop \
+      --replace "Icon=/usr/share/qnotero/resources/light/qnotero.png" "Icon=qnotero"
+
+    mkdir -p $out/share/icons/hicolor/64x64/apps
+    ln -s $out/usr/share/qnotero/resources/light/qnotero.png \
+      $out/share/icons/hicolor/64x64/apps/qnotero.png
+  '';
+
   # no tests executed
   doCheck = false;
 
diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix
index bc15b2ef29ade..e00af4d56f982 100644
--- a/pkgs/applications/office/qownnotes/default.nix
+++ b/pkgs/applications/office/qownnotes/default.nix
@@ -17,14 +17,14 @@
 let
   pname = "qownnotes";
   appname = "QOwnNotes";
-  version = "23.4.0";
+  version = "23.4.6";
 in
 stdenv.mkDerivation {
   inherit pname appname version;
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
-    sha256 = "sha256-8gSy7WL0wpLAXxVo3oOA9X12qd/R7P3MgmlwXxpJSUs=";
+    sha256 = "sha256-lfQkY/B+mv+hUeAfmZkZ2BHq7MjR0MUVNPjk5QCGisE=";
   };
 
   nativeBuildInputs = [
@@ -60,7 +60,7 @@ stdenv.mkDerivation {
     changelog = "https://www.qownnotes.org/changelog.html";
     downloadPage = "https://github.com/pbek/QOwnNotes/releases/tag/v${version}";
     license = licenses.gpl2Only;
-    maintainers = with maintainers; [ totoroot ];
+    maintainers = with maintainers; [ pbek totoroot ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/office/super-productivity/default.nix b/pkgs/applications/office/super-productivity/default.nix
index 869b72fb8f125..c16c757836aab 100644
--- a/pkgs/applications/office/super-productivity/default.nix
+++ b/pkgs/applications/office/super-productivity/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "super-productivity";
-  version = "7.13.1";
+  version = "7.13.2";
 
   src = fetchurl {
     url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage";
-    sha256 = "sha256-ZZnyPdwzIX0WNywcD2uYxaDG/cbgU8nyiwe0r3YIrs0=";
+    sha256 = "sha256-HwRJUrNaoAnNuIcDWgXOYA+PxLjOE6NXRJqINIbVxOw=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix
index a2a967bf31cf2..dd7290636a928 100644
--- a/pkgs/applications/office/treesheets/default.nix
+++ b/pkgs/applications/office/treesheets/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "treesheets";
-  version = "unstable-2023-04-04";
+  version = "unstable-2023-04-17";
 
   src = fetchFromGitHub {
     owner = "aardappel";
     repo = "treesheets";
-    rev = "a7d0065763c0bf0cfc2b410b17cb1fce33619616";
-    sha256 = "wDAheXzObiqFkZ2ZVQAzMVZT5mzIEzxh6jNwPiPoWis=";
+    rev = "49b7592b6b59412d14884d19d9911d59b13f8c9f";
+    sha256 = "PS/g/ZdeCz/BHud6WtMkzvVQi+TBqEZLZaw05xRTmrQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/trilium/desktop.nix b/pkgs/applications/office/trilium/desktop.nix
index 97f8586894dcd..c376d41514062 100644
--- a/pkgs/applications/office/trilium/desktop.nix
+++ b/pkgs/applications/office/trilium/desktop.nix
@@ -6,13 +6,13 @@
 
 let
   pname = "trilium-desktop";
-  version = "0.59.2";
+  version = "0.59.4";
 
   linuxSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
-  linuxSource.sha256 = "1mnggfb16vi02dikhnsc3nbdrb0m25f9lch4d1r65lr6svw7sxjp";
+  linuxSource.sha256 = "0vv58bcwx62slrc6f7ra61m71nqh6pb2rg4h99f8krj2h56zhrij";
 
   darwinSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-mac-x64-${version}.zip";
-  darwinSource.sha256 = "0j07yxfgvqn76bfpbqlvabdkbfrhp5g4f58w9gf6g1n9ky7w7dzj";
+  darwinSource.sha256 = "18jdz32i0blh3hrdyh558fmqncjrnv1j1g3hwjcph8hi90pqycdr";
 
   meta = metaCommon // {
     mainProgram = "trilium";
diff --git a/pkgs/applications/office/trilium/server.nix b/pkgs/applications/office/trilium/server.nix
index bb785c4ef4c67..6db1f4e036a06 100644
--- a/pkgs/applications/office/trilium/server.nix
+++ b/pkgs/applications/office/trilium/server.nix
@@ -3,8 +3,8 @@
 
 let
   serverSource.url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
-  serverSource.sha256 = "1i7rrzj40ixi4l4hhxdn9n0b8zmm40ycprhaklh9kk39v38rai3y";
-  version = "0.59.2";
+  serverSource.sha256 = "1ys9vnxrxhy52accqxkmvf63kqwaf3ba6ysk3a8wfn2rwxa766g8";
+  version = "0.59.4";
 in stdenv.mkDerivation rec {
   pname = "trilium-server";
   inherit version;
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index 2c18ce6b004c0..3abf9f16b0803 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -41,12 +41,12 @@
 
 stdenv.mkDerivation rec {
   pname = "zotero";
-  version = "6.0.23";
+  version = "6.0.26";
 
   src = fetchurl {
     url =
       "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
-    hash = "sha256-DPuUSEhZM6gRO82eXalf1ucDBQh2KvTBwOPjR5DEsqM=";
+    hash = "sha256-Btrzv9trUFjCrQ+OEc7MUOzq7x3XW7jtgUJMitmPK0A=";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
diff --git a/pkgs/applications/plasma-mobile/default.nix b/pkgs/applications/plasma-mobile/default.nix
index 255b3828f7682..97076070ae600 100644
--- a/pkgs/applications/plasma-mobile/default.nix
+++ b/pkgs/applications/plasma-mobile/default.nix
@@ -57,26 +57,10 @@ let
         inherit mkDerivation;
       };
     in {
-      alligator = callPackage ./alligator.nix {};
-      angelfish = callPackage ./angelfish.nix { inherit srcs; };
-      audiotube = callPackage ./audiotube.nix {};
-      calindori = callPackage ./calindori.nix {};
-      kalk = callPackage ./kalk.nix {};
-      kasts = callPackage ./kasts.nix {};
-      kclock = callPackage ./kclock.nix {};
-      keysmith = callPackage ./keysmith.nix {};
-      koko = callPackage ./koko.nix {};
-      krecorder = callPackage ./krecorder.nix {};
-      ktrip = callPackage ./ktrip.nix {};
-      kweather = callPackage ./kweather.nix {};
-      neochat = callPackage ./neochat.nix { inherit srcs; };
       plasma-dialer = callPackage ./plasma-dialer.nix {};
       plasma-phonebook = callPackage ./plasma-phonebook.nix {};
       plasma-settings = callPackage ./plasma-settings.nix {};
-      plasmatube = callPackage ./plasmatube {};
-      qmlkonsole = callPackage ./qmlkonsole.nix {};
       spacebar = callPackage ./spacebar.nix {};
-      tokodon = callPackage ./tokodon.nix {};
     };
 
 in lib.makeScope libsForQt5.newScope packages
diff --git a/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch b/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch
deleted file mode 100644
index 704b92b2b01a7..0000000000000
--- a/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 7a9405ed02b0d86839644a2c237ca7ca8b891b76 Mon Sep 17 00:00:00 2001
-From: Samuel Dionne-Riel <samuel@dionne-riel.com>
-Date: Wed, 30 Nov 2022 21:07:56 -0500
-Subject: [PATCH] Add placeholders for runtime dependencies
-
----
- src/videomodel.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/videomodel.cpp b/src/videomodel.cpp
-index 4bb3451..b558f31 100644
---- a/src/videomodel.cpp
-+++ b/src/videomodel.cpp
-@@ -121,7 +121,7 @@ QString VideoModel::remoteUrl()
-         return {};
-     }
- 
--    QString youtubeDl = QStringLiteral("yt-dlp");
-+    QString youtubeDl = QStringLiteral("@yt-dlp@");
-     QStringList arguments;
-     arguments << QLatin1String("--dump-json")
-               << m_videoId;
--- 
-2.38.0
-
diff --git a/pkgs/applications/radio/chirp/default.nix b/pkgs/applications/radio/chirp/default.nix
index 52d3c566179da..11011293ffd16 100644
--- a/pkgs/applications/radio/chirp/default.nix
+++ b/pkgs/applications/radio/chirp/default.nix
@@ -1,7 +1,10 @@
 { lib
 , fetchFromGitHub
+, glib
+, gsettings-desktop-schemas
 , python3
 , unstableGitUpdater
+, wrapGAppsHook
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -14,7 +17,13 @@ python3.pkgs.buildPythonApplication rec {
     rev = "33402b7c545c5a92b7042369867e7eb75ef32a59";
     hash = "sha256-duSEpd2GBBskoKNFos5X9wFtsjRct1918VhZd1T2rvU=";
   };
-
+  buildInputs = [
+    glib
+    gsettings-desktop-schemas
+  ];
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
   propagatedBuildInputs = with python3.pkgs; [
     future
     pyserial
diff --git a/pkgs/applications/radio/gnss-sdr/default.nix b/pkgs/applications/radio/gnss-sdr/default.nix
index 725f531dd0720..c1d3950bed016 100644
--- a/pkgs/applications/radio/gnss-sdr/default.nix
+++ b/pkgs/applications/radio/gnss-sdr/default.nix
@@ -60,13 +60,10 @@ gnuradio.pkgs.mkDerivation rec {
     pugixml
     protobuf
     gnuradio.unwrapped.boost
+    gnuradio.unwrapped.logLib
   ] ++ lib.optionals (gnuradio.hasFeature "gr-uhd") [
     gnuradio.unwrapped.uhd
-  ] ++ (if (lib.versionAtLeast gnuradio.unwrapped.versionAttr.major "3.10") then [
-    gnuradio.unwrapped.spdlog
-  ] else [
-    gnuradio.unwrapped.log4cpp
-  ]) ++ lib.optionals (enableRawUdp) [
+  ] ++ lib.optionals (enableRawUdp) [
     libpcap
   ] ++ lib.optionals (gnuradio.hasFeature "gr-ctrlport") [
     thrift
diff --git a/pkgs/applications/radio/gnuradio/3.8.nix b/pkgs/applications/radio/gnuradio/3.8.nix
index 1c53482143e63..e10d3df374e22 100644
--- a/pkgs/applications/radio/gnuradio/3.8.nix
+++ b/pkgs/applications/radio/gnuradio/3.8.nix
@@ -225,7 +225,7 @@ let
   inherit (shared) hasFeature; # function
 in
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   inherit pname;
   inherit (shared)
     version
@@ -253,8 +253,10 @@ stdenv.mkDerivation rec {
     inherit
       boost
       volk
-      log4cpp
     ;
+    # Used by many gnuradio modules, the same attribute is present in
+    # gnuradio3.10 where there it's spdlog.
+    logLib = log4cpp;
   } // lib.optionalAttrs (hasFeature "gr-uhd") {
     inherit uhd;
   } // lib.optionalAttrs (hasFeature "gr-qtgui") {
diff --git a/pkgs/applications/radio/gnuradio/3.9.nix b/pkgs/applications/radio/gnuradio/3.9.nix
index 170aa554e99d2..a393cd5528d57 100644
--- a/pkgs/applications/radio/gnuradio/3.9.nix
+++ b/pkgs/applications/radio/gnuradio/3.9.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 # Remove gcc and python references
 , removeReferencesTo
@@ -141,6 +140,9 @@ let
     };
     gr-blocks = {
       cmakeEnableFlag = "GR_BLOCKS";
+      runtime = [
+        libsndfile
+      ];
     };
     gr-fec = {
       cmakeEnableFlag = "GR_FEC";
@@ -259,7 +261,7 @@ let
   inherit (shared) hasFeature; # function
 in
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   inherit pname;
   inherit (shared)
     version
@@ -283,8 +285,10 @@ stdenv.mkDerivation rec {
     inherit
       boost
       volk
-      log4cpp
     ;
+    # Used by many gnuradio modules, the same attribute is present in
+    # gnuradio3.10 where there it's spdlog.
+    logLib = log4cpp;
   } // lib.optionalAttrs (hasFeature "gr-uhd") {
     inherit uhd;
   } // lib.optionalAttrs (hasFeature "gr-qtgui") {
diff --git a/pkgs/applications/radio/gnuradio/default.nix b/pkgs/applications/radio/gnuradio/default.nix
index 4a98fc0ddf8d6..ca0f7fb97eaca 100644
--- a/pkgs/applications/radio/gnuradio/default.nix
+++ b/pkgs/applications/radio/gnuradio/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 # Remove gcc and python references
 , removeReferencesTo
@@ -143,6 +142,10 @@ let
     };
     gr-blocks = {
       cmakeEnableFlag = "GR_BLOCKS";
+      runtime = [
+        # Required to compile wavfile blocks.
+        libsndfile
+      ];
     };
     gr-fec = {
       cmakeEnableFlag = "GR_FEC";
@@ -278,7 +281,7 @@ let
   inherit (shared) hasFeature; # function
 in
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   inherit pname;
   inherit (shared)
     version
@@ -302,8 +305,10 @@ stdenv.mkDerivation rec {
     inherit
       boost
       volk
-      spdlog
     ;
+    # Used by many gnuradio modules, the same attribute is present in
+    # previous gnuradio versions where there it's log4cpp.
+    logLib = spdlog;
   } // lib.optionalAttrs (hasFeature "gr-uhd") {
     inherit uhd;
   } // lib.optionalAttrs (hasFeature "gr-pdu") {
diff --git a/pkgs/applications/radio/gqrx/default.nix b/pkgs/applications/radio/gqrx/default.nix
index 2ccc2c73771f7..e6bcffda26512 100644
--- a/pkgs/applications/radio/gqrx/default.nix
+++ b/pkgs/applications/radio/gqrx/default.nix
@@ -5,7 +5,7 @@
 , qtbase
 , qtsvg
 , qtwayland
-, gnuradio3_8Minimal
+, gnuradioMinimal
 , thrift
 , mpir
 , fftwFloat
@@ -25,15 +25,15 @@ assert portaudioSupport -> portaudio != null;
 # audio backends are mutually exclusive
 assert !(pulseaudioSupport && portaudioSupport);
 
-gnuradio3_8Minimal.pkgs.mkDerivation rec {
+gnuradioMinimal.pkgs.mkDerivation rec {
   pname = "gqrx";
-  version = "2.15.9";
+  version = "2.15.10";
 
   src = fetchFromGitHub {
     owner = "gqrx-sdr";
     repo = "gqrx";
     rev = "v${version}";
-    hash = "sha256-KQBtYVEfOXpzfxNMgTu6Hup7XpjubrpvZazcFlml4Kg=";
+    hash = "sha256-oynon3bInIBZxGo2PjNY6jMGzJp82mqM2Yo9wI8fOjA=";
   };
 
   nativeBuildInputs = [
@@ -43,21 +43,21 @@ gnuradio3_8Minimal.pkgs.mkDerivation rec {
     wrapGAppsHook
   ];
   buildInputs = [
-    gnuradio3_8Minimal.unwrapped.log4cpp
+    gnuradioMinimal.unwrapped.logLib
     mpir
     fftwFloat
     alsa-lib
     libjack2
-    gnuradio3_8Minimal.unwrapped.boost
+    gnuradioMinimal.unwrapped.boost
     qtbase
     qtsvg
     qtwayland
-    gnuradio3_8Minimal.pkgs.osmosdr
+    gnuradioMinimal.pkgs.osmosdr
     rtl-sdr
     hackrf
-  ] ++ lib.optionals (gnuradio3_8Minimal.hasFeature "gr-ctrlport") [
+  ] ++ lib.optionals (gnuradioMinimal.hasFeature "gr-ctrlport") [
     thrift
-    gnuradio3_8Minimal.unwrapped.python.pkgs.thrift
+    gnuradioMinimal.unwrapped.python.pkgs.thrift
   ] ++ lib.optionals pulseaudioSupport [ libpulseaudio ]
     ++ lib.optionals portaudioSupport [ portaudio ];
 
diff --git a/pkgs/applications/radio/qradiolink/default.nix b/pkgs/applications/radio/qradiolink/default.nix
index 02542e503192e..1bfb4c74f6335 100644
--- a/pkgs/applications/radio/qradiolink/default.nix
+++ b/pkgs/applications/radio/qradiolink/default.nix
@@ -49,7 +49,7 @@ gnuradio3_8.pkgs.mkDerivation rec {
   buildInputs = [
     gnuradio3_8.unwrapped.boost
     codec2
-    gnuradio3_8.unwrapped.log4cpp
+    gnuradio3_8.unwrapped.logLib
     gmp
     libpulseaudio
     libconfig
diff --git a/pkgs/applications/radio/sdrangel/default.nix b/pkgs/applications/radio/sdrangel/default.nix
index 82627dbb6141c..52cdc4ccd2604 100644
--- a/pkgs/applications/radio/sdrangel/default.nix
+++ b/pkgs/applications/radio/sdrangel/default.nix
@@ -23,7 +23,6 @@
 , limesuite
 , libbladeRF
 , mbelib
-, mkDerivation
 , ninja
 , ocl-icd
 , opencv3
@@ -45,21 +44,22 @@
 , sgp4
 , soapysdr-with-plugins
 , uhd
+, wrapQtAppsHook
 , zlib
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "sdrangel";
-  version = "7.11.0";
+  version = "7.13.0";
 
   src = fetchFromGitHub {
     owner = "f4exb";
     repo = "sdrangel";
     rev = "v${version}";
-    hash = "sha256-zWux84a1MCK0XJXRXcaLHieJ47d4n/wO/xdwTYuuGJw=";
+    hash = "sha256-xG41FNlMfqH5MaGVFFENP0UFEkZYiWhtpNSPh2s4Irk=";
   };
 
-  nativeBuildInputs = [ cmake ninja pkg-config ];
+  nativeBuildInputs = [ cmake ninja pkg-config wrapQtAppsHook ];
 
   buildInputs = [
     airspy
@@ -106,12 +106,10 @@ mkDerivation rec {
 
   cmakeFlags = [
     "-DAPT_DIR=${aptdec}"
-    "-DDAB_INCLUDE_DIR:PATH=${dab_lib}/include/dab_lib"
-    "-DLIBSERIALDV_INCLUDE_DIR:PATH=${serialdv}/include/serialdv"
-    "-DLIMESUITE_INCLUDE_DIR:PATH=${limesuite}/include"
-    "-DLIMESUITE_LIBRARY:FILEPATH=${limesuite}/lib/libLimeSuite${stdenv.hostPlatform.extensions.sharedLibrary}"
+    "-DDAB_DIR=${dab_lib}"
     "-DSGP4_DIR=${sgp4}"
     "-DSOAPYSDR_DIR=${soapysdr-with-plugins}"
+    "-Wno-dev"
   ];
 
   LD_LIBRARY_PATH = "${ocl-icd}/lib";
diff --git a/pkgs/applications/radio/uhd/default.nix b/pkgs/applications/radio/uhd/default.nix
index b810af6e2ea6f..873c49dd9a7c8 100644
--- a/pkgs/applications/radio/uhd/default.nix
+++ b/pkgs/applications/radio/uhd/default.nix
@@ -11,9 +11,9 @@
 # requires numpy
 , enablePythonApi ? false
 , python3
+, buildPackages
 , enableExamples ? false
 , enableUtils ? false
-, enableSim ? false
 , libusb1
 , enableDpdk ? false
 , dpdk
@@ -34,6 +34,11 @@
 let
   onOffBool = b: if b then "ON" else "OFF";
   inherit (lib) optionals;
+  # Later used in pythonEnv generation. Python + mako are always required for the build itself but not necessary for runtime.
+  pythonEnvArg = (ps: with ps; [ mako ]
+    ++ optionals (enablePythonApi) [ numpy setuptools ]
+    ++ optionals (enableUtils) [ requests six ]
+  );
 in
 
 stdenv.mkDerivation rec {
@@ -84,21 +89,14 @@ stdenv.mkDerivation rec {
     ++ [ (lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ]
   ;
 
-  # Python + mako are always required for the build itself but not necessary for runtime.
-  pythonEnv = python3.withPackages (ps: with ps; [ mako ]
-    ++ optionals (enablePythonApi) [ numpy setuptools ]
-    ++ optionals (enableUtils) [ requests six ]
-  );
+  pythonEnv = python3.withPackages pythonEnvArg;
 
   nativeBuildInputs = [
     cmake
     pkg-config
-  ]
-    # If both enableLibuhd_Python_api and enableUtils are off, we don't need
-    # pythonEnv in buildInputs as it's a 'build' dependency and not a runtime
-    # dependency
-    ++ optionals (!enablePythonApi && !enableUtils) [ pythonEnv ]
-  ;
+    # Present both here and in buildInputs for cross compilation.
+    (buildPackages.python3.withPackages pythonEnvArg)
+  ];
   buildInputs = [
     boost
     libusb1
@@ -121,8 +119,6 @@ stdenv.mkDerivation rec {
   patches = [
     # Disable tests that fail in the sandbox
     ./no-adapter-tests.patch
-  ] ++ lib.optionals stdenv.isAarch32 [
-    ./neon.patch
   ];
 
   postPhases = [ "installFirmware" "removeInstalledTests" ]
diff --git a/pkgs/applications/radio/uhd/neon.patch b/pkgs/applications/radio/uhd/neon.patch
deleted file mode 100644
index 18ec59c1d64be..0000000000000
--- a/pkgs/applications/radio/uhd/neon.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Description: When building for armhf, enable NEON
- NEON is part of the armhf baseline, so this will always be enabled on
- armhf.
-Author: Paul Tagliamonte <paultag@debian.org>
-Bug-Debian: https://bugs.debian.org/873608
-Origin: vendor
-Last-Update: 2017-08-29
-
---- uhd-3.10.2.0.orig/host/lib/convert/CMakeLists.txt
-+++ uhd-3.10.2.0/host/lib/convert/CMakeLists.txt
-@@ -67,6 +67,8 @@ IF(HAVE_ARM_NEON_H AND (${CMAKE_SIZEOF_V
-         ${CMAKE_CURRENT_SOURCE_DIR}/convert_with_neon.cpp
-         ${CMAKE_CURRENT_SOURCE_DIR}/convert_neon.S
-     )
-+
-+    SET ( CMAKE_CXX_FLAGS "-mfpu=neon" )
- ENDIF()
- 
- ########################################################################
diff --git a/pkgs/applications/science/astronomy/kstars/default.nix b/pkgs/applications/science/astronomy/kstars/default.nix
index 3769948fd3eff..c4721c490cce2 100644
--- a/pkgs/applications/science/astronomy/kstars/default.nix
+++ b/pkgs/applications/science/astronomy/kstars/default.nix
@@ -14,11 +14,11 @@
 
 mkDerivation rec {
   pname = "kstars";
-  version = "3.6.3";
+  version = "3.6.4";
 
   src = fetchurl {
     url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz";
-    sha256 = "sha256-sve9q4iM/Y8+K64Ceby/KGx5Un5G0o5cCnIxJkXTgug=";
+    sha256 = "sha256-9MJqJVgSZVBzlLv08Z6i8yO4YV1exsD5+yLJjqIGD20=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index c3880b0b1d2be..2b8d292eada0b 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -30,6 +30,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-7jzS3pRklPsCTgCr3nrywfHCNlBDHuyuGGvrVoI9+A0=";
   };
 
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace CMakeLists.txt \
+      --replace 'SET(CMAKE_INSTALL_PREFIX "''${PROJECT_BINARY_DIR}/Stellarium.app/Contents")' \
+                'SET(CMAKE_INSTALL_PREFIX "${placeholder "out"}/Applications/Stellarium.app/Contents")'
+    substituteInPlace src/CMakeLists.txt \
+      --replace "\''${_qt_bin_dir}/../" "${qtmultimedia}/lib/qt-6/"
+  '';
+
   nativeBuildInputs = [
     cmake
     perl
@@ -44,22 +52,28 @@ stdenv.mkDerivation rec {
     qtmultimedia
     qtserialport
     qttranslations
-    qtwayland
     qtwebengine
     calcmysky
     qxlsx
     indilib
     libnova
+  ] ++ lib.optionals stdenv.isLinux [
+    qtwayland
   ];
 
   preConfigure = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace CMakeLists.txt \
-      --replace 'SET(CMAKE_INSTALL_PREFIX "''${PROJECT_BINARY_DIR}/Stellarium.app/Contents")' \
-                'SET(CMAKE_INSTALL_PREFIX "${placeholder "out"}/Applications/Stellarium.app/Contents")'
+    export LC_ALL=en_US.UTF-8
   '';
 
+  # fatal error: 'QtSerialPort/QSerialPortInfo' file not found
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-F${qtserialport}/lib";
+
   dontWrapGApps = true;
 
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    makeWrapper $out/Applications/Stellarium.app/Contents/MacOS/Stellarium $out/bin/stellarium
+  '';
+
   preFixup = ''
     qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
diff --git a/pkgs/applications/science/biology/blast/bin.nix b/pkgs/applications/science/biology/blast/bin.nix
index 03e61bdcbe867..daae9c096144a 100644
--- a/pkgs/applications/science/biology/blast/bin.nix
+++ b/pkgs/applications/science/biology/blast/bin.nix
@@ -35,7 +35,7 @@ in
 stdenv.mkDerivation {
   inherit pname version src;
 
-  nativeBuildInputs = lib.optional stdenv.isLinux [ autoPatchelfHook ];
+  nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ];
 
   buildInputs = [ python3 perl ] ++ lib.optionals stdenv.isLinux [ zlib bzip2 glib libxml2 ];
 
diff --git a/pkgs/applications/science/biology/dssp/default.nix b/pkgs/applications/science/biology/dssp/default.nix
index 762b0515e85c2..59da360d1b6df 100644
--- a/pkgs/applications/science/biology/dssp/default.nix
+++ b/pkgs/applications/science/biology/dssp/default.nix
@@ -1,19 +1,30 @@
-{ lib, stdenv, fetchFromGitHub, boost, cmake, libcifpp, zlib, }:
+{ lib, stdenv, fetchFromGitHub, cmake, libcifpp, libmcfp, zlib }:
+let
+  libcifpp' = libcifpp.overrideAttrs (oldAttrs:  rec {
+    # dssp 4.2.2.1 requires specific version "5.0.8" of libcifpp
+    version = "5.0.8";
+    src = fetchFromGitHub {
+      inherit (oldAttrs.src) owner repo;
+      rev = "v${version}";
+      sha256 = "sha256-KJGcopGhCWSl+ElG3BPJjBf/kvYJowOHxto6Ci1IMco=";
+    };
+  });
+in
 
 stdenv.mkDerivation rec {
   pname = "dssp";
-  version = "4.0.5";
+  version = "4.2.2.1";
 
   src = fetchFromGitHub {
     owner = "PDB-REDO";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1x35rdcm4fch66pjbmy73lv0gdb6g9y3v023a66512a6nzsqjsir";
+    sha256 = "sha256-vmGvC5d8LTo+pcY9sxwj0d6JvH8Lyk+QSOZo5raBci4=";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ boost libcifpp zlib ];
+  buildInputs = [ libcifpp' libmcfp zlib ];
 
   meta = with lib; {
     description = "Calculate the most likely secondary structure assignment given the 3D structure of a protein";
diff --git a/pkgs/applications/science/biology/subread/default.nix b/pkgs/applications/science/biology/subread/default.nix
index d083e202a9ffe..45f0a1d7f4626 100644
--- a/pkgs/applications/science/biology/subread/default.nix
+++ b/pkgs/applications/science/biology/subread/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "subread";
-  version = "2.0.4";
+  version = "2.0.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/subread/subread-${version}/subread-${version}-source.tar.gz";
-    sha256 = "sha256-xUs37YOzQxjY8Rm1wC+50KZcgRGVvMnhdF322vdMots=";
+    sha256 = "sha256-frZzd+IV4IxfPK44PWOgV9yPRPoUB3smPbxoDchbaSc=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/science/biology/tandem-aligner/default.nix b/pkgs/applications/science/biology/tandem-aligner/default.nix
index 53daffbe0677e..5f197bd7f79cd 100644
--- a/pkgs/applications/science/biology/tandem-aligner/default.nix
+++ b/pkgs/applications/science/biology/tandem-aligner/default.nix
@@ -6,14 +6,14 @@
 , zlib
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs: {
   pname = "TandemAligner";
-  version = "unstable-2022-09-17";
+  version = "0.1";
 
   src = fetchFromGitHub {
     owner = "seryrzu";
     repo = "tandem_aligner";
-    rev = "ac6004f108ad20477045f4d0b037d96051a9df70";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-iMDj1HZ8LzmZckuAM3lbG3eSJSd/5JGVA6SBs7+AgX8=";
   };
 
@@ -58,9 +58,10 @@ stdenv.mkDerivation {
   meta = {
     description = "A parameter-free algorithm for sequence alignment";
     homepage = "https://github.com/seryrzu/tandem_aligner";
+    changelog = "https://github.com/seryrzu/tandem_aligner/releases/tag/v${finalAttrs.version}";
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [ amesgen ];
     platforms = lib.platforms.linux;
     mainProgram = "tandem_aligner";
   };
-}
+})
diff --git a/pkgs/applications/science/biology/truvari/default.nix b/pkgs/applications/science/biology/truvari/default.nix
index 412642f523f2d..cf64070d782f2 100644
--- a/pkgs/applications/science/biology/truvari/default.nix
+++ b/pkgs/applications/science/biology/truvari/default.nix
@@ -1,47 +1,76 @@
 { lib
 , fetchFromGitHub
 , python3Packages
+, runtimeShell
+, bcftools
+, htslib
 }:
 
-python3Packages.buildPythonApplication rec {
+let
+  ssshtest = fetchFromGitHub {
+    owner = "ryanlayer";
+    repo = "ssshtest";
+    rev = "d21f7f928a167fca6e2eb31616673444d15e6fd0";
+    hash = "sha256-zecZHEnfhDtT44VMbHLHOhRtNsIMWeaBASupVXtmrks=";
+  };
+in python3Packages.buildPythonApplication rec {
   pname = "truvari";
-  version = "2.1.1";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
-    owner = "spiralgenetics";
+    owner = "ACEnglish";
     repo = "truvari";
     rev = "v${version}";
-    sha256 = "14nsdbj063qm175xxixs34cihvsiskc9gym8pg7gbwsh13k5a00h";
+    hash = "sha256-UJNMKEV5m2jFqnWvkVAtymkcE2TjPIXp7JqRZpMSqsE=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace 'python-Levenshtein==0.12.1' 'python-Levenshtein>=0.12.1'
+      --replace "rich==" "rich>="
+    substituteInPlace truvari/utils.py \
+      --replace "/bin/bash" "${runtimeShell}"
+    patchShebangs repo_utils/test_files
   '';
 
   propagatedBuildInputs = with python3Packages; [
-    pyvcf
-    levenshtein
-    progressbar2
+    rich
+    edlib
     pysam
-    pyfaidx
     intervaltree
+    joblib
+    numpy
     pytabix
-    acebinf
     bwapy
-    joblib
     pandas
   ];
 
-  # no tests
-  doCheck = false;
+  makeWrapperArgs = [
+    "--prefix" "PATH" ":" (lib.makeBinPath [ bcftools htslib ])
+  ];
+
   pythonImportsCheck = [ "truvari" ];
 
+  nativeCheckInputs = [
+    bcftools
+    htslib
+  ] ++ (with python3Packages; [
+    coverage
+  ]);
+
+  checkPhase = ''
+    runHook preCheck
+
+    ln -s ${ssshtest}/ssshtest .
+    bash repo_utils/truvari_ssshtests.sh
+
+    runHook postCheck
+  '';
+
   meta = with lib; {
     description = "Structural variant comparison tool for VCFs";
-    homepage = "https://github.com/spiralgenetics/truvari";
+    homepage = "https://github.com/ACEnglish/truvari";
     license = licenses.mit;
-    maintainers = with maintainers; [ scalavision ];
+    maintainers = with maintainers; [ natsukium scalavision ];
     longDescription = ''
       Truvari is a benchmarking tool for comparison sets of SVs.
       It can calculate the recall, precision, and f-measure of a
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index 98f7ccbfee02a..5ad4ce884ce72 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -25,14 +25,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "16.1.3";
+  version = "16.1.9";
   pname = "jmol";
 
   src = let
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    sha256 = "sha256-k1F4OaER9vg8GIi4eqppeh2f0MtlcBSfd4zkewFp2As=";
+    hash = "sha256-QGduoUKWNUjNlMEYO0wD5+igjuF03V5SVlgq44d2HDs=";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/electronics/bitscope/common.nix b/pkgs/applications/science/electronics/bitscope/common.nix
index 1cd23d0f414d7..6a024748daf28 100644
--- a/pkgs/applications/science/electronics/bitscope/common.nix
+++ b/pkgs/applications/science/electronics/bitscope/common.nix
@@ -1,5 +1,5 @@
 { atk
-, buildFHSUserEnv
+, buildFHSEnv
 , cairo
 , dpkg
 , gdk-pixbuf
@@ -56,7 +56,7 @@ let
       ${(wrapBinary libs) attrs.toolName}
     '';
   });
-in buildFHSUserEnv {
+in buildFHSEnv {
   name = "${attrs.toolName}-${attrs.version}";
   runScript = "${pkg.outPath}/bin/${attrs.toolName}";
 } // { inherit (pkg) meta name; }
diff --git a/pkgs/applications/science/electronics/dataexplorer/default.nix b/pkgs/applications/science/electronics/dataexplorer/default.nix
index 535871e4edba8..94d24283990a0 100644
--- a/pkgs/applications/science/electronics/dataexplorer/default.nix
+++ b/pkgs/applications/science/electronics/dataexplorer/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dataexplorer";
-  version = "3.7.4";
+  version = "3.7.6";
 
   src = fetchurl {
     url = "mirror://savannah/dataexplorer/dataexplorer-${version}-src.tar.gz";
-    sha256 = "sha256-bghI7Hun7ZKUVEj7T58K0oaclnhUGd4z+eIqZF3eXHQ=";
+    sha256 = "sha256-mwz4o1m2ldjyD4pbwMQxeaI8a8JXzis+s0I+6GW8WaY=";
   };
 
   nativeBuildInputs = [ ant makeWrapper ];
@@ -45,8 +45,8 @@ stdenv.mkDerivation rec {
       --set SWT_GTK3 0 \
       --set LIBOVERLAY_SCROLLBAR 0
 
-    install -Dvm644 build/misc/GNU_LINUX_JUNSI_ICHARER_DUO_UDEV_RULE/50-Junsi-iCharger-DUO.rules \
-      $out/etc/udev/rules.d/50-Junsi-iCharger-DUO.rules
+    install -Dvm644 build/misc/GNU_LINUX_JUNSI_ICHARER_USB_UDEV_RULE/50-Junsi-iCharger-USB.rules \
+      $out/etc/udev/rules.d/50-Junsi-iCharger-USB.rules
     install -Dvm644 build/misc/GNU_LINUX_SKYRC_UDEV_RULE/50-SkyRC-Charger.rules \
       $out/etc/udev/rules.d/50-SkyRC-Charger.rules
   '';
diff --git a/pkgs/applications/science/electronics/gerbv/default.nix b/pkgs/applications/science/electronics/gerbv/default.nix
index f83cfa1bf04e1..0c45184e31c74 100644
--- a/pkgs/applications/science/electronics/gerbv/default.nix
+++ b/pkgs/applications/science/electronics/gerbv/default.nix
@@ -1,13 +1,12 @@
-{ lib, stdenv, fetchgit, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2, autoreconfHook }:
+{ lib, stdenv, fetchurl, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2-x11, autoreconfHook }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gerbv";
-  version = "2015-10-08";
+  version = "2.7.0";
 
-  src = fetchgit {
-    url = "git://git.geda-project.org/gerbv.git";
-    rev = "76b8b67bfa10823ce98f1c4c3b49a2afcadf7659";
-    sha256 = "00jn1xhf6kblxc5gac1wvk8zm12fy6sk81nj3jwdag0z6wk3z446";
+  src = fetchurl {
+    url = "mirror://sourceforge/gerbv/${pname}-${version}.tar.gz";
+    sha256 = "sha256-xe6AjEIwzmvjrRCrY8VHCYOG1DAicE3iXduTeOYgU7Q=";
   };
 
   patches = [
@@ -21,15 +20,17 @@ stdenv.mkDerivation {
   ];
 
   nativeBuildInputs = [ autoreconfHook pkg-config automake autoconf ];
-  buildInputs = [ gettext libtool cairo gtk2 ];
+  buildInputs = [ gettext libtool cairo gtk2-x11 ];
 
   configureFlags = ["--disable-update-desktop-database"];
 
+  env.NIX_CFLAGS_COMPILE = "-Wno-format-security";
+
   meta = with lib; {
     description = "A Gerber (RS-274X) viewer";
     homepage = "http://gerbv.geda-project.org/";
     maintainers = with maintainers; [ mog ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix
index cc03a2e8c8196..276c59aee7d55 100644
--- a/pkgs/applications/science/electronics/gtkwave/default.nix
+++ b/pkgs/applications/science/electronics/gtkwave/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gtkwave";
-  version = "3.3.114";
+  version = "3.3.115";
 
   src = fetchurl {
     url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz";
-    sha256 = "sha256-zzpfyrs3qWckzeLkp0A73ye1HpFGzmenlNvkcBfPhKw=";
+    sha256 = "sha256-rbenwCsYygg1oGS2cvbNxR+HXEVLAYmnQ/LOi5HmSqU=";
   };
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook ];
diff --git a/pkgs/applications/science/electronics/kicad/base.nix b/pkgs/applications/science/electronics/kicad/base.nix
index eb65b6881ae20..1b0bdc3ae49ca 100644
--- a/pkgs/applications/science/electronics/kicad/base.nix
+++ b/pkgs/applications/science/electronics/kicad/base.nix
@@ -94,9 +94,6 @@ stdenv.mkDerivation rec {
     # should be resolved in the next release
     "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;qa_eeschema'"
   ]
-  ++ optionals (!stable) [ # workaround for https://gitlab.com/kicad/code/kicad/-/issues/14346
-    "-DPYTHON_SITE_PACKAGE_PATH=${placeholder "out"}/${python.sitePackages}/"
-  ]
   ++ optional (stable && !withNgspice) "-DKICAD_SPICE=OFF"
   ++ optionals (!withScripting) [
     "-DKICAD_SCRIPTING_WXPYTHON=OFF"
diff --git a/pkgs/applications/science/electronics/kicad/versions.nix b/pkgs/applications/science/electronics/kicad/versions.nix
index b102da24a3d40..2c81611888196 100644
--- a/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/pkgs/applications/science/electronics/kicad/versions.nix
@@ -3,45 +3,45 @@
 {
   "kicad" = {
     kicadVersion = {
-      version =			"7.0.1";
+      version =			"7.0.2";
       src = {
-        rev =			"3b83917a115be1ce2f33a73039f59f8784b5c2e7";
-        sha256 =		"021safxvyq9qzs08jy3jvpazmhvix4kyl05s9y9hwmyzdmdl2smn";
+        rev =			"6a45011f421d65a241e1df4a2dc720819922f343";
+        sha256 =		"0san7pjgvd8niwrki722qb6y46r71rlyspqp43pmkiz55dmz52zx";
       };
     };
     libVersion = {
-      version =			"7.0.1";
+      version =			"7.0.2";
       libSources = {
-        symbols.rev =		"adfe3c06b5750d81580ed44e669b578f49c205eb";
-        symbols.sha256 =	"14c5gci13m30xv0cmic5jxsmfx9lq3fnd8hyq3mmgkrw7443zy30";
-        templates.rev =		"66d76556d9e81f8a5be74457686d211c666ed200";
-        templates.sha256 =	"02i279269mhq7wjhb1yqk90820ncssxl9n7b20qr2r4fmm7jpvxv";
-        footprints.rev =	"1cf5a1d979cffebd62464c1bb0d7b09c5ee3b8c3";
-        footprints.sha256 =	"0k0z40wmaq665hjxb6kp1yl3v7clxz49r6ki0chyphsxv1cnixmy";
-        packages3d.rev =	"e54b5b6368d03f396098448bcce37f2e432dac33";
-        packages3d.sha256 =	"0nzi7ijfb3rjm98kaa9va2mkh0nfzpq4vfhxkq8j18qhx24h5c8v";
+        symbols.rev =		"22ed11504c140fded542eeb104cdb02e0a65672e";
+        symbols.sha256 =	"0aah92rb8yx00z0xwx9z7xn5rrw4cc3z35gr7c0bnb49hiak01jc";
+        templates.rev =		"331068741c80fee8195646d3dee40f3b840495e7";
+        templates.sha256 =	"1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq";
+        footprints.rev =	"e187e2dfa9bd04d91cad0d875049ab56780b6e32";
+        footprints.sha256 =	"1qrdznfd4a6kzwd4aaijkpyjy0xnrmi66isq9z52652a8s6ja48v";
+        packages3d.rev =	"6374ae3db8b43a4d779185b7017fcfe0e1f32590";
+        packages3d.sha256 =	"1nkk4325jh89vh52ykfnf9pz1k3jk5017gz6r2cia2v4b3jadi31";
       };
     };
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2023-03-29";
+      version =			"2023-04-14";
       src = {
-        rev =			"d5bc223ff2cd1fbf4e923e23b5bb442bb54faa95";
-        sha256 =		"0pbzmv9vh4bzhsxj46gjkgh7kk6a0v8gijvkmb56fy5i8xv2ixkn";
+        rev =			"4a3f77cd9dac9dc5921eb9beaa63d0d3c9c051e5";
+        sha256 =		"06dsiyvr7zn3cp13w0y63d1qmjlhzsqlvajkximg3pw5mmiljxrr";
       };
     };
     libVersion = {
-      version =			"2023-03-29";
+      version =			"2023-04-14";
       libSources = {
-        symbols.rev =		"36fc1c88921bf32ebf667e027dfe63cca649fd95";
-        symbols.sha256 =	"177mqvjf3knldnl7pf1abv4pmlgi5cg02ggfwbc655jq4x6x8fkz";
+        symbols.rev =		"38d4e7e1ab6a9b5d9eee85f687e60467753b2135";
+        symbols.sha256 =	"0df6fx9b19v6sxrfyggbisw72y66kiwqi05k8mldsgiw6q55gbkc";
         templates.rev =		"867eef383a0f61015cb69677d5c632d78a2ea01a";
         templates.sha256 =	"1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq";
-        footprints.rev =	"dc4574eb65136d95a7775d09412d5159f8d7832c";
-        footprints.sha256 =	"1iz4wyiysdii378c3pjgkgwh1cssxbh5jkbhvj7rmi2vmgngl6nc";
-        packages3d.rev =	"e54b5b6368d03f396098448bcce37f2e432dac33";
-        packages3d.sha256 =	"0nzi7ijfb3rjm98kaa9va2mkh0nfzpq4vfhxkq8j18qhx24h5c8v";
+        footprints.rev =	"4da055a2d572ff87e7ecea97cf358ed8c1d46dfc";
+        footprints.sha256 =	"1xb84284dmcb7mbvzlrxb4v4km3ih7gq856h8cglf9jn8wzlnvrk";
+        packages3d.rev =	"0f43a0962437feb53bd2083e9f39efffb5a5dd90";
+        packages3d.sha256 =	"1nkk4325jh89vh52ykfnf9pz1k3jk5017gz6r2cia2v4b3jadi31";
       };
     };
   };
diff --git a/pkgs/applications/science/electronics/nvc/default.nix b/pkgs/applications/science/electronics/nvc/default.nix
index 5ec866ea9c490..cb7be33429780 100644
--- a/pkgs/applications/science/electronics/nvc/default.nix
+++ b/pkgs/applications/science/electronics/nvc/default.nix
@@ -16,28 +16,15 @@
 
 stdenv.mkDerivation rec {
   pname = "nvc";
-  version = "1.9.0";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
     owner = "nickg";
     repo = pname;
     rev = "r${version}";
-    hash = "sha256-hsoEAFSXI2bvzZV33jdg1849fipPQlUu3MZVvht54fI=";
+    hash = "sha256-UeA+6RKZMttLThyAf80ONximXRJNw5mUNM+cyCDTcGM=";
   };
 
-  patches = [
-    # TODO: remove me on next release
-    (fetchpatch {
-      url = "https://github.com/nickg/nvc/commit/c857e16c33851f8a5386b97bc0dada2836b5db83.patch";
-      hash = "sha256-rvZHI1iQXT9zLpCugg5mGmMZBRbTe9PSHtDG7FVZ67Q=";
-    })
-  ];
-
-  # TODO: recheck me on next release
-  postPatch = lib.optionalString stdenv.isLinux ''
-    sed -i "/vhpi4/d" test/regress/testlist.txt
-  '';
-
   nativeBuildInputs = [
     autoreconfHook
     check
diff --git a/pkgs/applications/science/logic/sad/default.nix b/pkgs/applications/science/logic/sad/default.nix
deleted file mode 100644
index a509d70ed4624..0000000000000
--- a/pkgs/applications/science/logic/sad/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv, fetchurl, haskell, spass }:
-
-stdenv.mkDerivation rec {
-  pname = "system-for-automated-deduction";
-  version = "2.3.25";
-  src = fetchurl {
-    url = "http://nevidal.org/download/sad-${version}.tar.gz";
-    sha256 = "10jd93xgarik7xwys5lq7fx4vqp7c0yg1gfin9cqfch1k1v8ap4b";
-  };
-  buildInputs = [ haskell.compiler.ghc844 spass ];
-  patches = [
-    ./patch.patch
-    # Since the LTS 12.0 update, <> is an operator in Prelude, colliding with
-    # the <> operator with a different meaning defined by this package
-    ./monoid.patch
-  ];
-  postPatch = ''
-    substituteInPlace Alice/Main.hs --replace init.opt $out/init.opt
-  '';
-  installPhase = ''
-    mkdir -p $out/{bin,provers}
-    install alice $out/bin
-    install provers/moses $out/provers
-    substituteAll provers/provers.dat $out/provers/provers.dat
-    substituteAll init.opt $out/init.opt
-    cp -r examples $out
-  '';
-  inherit spass;
-  meta = {
-    description = "A program for automated proving of mathematical texts";
-    longDescription = ''
-      The system for automated deduction is intended for automated processing of formal mathematical texts
-      written in a special language called ForTheL (FORmal THEory Language) or in a traditional first-order language
-    '';
-    license = lib.licenses.gpl3Plus;
-    maintainers = [ lib.maintainers.schmitthenner ];
-    homepage = "http://nevidal.org/sad.en.html";
-    platforms = lib.platforms.linux;
-    broken = true; # ghc-8.4.4 is gone from Nixpkgs
-  };
-}
diff --git a/pkgs/applications/science/logic/sad/monoid.patch b/pkgs/applications/science/logic/sad/monoid.patch
deleted file mode 100644
index da9c21bcae918..0000000000000
--- a/pkgs/applications/science/logic/sad/monoid.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/Alice/Core/Check.hs b/Alice/Core/Check.hs
-index 0700fa0388f..69815864710 100644
---- a/Alice/Core/Check.hs
-+++ b/Alice/Core/Check.hs
-@@ -18,8 +18,12 @@
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
- 
-+{-# LANGUAGE NoImplicitPrelude #-}
-+
- module Alice.Core.Check (fillDef) where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- import Data.Maybe
- 
-diff --git a/Alice/Core/Reason.hs b/Alice/Core/Reason.hs
-index c361bcf220d..4e493d8c91b 100644
---- a/Alice/Core/Reason.hs
-+++ b/Alice/Core/Reason.hs
-@@ -17,9 +17,12 @@
-  -  You should have received a copy of the GNU General Public License
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
-+{-# LANGUAGE NoImplicitPrelude #-}
- 
- module Alice.Core.Reason where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- 
- import Alice.Core.Base
-diff --git a/Alice/Core/Verify.hs b/Alice/Core/Verify.hs
-index 4f8550bdf11..0f59d135b16 100644
---- a/Alice/Core/Verify.hs
-+++ b/Alice/Core/Verify.hs
-@@ -18,8 +18,12 @@
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
- 
-+{-# LANGUAGE NoImplicitPrelude #-}
-+
- module Alice.Core.Verify (verify) where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- import Data.IORef
- import Data.Maybe
diff --git a/pkgs/applications/science/logic/sad/patch.patch b/pkgs/applications/science/logic/sad/patch.patch
deleted file mode 100644
index a5b1d61770837..0000000000000
--- a/pkgs/applications/science/logic/sad/patch.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-diff -aur serious/sad-2.3-25/Alice/Core/Base.hs sad-2.3-25/Alice/Core/Base.hs
---- serious/sad-2.3-25/Alice/Core/Base.hs	2008-03-29 18:24:12.000000000 +0000
-+++ sad-2.3-25/Alice/Core/Base.hs	2015-11-27 06:38:28.740840823 +0000
-@@ -21,6 +21,7 @@
- module Alice.Core.Base where
- 
- import Control.Monad
-+import Control.Applicative
- import Data.IORef
- import Data.List
- import Data.Time
-@@ -61,10 +62,21 @@
- type CRMC a b = IORef RState -> IO a -> (b -> IO a) -> IO a
- newtype CRM b = CRM { runCRM :: forall a . CRMC a b }
- 
-+instance Functor CRM where
-+  fmap = liftM
-+  
-+instance Applicative CRM where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad CRM where
-   return r  = CRM $ \ _ _ k -> k r
-   m >>= n   = CRM $ \ s z k -> runCRM m s z (\ r -> runCRM (n r) s z k)
- 
-+instance Alternative CRM where
-+  (<|>) = mplus
-+  empty = mzero
-+  
- instance MonadPlus CRM where
-   mzero     = CRM $ \ _ z _ -> z
-   mplus m n = CRM $ \ s z k -> runCRM m s (runCRM n s z k) k
-diff -aur serious/sad-2.3-25/Alice/Core/Thesis.hs sad-2.3-25/Alice/Core/Thesis.hs
---- serious/sad-2.3-25/Alice/Core/Thesis.hs	2008-03-05 13:10:50.000000000 +0000
-+++ sad-2.3-25/Alice/Core/Thesis.hs	2015-11-27 06:35:08.311015166 +0000
-@@ -21,6 +21,7 @@
- module Alice.Core.Thesis (thesis) where
- 
- import Control.Monad
-+import Control.Applicative
- import Data.List
- import Data.Maybe
- 
-@@ -126,11 +127,22 @@
- 
- newtype TM res = TM { runTM :: [String] -> [([String], res)] }
- 
-+instance Functor TM where
-+  fmap = liftM
-+
-+instance Applicative TM where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad TM where
-   return r  = TM $ \ s -> [(s, r)]
-   m >>= k   = TM $ \ s -> concatMap apply (runTM m s)
-     where apply (s, r) = runTM (k r) s
- 
-+instance Alternative TM where
-+  (<|>) = mplus
-+  empty = mzero
-+    
- instance MonadPlus TM where
-   mzero     = TM $ \ _ -> []
-   mplus m k = TM $ \ s -> runTM m s ++ runTM k s
-diff -aur serious/sad-2.3-25/Alice/Export/Base.hs sad-2.3-25/Alice/Export/Base.hs
---- serious/sad-2.3-25/Alice/Export/Base.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Export/Base.hs	2015-11-27 06:32:47.782738005 +0000
-@@ -39,7 +39,7 @@
- -- Database reader
- 
- readPrDB :: String -> IO [Prover]
--readPrDB file = do  inp <- catch (readFile file) $ die . ioeGetErrorString
-+readPrDB file = do  inp <- catchIOError (readFile file) $ die . ioeGetErrorString
- 
-                     let dws = dropWhile isSpace
-                         cln = reverse . dws . reverse . dws
-diff -aur serious/sad-2.3-25/Alice/Export/Prover.hs sad-2.3-25/Alice/Export/Prover.hs
---- serious/sad-2.3-25/Alice/Export/Prover.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Export/Prover.hs	2015-11-27 06:36:47.632919161 +0000
-@@ -60,7 +60,7 @@
-       when (askIB IBPdmp False ins) $ putStrLn tsk
- 
-       seq (length tsk) $ return $
--        do  (wh,rh,eh,ph) <- catch run
-+        do  (wh,rh,eh,ph) <- catchIOError run
-                 $ \ e -> die $ "run error: " ++ ioeGetErrorString e
- 
-             hPutStrLn wh tsk ; hClose wh
-diff -aur serious/sad-2.3-25/Alice/ForTheL/Base.hs sad-2.3-25/Alice/ForTheL/Base.hs
---- serious/sad-2.3-25/Alice/ForTheL/Base.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/ForTheL/Base.hs	2015-11-27 06:31:51.921230428 +0000
-@@ -226,7 +226,7 @@
- varlist = do  vs <- chainEx (char ',') var
-               nodups vs ; return vs
- 
--nodups vs = unless (null $ dups vs) $
-+nodups vs = unless ((null :: [a] -> Bool) $ dups vs) $
-               fail $ "duplicate names: " ++ show vs
- 
- hidden  = askPS psOffs >>= \ n -> return ('h':show n)
-diff -aur serious/sad-2.3-25/Alice/Import/Reader.hs sad-2.3-25/Alice/Import/Reader.hs
---- serious/sad-2.3-25/Alice/Import/Reader.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Import/Reader.hs	2015-11-27 06:36:41.818866167 +0000
-@@ -24,7 +24,7 @@
- import Control.Monad
- import System.IO
- import System.IO.Error
--import System.Exit
-+import System.Exit hiding (die)
- 
- import Alice.Data.Text
- import Alice.Data.Instr
-@@ -44,7 +44,7 @@
- readInit ""   = return []
- 
- readInit file =
--  do  input <- catch (readFile file) $ die file . ioeGetErrorString
-+  do  input <- catchIOError (readFile file) $ die file . ioeGetErrorString
-       let tkn = tokenize input ; ips = initPS ()
-           inp = ips { psRest = tkn, psFile = file, psLang = "Init" }
-       liftM fst $ fireLPM instf inp
-@@ -74,7 +74,7 @@
- reader lb fs (ps:ss) [TI (InStr ISfile file)] =
-   do  let gfl = if null file  then hGetContents stdin
-                               else readFile file
--      input <- catch gfl $ die file . ioeGetErrorString
-+      input <- catchIOError gfl $ die file . ioeGetErrorString
-       let tkn = tokenize input
-           ips = initPS $ (psProp ps) { tvr_expr = [] }
-           sps = ips { psRest = tkn, psFile = file, psOffs = psOffs ps }
-diff -aur serious/sad-2.3-25/Alice/Parser/Base.hs sad-2.3-25/Alice/Parser/Base.hs
---- serious/sad-2.3-25/Alice/Parser/Base.hs	2008-03-09 09:36:40.000000000 +0000
-+++ sad-2.3-25/Alice/Parser/Base.hs	2015-11-27 06:14:28.616734527 +0000
-@@ -20,6 +20,7 @@
- 
- module Alice.Parser.Base where
- 
-+import Control.Applicative
- import Control.Monad
- import Data.List
- 
-@@ -45,11 +46,22 @@
- type CPMC a b c = (c -> CPMS a b) -> (String -> CPMS a b) -> CPMS a b
- newtype CPM a c = CPM { runCPM :: forall b . CPMC a b c }
- 
-+instance Functor (CPM a) where
-+  fmap = liftM
-+
-+instance Applicative (CPM a) where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad (CPM a) where
-   return r  = CPM $ \ k _ -> k r
-   m >>= n   = CPM $ \ k l -> runCPM m (\ b -> runCPM (n b) k l) l
-   fail e    = CPM $ \ _ l -> l e
- 
-+instance Alternative (CPM a) where
-+    (<|>) = mplus
-+    empty = mzero
-+  
- instance MonadPlus (CPM a) where
-   mzero     = CPM $ \ _ _ _ z -> z
-   mplus m n = CPM $ \ k l s -> runCPM m k l s . runCPM n k l s
-diff -aur serious/sad-2.3-25/init.opt sad-2.3-25/init.opt
---- serious/sad-2.3-25/init.opt	2007-10-11 15:25:45.000000000 +0000
-+++ sad-2.3-25/init.opt	2015-11-27 07:23:41.372816854 +0000
-@@ -1,6 +1,6 @@
- # Alice init options
--[library examples]
--[provers provers/provers.dat]
-+[library @out@/examples]
-+[provers @out@/provers/provers.dat]
- [prover spass]
- [timelimit 3]
- [depthlimit 7]
-diff -aur serious/sad-2.3-25/provers/provers.dat sad-2.3-25/provers/provers.dat
---- serious/sad-2.3-25/provers/provers.dat	2008-08-26 21:20:25.000000000 +0000
-+++ sad-2.3-25/provers/provers.dat	2015-11-27 07:24:18.878169702 +0000
-@@ -3,7 +3,7 @@
- Pmoses
- LMoses
- Fmoses
--Cprovers/moses
-+C@out@/provers/moses
- Yproved in
- Nfound unprovable in
- Utimeout in
-@@ -12,7 +12,7 @@
- Pspass
- LSPASS
- Fdfg
--Cprovers/SPASS -CNFOptSkolem=0 -PProblem=0 -PGiven=0 -Stdin -TimeLimit=%d
-+C@spass@/bin/SPASS -CNFOptSkolem=0 -PProblem=0 -PGiven=0 -Stdin -TimeLimit=%d
- YSPASS beiseite: Proof found.
- NSPASS beiseite: Completion found.
- USPASS beiseite: Ran out of time.
diff --git a/pkgs/applications/science/logic/tlaplus/default.nix b/pkgs/applications/science/logic/tlaplus/default.nix
index 4572a06d63378..abbcd417693e4 100644
--- a/pkgs/applications/science/logic/tlaplus/default.nix
+++ b/pkgs/applications/science/logic/tlaplus/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tlaplus";
-  version = "1.7.2";
+  version = "1.7.3";
 
   src = fetchurl {
     url = "https://github.com/tlaplus/tlaplus/releases/download/v${version}/tla2tools.jar";
-    sha256 = "sha256-+hhUPkTtWXSoW9LGDA3BZiCuEXaA6o5pPSaRmZ7ZCyI=";
+    sha256 = "sha256-5P8V6oH05voSXAgwBDclSxdxdMalrfaNpElkar4IUZ0=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index f810a5a56739a..e2842d9d15a4f 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -92,8 +92,8 @@ in
     sha256 = "sha256-ItmtZHDhCeLAVtN7K80dqyAh20o7TM4xk2sTb9QgHvk=";
   };
   z3_4_8 = common {
-    version = "4.8.15";
-    sha256 = "0xkwqz0y5d1lfb6kfqy8wn8n2dqalzf4c8ghmjsajc1bpdl70yc5";
+    version = "4.8.17";
+    sha256 = "sha256-BSwjgOU9EgCcm18Zx0P9mnoPc9ZeYsJwEu0ffnACa+8=";
   };
   z3_4_8_5 = common {
     tag = "Z3";
diff --git a/pkgs/applications/science/machine-learning/streamlit/default.nix b/pkgs/applications/science/machine-learning/streamlit/default.nix
index ad22d57882ed6..3db5356b49643 100755
--- a/pkgs/applications/science/machine-learning/streamlit/default.nix
+++ b/pkgs/applications/science/machine-learning/streamlit/default.nix
@@ -26,12 +26,12 @@
 
 buildPythonApplication rec {
   pname = "streamlit";
-  version = "1.18.1";
+  version = "1.21.0";
   format = "wheel"; # source currently requires pipenv
 
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-lO2QfM/G+4M55f8JCZBwk10SkMp4gXb68KncHm90k7g=";
+    hash = "sha256-BYYlmJUqkSbhZlLKpbyI7u6nsnc68lLi2szxyEzqrvQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/science/math/form/default.nix b/pkgs/applications/science/math/form/default.nix
index 73fe0cfb5dc36..c56ee432bdae0 100644
--- a/pkgs/applications/science/math/form/default.nix
+++ b/pkgs/applications/science/math/form/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchurl, gmp, zlib }:
 
 stdenv.mkDerivation {
-  version = "4.3.0";
+  version = "4.3.1";
   pname = "form";
 
   # This tarball is released by author, it is not downloaded from tag, so can't use fetchFromGitHub
   src = fetchurl {
-    url = "https://github.com/vermaseren/form/releases/download/v4.3.0/form-4.3.0.tar.gz";
-    sha256 = "sha256-sjTg0JX3PssJBM3DsNjYMjqfp/RncKUvsiJnxiSq+/Y=";
+    url = "https://github.com/vermaseren/form/releases/download/v4.3.1/form-4.3.1.tar.gz";
+    sha256 = "sha256-8fUS3DT+m71rGfLf7wX8uZEt+0PINop1t5bsRy7ou84=";
   };
 
   buildInputs = [ gmp zlib ];
diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix
index ec3bb4c795b32..b4e8c6fb23db0 100644
--- a/pkgs/applications/science/math/glsurf/default.nix
+++ b/pkgs/applications/science/math/glsurf/default.nix
@@ -67,5 +67,6 @@ stdenv.mkDerivation rec {
     homepage = "https://raffalli.eu/~christophe/glsurf/";
     description = "A program to draw implicit surfaces and curves";
     license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix
index 1acc6a287ca50..0878070136943 100644
--- a/pkgs/applications/science/math/jags/default.nix
+++ b/pkgs/applications/science/math/jags/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "JAGS";
-  version = "4.3.1";
+  version = "4.3.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/mcmc-jags/JAGS-${version}.tar.gz";
-    sha256 = "sha256-+SWDVbXp6xO9M8X6cg8MvrrOp9CkpCtxsPsUUB7hQik=";
+    sha256 = "sha256-hx9VavQDp8LOag8C8Vz4WlcnY+CT0mZY66xVxKtHL8g=";
   };
 
   nativeBuildInputs = [ gfortran ];
diff --git a/pkgs/applications/science/math/nasc/default.nix b/pkgs/applications/science/math/nasc/default.nix
index f420c940f35c6..d25f0ad344966 100644
--- a/pkgs/applications/science/math/nasc/default.nix
+++ b/pkgs/applications/science/math/nasc/default.nix
@@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
     substituteInPlace subprojects/libqalculate/libqalculate/Calculator-plot.cc \
       --replace 'commandline = "gnuplot"' 'commandline = "${gnuplot}/bin/gnuplot"' \
       --replace '"gnuplot - ' '"${gnuplot}/bin/gnuplot - '
+    substituteInPlace subprojects/libqalculate/libqalculate/meson.build \
+      --replace "link_with: 'libqalculate_lib_static'" "link_with: libqalculate_lib_static"
   '';
 
   passthru = {
@@ -80,6 +82,5 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.gpl3Plus;
     mainProgram = "com.github.parnold_x.nasc";
-    broken = true; # at 2022-09-23
   };
 }
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index 0c82e7ebf376b..573b42c39f622 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-gtk";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "sha256-RdvoBs/QeBR032nMh79TLMGU6U7dsY6Ep+QKq4IKRTk=";
+    sha256 = "sha256-eBclDq9Uiu5rA74tlBkOiP3fRwAZn84F3LPA2cKkuw8=";
   };
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/applications/science/math/qalculate-qt/default.nix b/pkgs/applications/science/math/qalculate-qt/default.nix
index 67c7f6fb4a61e..21ab877b7a0ce 100644
--- a/pkgs/applications/science/math/qalculate-qt/default.nix
+++ b/pkgs/applications/science/math/qalculate-qt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-qt";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-qt";
     rev = "v${version}";
-    hash = "sha256-/TDzjlB8rW/TorndcLbxY9pc3q7vY3M6eLxBRfnBs9Y=";
+    hash = "sha256-9DT1U0iKj5C/Tc9MggEr/RwHhVr4GSOJQVhTiLFk9NY=";
   };
 
   nativeBuildInputs = [ qmake intltool pkg-config wrapQtAppsHook ];
diff --git a/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch b/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch
deleted file mode 100644
index b0f3634340f53..0000000000000
--- a/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/sage/interacts/library.py b/src/sage/interacts/library.py
-index 06d680109a..139b00bfd1 100644
---- a/src/sage/interacts/library.py
-+++ b/src/sage/interacts/library.py
-@@ -1434,6 +1434,8 @@ def riemann_sum(
-     creates the mathlet::
- 
-         sage: interacts.calculus.riemann_sum()
-+        ...
-+        DeprecationWarning: on_submit is deprecated. Instead, set the .continuous_update attribute to False and observe the value changing with: mywidget.observe(callback, 'value').
-         Manual interactive function <function riemann_sum at ...> with 9 widgets
-           title: HTMLText(value='<h2>Riemann integral with random sampling</h2>')
-           f: EvalText(value='x^2+1', description='$f(x)=$', layout=Layout(max_width='41em'))
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 8913d636fae98..f2e02685416cd 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -141,12 +141,23 @@ stdenv.mkDerivation rec {
       sha256 = "sha256-YdPnMsjXBm9ZRm6a8hH8rSynkrABjLoIzqwp3F/rKAw=";
     })
 
+    # https://github.com/sagemath/sage/pull/35336, merged in 10.0.beta8
+    (fetchpatch {
+      name = "ipywidgets-8.0.5-upgrade.patch";
+      url = "https://github.com/sagemath/sage/commit/7ab3e3aa81d47a35d09161b965bba8ab16fd5c9e.diff";
+      sha256 = "sha256-WjdsPTui6uv92RerlV0mqltmLaxADvz+3aqSvxBFmfU=";
+    })
+
+    # https://github.com/sagemath/sage/pull/35499
+    (fetchpatch {
+      name = "ipywidgets-8.0.5-upgrade-part-deux.patch";
+      url = "https://github.com/sagemath/sage/pull/35499.diff";
+      sha256 = "sha256-uNCjLs9qrARTQNsq1+kTdvuV2A1M4xx5b1gWh5c55X0=";
+    })
+
     # rebased from https://github.com/sagemath/sage/pull/34994, merged in sage 10.0.beta2
     ./patches/numpy-1.24-upgrade.patch
 
-    # temporarily paper over https://github.com/jupyter-widgets/ipywidgets/issues/3669
-    ./patches/ipywidgets-on_submit-deprecationwarning.patch
-
     # Sage uses mixed integer programs (MIPs) to find edge disjoint
     # spanning trees. For some reason, aarch64 glpk takes much longer
     # than x86_64 glpk to solve such MIPs. Since the MIP formulation
diff --git a/pkgs/applications/science/misc/foldingathome/client.nix b/pkgs/applications/science/misc/foldingathome/client.nix
index 47a86fa2aeaf1..c927df9a54916 100644
--- a/pkgs/applications/science/misc/foldingathome/client.nix
+++ b/pkgs/applications/science/misc/foldingathome/client.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , autoPatchelfHook
-, buildFHSUserEnv
+, buildFHSEnv
 , dpkg
 , fetchurl
 , gcc-unwrapped
@@ -35,7 +35,7 @@ let
     installPhase = "cp -ar usr $out";
   };
 in
-buildFHSUserEnv {
+buildFHSEnv {
   name = fahclient.name;
 
   targetPkgs = pkgs': [
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index 037b8dfa09c75..2ebfd4a1a87a7 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -191,7 +191,7 @@ stdenv.mkDerivation rec {
     "-Dpythia6=OFF"
     "-Dpythia8=OFF"
     "-Drfio=OFF"
-    "-Droot7=OFF"
+    "-Droot7=ON"
     "-Dsqlite=OFF"
     "-Dssl=ON"
     "-Dtmva=ON"
diff --git a/pkgs/applications/science/misc/sasview/default.nix b/pkgs/applications/science/misc/sasview/default.nix
index ca94be96d64e3..ddc0cdfa4e5b8 100644
--- a/pkgs/applications/science/misc/sasview/default.nix
+++ b/pkgs/applications/science/misc/sasview/default.nix
@@ -25,6 +25,12 @@ python3.pkgs.buildPythonApplication rec {
     })
   ];
 
+  # AttributeError: module 'numpy' has no attribute 'float'.
+  postPatch = ''
+    substituteInPlace src/sas/sascalc/pr/p_invertor.py \
+      --replace "dtype=np.float)" "dtype=float)"
+  '';
+
   nativeBuildInputs = [
     python3.pkgs.pyqt5
     wrapQtAppsHook
diff --git a/pkgs/applications/terminal-emulators/havoc/default.nix b/pkgs/applications/terminal-emulators/havoc/default.nix
index 304bab6499bf9..80ede664b5b1f 100644
--- a/pkgs/applications/terminal-emulators/havoc/default.nix
+++ b/pkgs/applications/terminal-emulators/havoc/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "havoc";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "ii8";
     repo = pname;
     rev = version;
-    hash = "sha256-zNKDQqkDeNj5fB5EdMVfAs2H4uBgLh6Fp3uSjiJ1VhQ=";
+    hash = "sha256-jvGm2gFdMS61otETF7gOEpYn6IuLfqI95IpEVfIv+C4=";
   };
 
   nativeBuildInputs = [
@@ -42,7 +42,8 @@ stdenv.mkDerivation rec {
     description = "A minimal terminal emulator for Wayland";
     license = with licenses; [ mit publicDomain ];
     platforms = with platforms; unix;
-    broken = stdenv.isDarwin; # no wayland support
     maintainers = with maintainers; [ AndersonTorres ];
+    # fatal error: 'sys/epoll.h' file not found
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/terminal-emulators/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix
index 07980f8375aa9..e693e51c9360a 100644
--- a/pkgs/applications/terminal-emulators/kitty/default.nix
+++ b/pkgs/applications/terminal-emulators/kitty/default.nix
@@ -23,21 +23,22 @@
 , nixosTests
 , go
 , buildGoModule
+, nix-update-script
 }:
 
 with python3Packages;
 buildPythonApplication rec {
   pname = "kitty";
-  version = "0.27.1";
+  version = "0.28.1";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "refs/tags/v${version}";
-    hash = "sha256-/K/5T15kULTQP1FCLnyrKfhlQjIStayutaxLjmHjHes=";
+    hash = "sha256-pAo+bT10rdQOf9j3imKWCCMFGm8KntUeTQUrEE1wYZc=";
   };
-  vendorHash = "sha256-JLPPNOsoq+ErLhELsX3z3YehYfgp7OGXEXlP3IVcM5k=";
+  vendorHash = "sha256-vq19exqsEtXhN20mgC5GCpYGm8s9AC6nlfCfG1lUiI8=";
 
   buildInputs = [
     harfbuzz
@@ -99,16 +100,16 @@ buildPythonApplication rec {
   CGO_ENABLED = 0;
   GOFLAGS = "-trimpath";
 
-  configurePhase = let
-    goModules = (buildGoModule {
-      pname = "kitty-go-modules";
-      inherit src vendorHash version;
-    }).go-modules;
-  in ''
+  go-modules = (buildGoModule {
+    pname = "kitty-go-modules";
+    inherit src vendorHash version;
+  }).go-modules;
+
+  configurePhase = ''
     export GOCACHE=$TMPDIR/go-cache
     export GOPATH="$TMPDIR/go"
     export GOPROXY=off
-    cp -r --reflink=auto ${goModules} vendor
+    cp -r --reflink=auto ${go-modules} vendor
   '';
 
   buildPhase = let
@@ -161,6 +162,8 @@ buildPythonApplication rec {
       --replace test_ssh_connection_data dont_test_ssh_connection_data
     substituteInPlace kitty_tests/fonts.py \
       --replace 'class Rendering(BaseTest)' 'class Rendering'
+    # theme collection test starts an http server
+    rm tools/themes/collection_test.go
   '';
 
   checkPhase = ''
@@ -216,19 +219,10 @@ buildPythonApplication rec {
     runHook postInstall
   '';
 
-  # Patch shebangs that Nix can't automatically patch
-  preFixup =
-    let
-      pathComponent = if stdenv.isDarwin then "Applications/kitty.app/Contents/Resources" else "lib";
-    in
-    ''
-      substituteInPlace $out/${pathComponent}/kitty/shell-integration/ssh/askpass.py \
-        --replace '/usr/bin/env -S ' $out/bin/
-      substituteInPlace $shell_integration/ssh/askpass.py \
-        --replace '/usr/bin/env -S ' $out/bin/
-    '';
-
-  passthru.tests.test = nixosTests.terminal-emulators.kitty;
+  passthru = {
+    updateScript = nix-update-script {};
+    tests.test = nixosTests.terminal-emulators.kitty;
+  };
 
   meta = with lib; {
     homepage = "https://github.com/kovidgoyal/kitty";
diff --git a/pkgs/applications/terminal-emulators/mlterm/default.nix b/pkgs/applications/terminal-emulators/mlterm/default.nix
index cc26d4eea295d..217c6552efdd6 100644
--- a/pkgs/applications/terminal-emulators/mlterm/default.nix
+++ b/pkgs/applications/terminal-emulators/mlterm/default.nix
@@ -1,14 +1,98 @@
-{ stdenv, lib, fetchFromGitHub, pkg-config, autoconf, makeDesktopItem, nixosTests
-, libX11, gdk-pixbuf, cairo, libXft, gtk3, vte
-, harfbuzz #substituting glyphs with opentype fonts
-, fribidi, m17n_lib #bidi and encoding
+{ stdenv
+, lib
+, fetchFromGitHub
+, pkg-config
+, autoconf
+, makeDesktopItem
+, nixosTests
+, vte
+, harfbuzz # can be replaced with libotf
+, fribidi
+, m17n_lib
 , libssh2 #build-in ssh
-, fcitx5, fcitx5-gtk, ibus, uim #IME
+, fcitx5
+, fcitx5-gtk
+, ibus
+, uim #IME
 , wrapGAppsHook #color picker in mlconfig
-, Cocoa #Darwin
+, gdk-pixbuf
+, gtk3
+, gtk ? gtk3
+# List of gui libraries to use. According to `./configure --help` ran on
+# release 3.9.3, options are: (xlib|win32|fb|quartz|console|wayland|sdl2|beos)
+, enableGuis ? {
+  xlib = enableX11;
+  fb = stdenv.isLinux;
+  quartz = stdenv.isDarwin;
+  wayland = stdenv.isLinux;
+  sdl2 = true;
+}
+, libxkbcommon
+, wayland # for the "wayland" --with-gui option
+, SDL2 # for the "sdl" --with-gui option
+# List of typing engines, the default list enables compiling all of the
+# available ones, as recorded on release 3.9.3
+, enableTypeEngines ? {
+  xcore = false; # Considered legacy
+  xft = enableX11;
+  cairo = true;
+}
+, libX11
+, libXft
+, cairo
+# List of external tools to create, this default list includes all default
+# tools, as recorded on release 3.9.3.
+, enableTools ? {
+  mlclient = true;
+  mlconfig = true;
+  mlcc = true;
+  mlterm-menu = true;
+  # Note that according to upstream's ./configure script, to disable
+  # mlimgloader you have to disable _all_ tools. See:
+  # https://github.com/arakiken/mlterm/issues/69
+  mlimgloader = true;
+  registobmp = true;
+  mlfc = true;
+}
+# Whether to enable the X window system
+, enableX11 ? stdenv.isLinux
+# Most of the input methods and other build features are enabled by default,
+# the following attribute set can be used to disable some of them. It's parsed
+# when we set `configureFlags`. If you find other configure Flags that require
+# dependencies, it'd be nice to make that contribution here.
+, enableFeatures ? {
+  uim = !stdenv.isDarwin;
+  ibus = !stdenv.isDarwin;
+  fcitx = !stdenv.isDarwin;
+  m17n = !stdenv.isDarwin;
+  ssh2 = true;
+  bidi = true;
+  # Open Type layout support, (substituting glyphs with opentype fonts)
+  otl = true;
+}
+# Configure the Exec directive in the generated .desktop file
+, desktopBinary ? (
+  if enableGuis.xlib then
+    "mlterm"
+  else if enableGuis.wayland then
+    "mlterm-wl"
+  else if enableGuis.sdl2 then
+    "mlterm-sdl2"
+  else
+    throw "mlterm: couldn't figure out what desktopBinary to use."
+  )
 }:
 
-stdenv.mkDerivation rec {
+let
+  # Returns a --with-feature=<comma separated string list of all `true`
+  # attributes>, or `--without-feature` if all attributes are false or don't
+  # exist. Used later in configureFlags
+  withFeaturesList = featureName: attrset: let
+    commaSepList = lib.concatStringsSep "," (builtins.attrNames (lib.filterAttrs (n: v: v) attrset));
+  in
+    lib.withFeatureAs (commaSepList != "") featureName commaSepList
+  ;
+in stdenv.mkDerivation rec {
   pname = "mlterm";
   version = "3.9.3";
 
@@ -19,25 +103,41 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-gfs5cdwUUwSBWwJJSaxrQGWJvLkI27RMlk5QvDALEDg=";
   };
 
-  nativeBuildInputs = [ pkg-config autoconf wrapGAppsHook ];
+  nativeBuildInputs = [
+    pkg-config
+    autoconf
+  ] ++ lib.optionals enableTools.mlconfig [
+    wrapGAppsHook
+  ];
   buildInputs = [
+    gtk
+    vte
+    gdk-pixbuf
+  ] ++ lib.optionals enableTypeEngines.xcore [
     libX11
-    gdk-pixbuf.dev
-    cairo
+  ] ++ lib.optionals enableTypeEngines.xft [
     libXft
-    gtk3
+  ] ++ lib.optionals enableTypeEngines.cairo [
+    cairo
+  ] ++ lib.optionals enableGuis.wayland [
+    libxkbcommon
+    wayland
+  ] ++ lib.optionals enableGuis.sdl2 [
+    SDL2
+  ] ++ lib.optionals enableFeatures.otl [
     harfbuzz
+  ] ++ lib.optionals enableFeatures.bidi [
     fribidi
-    vte
-
+  ] ++ lib.optionals enableFeatures.ssh2 [
     libssh2
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    # Not supported on Darwin
+  ] ++ lib.optionals enableFeatures.m17n [
     m17n_lib
-
+  ] ++ lib.optionals enableFeatures.fcitx [
     fcitx5
     fcitx5-gtk
+  ] ++ lib.optionals enableFeatures.ibus [
     ibus
+  ] ++ lib.optionals enableFeatures.uim [
     uim
   ];
 
@@ -62,20 +162,13 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [
-    "--with-imagelib=gdk-pixbuf" #or mlimgloader depending on your bugs of choice
-    "--with-type-engines=cairo,xft,xcore"
-    "--with-gtk=3.0"
-    "--enable-ind" #indic scripts
-    "--enable-fribidi" #bidi scripts
-    "--with-tools=mlclient,mlconfig,mlcc,mlterm-menu,mlimgloader,registobmp,mlfc"
-    #mlterm-menu and mlconfig depend on enabling gnome.at-spi2-core
-    #and configuring ~/.mlterm/key correctly.
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "--with-x=yes"
-    "--with-gui=xlib,fb"
-    "--enable-m17nlib" #character encodings
-  ] ++ lib.optionals stdenv.isDarwin [
-    "--with-gui=quartz"
+    (withFeaturesList "type-engines" enableTypeEngines)
+    (withFeaturesList "tools" enableTools)
+    (withFeaturesList "gui" enableGuis)
+    (lib.withFeature enableX11 "x")
+  ] ++ lib.optionals (gtk != null) [
+    "--with-gtk=${lib.versions.major gtk.version}.0"
+  ] ++ (lib.mapAttrsToList (n: v: lib.enableFeature v n) enableFeatures) ++ [
   ];
 
   enableParallelBuilding = true;
@@ -92,23 +185,32 @@ stdenv.mkDerivation rec {
 
   desktopItem = makeDesktopItem {
     name = "mlterm";
-    exec = "mlterm %U";
+    exec = "${desktopBinary} %U";
     icon = "mlterm";
     type = "Application";
-    comment = "Terminal emulator";
+    comment = "Multi Lingual TERMinal emulator";
     desktopName = "mlterm";
     genericName = "Terminal emulator";
-    categories = [ "Application" "System" "TerminalEmulator" ];
+    categories = [ "System" "TerminalEmulator" ];
     startupNotify = false;
   };
 
-  passthru.tests.test = nixosTests.terminal-emulators.mlterm;
+  passthru = {
+    tests.test = nixosTests.terminal-emulators.mlterm;
+    inherit
+      enableTypeEngines
+      enableTools
+      enableGuis
+      enableFeatures
+    ;
+  };
 
   meta = with lib; {
     description = "Multi Lingual TERMinal emulator";
     homepage = "https://mlterm.sourceforge.net/";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ramkromberg atemu ];
+    maintainers = with maintainers; [ ramkromberg atemu doronbehar ];
     platforms = platforms.all;
+    mainProgram = desktopBinary;
   };
 }
diff --git a/pkgs/applications/terminal-emulators/wezterm/Cargo.lock b/pkgs/applications/terminal-emulators/wezterm/Cargo.lock
index eeec1102af357..e612a1aff511e 100644
--- a/pkgs/applications/terminal-emulators/wezterm/Cargo.lock
+++ b/pkgs/applications/terminal-emulators/wezterm/Cargo.lock
@@ -65,12 +65,52 @@ dependencies = [
 ]
 
 [[package]]
+name = "anes"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
+
+[[package]]
+name = "anstream"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-wincon",
+ "concolor-override",
+ "concolor-query",
+ "is-terminal",
+ "utf8parse",
+]
+
+[[package]]
 name = "anstyle"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2"
 
 [[package]]
+name = "anstyle-parse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa"
+dependencies = [
+ "anstyle",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "anyhow"
 version = "1.0.70"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -173,7 +213,7 @@ dependencies = [
  "log",
  "parking",
  "polling",
- "rustix 0.37.3",
+ "rustix 0.37.6",
  "slab",
  "socket2 0.4.9",
  "waker-fn",
@@ -214,7 +254,7 @@ dependencies = [
  "event-listener",
  "futures-lite",
  "libc",
- "signal-hook 0.3.15",
+ "signal-hook",
  "windows-sys 0.42.0",
 ]
 
@@ -226,7 +266,7 @@ checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -243,7 +283,7 @@ checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -365,19 +405,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
-name = "block"
-version = "0.1.6"
+name = "bitflags"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+checksum = "487f1e0fcbe47deb8b0574e646def1c903389d95241dd1bbcc6ce4a715dfc0c1"
+dependencies = [
+ "serde",
+]
 
 [[package]]
-name = "block-buffer"
-version = "0.9.0"
+name = "block"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
-dependencies = [
- "generic-array",
-]
+checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
 name = "block-buffer"
@@ -457,7 +497,7 @@ checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -532,73 +572,127 @@ dependencies = [
 ]
 
 [[package]]
+name = "ciborium"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b0c137568cc60b904a7724001b35ce2630fd00d5d84805fbb608ab89509d788f"
+dependencies = [
+ "ciborium-io",
+ "ciborium-ll",
+ "serde",
+]
+
+[[package]]
+name = "ciborium-io"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "346de753af073cc87b52b2083a506b38ac176a44cfb05497b622e27be899b369"
+
+[[package]]
+name = "ciborium-ll"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "213030a2b5a4e0c0892b6652260cf6ccac84827b83a85a534e178e3906c4cf1b"
+dependencies = [
+ "ciborium-io",
+ "half 1.8.2",
+]
+
+[[package]]
 name = "clap"
 version = "2.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "textwrap 0.11.0",
  "unicode-width",
 ]
 
 [[package]]
 name = "clap"
-version = "4.1.13"
+version = "3.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c911b090850d79fc64fe9ea01e28e465f65e821e08813ced95bced72f7a8a9b"
+checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
+ "clap_lex 0.2.4",
+ "indexmap",
+ "textwrap 0.16.0",
+]
+
+[[package]]
+name = "clap"
+version = "4.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3"
+dependencies = [
+ "clap_builder",
  "clap_derive",
- "clap_lex",
- "is-terminal",
  "once_cell",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "bitflags 1.3.2",
+ "clap_lex 0.4.1",
  "strsim",
- "termcolor",
  "terminal_size",
 ]
 
 [[package]]
 name = "clap_complete"
-version = "4.1.5"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37686beaba5ac9f3ab01ee3172f792fc6ffdd685bfb9e63cfef02c0571a4e8e1"
+checksum = "01c22dcfb410883764b29953103d9ef7bb8fe21b3fa1158bc99986c2067294bd"
 dependencies = [
- "clap 4.1.13",
+ "clap 4.2.1",
 ]
 
 [[package]]
 name = "clap_complete_fig"
-version = "4.1.2"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2171bc6242ad7a1801422bff039574449b5bd832b715222e500714ce10f91a54"
+checksum = "f3af28956330989baa428ed4d3471b853715d445c62de21b67292e22cf8a41fa"
 dependencies = [
- "clap 4.1.13",
+ "clap 4.2.1",
  "clap_complete",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.1.12"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a932373bab67b984c790ddf2c9ca295d8e3af3b7ef92de5a5bacdccdee4b09b"
+checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4"
 dependencies = [
  "heck",
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.3.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "033f6b7a4acb1f358c742aaca805c939ee73b4c6209ae4318ec7aca81c42e646"
+checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
 dependencies = [
  "os_str_bytes",
 ]
 
 [[package]]
+name = "clap_lex"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1"
+
+[[package]]
 name = "clipboard-win"
 version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -624,7 +718,7 @@ version = "0.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0c49e86fc36d5704151f5996b7b3795385f50ce09e3be0f47a0cfde869681cf8"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "core-foundation 0.7.0",
  "core-graphics 0.19.2",
@@ -719,6 +813,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bf43edc576402991846b093a7ca18a3477e0ef9c588cde84964b5d3e43016642"
 
 [[package]]
+name = "concolor-override"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f"
+
+[[package]]
+name = "concolor-query"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf"
+dependencies = [
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "concurrent-queue"
 version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -732,7 +841,7 @@ name = "config"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "bitflags",
+ "bitflags 1.3.2",
  "colorgrad",
  "dirs-next",
  "enum-display-derive",
@@ -744,6 +853,7 @@ dependencies = [
  "log",
  "luahelper",
  "mlua",
+ "nix 0.26.2",
  "notify",
  "ordered-float",
  "portable-pty",
@@ -758,6 +868,7 @@ dependencies = [
  "wezterm-config-derive",
  "wezterm-dynamic",
  "wezterm-input-types",
+ "wezterm-ssh",
  "wezterm-term",
  "winapi",
 ]
@@ -778,7 +889,7 @@ version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
 dependencies = [
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys 0.8.4",
  "libc",
 ]
 
@@ -790,9 +901,9 @@ checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
 
 [[package]]
 name = "core-graphics"
@@ -800,7 +911,7 @@ version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.7.0",
  "foreign-types",
  "libc",
@@ -812,7 +923,7 @@ version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.9.3",
  "core-graphics-types",
  "foreign-types",
@@ -825,7 +936,7 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.9.3",
  "foreign-types",
  "libc",
@@ -870,7 +981,7 @@ dependencies = [
  "atty",
  "cast",
  "clap 2.34.0",
- "criterion-plot",
+ "criterion-plot 0.4.5",
  "csv",
  "itertools",
  "lazy_static",
@@ -888,6 +999,32 @@ dependencies = [
 ]
 
 [[package]]
+name = "criterion"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7c76e09c1aae2bc52b3d2f29e13c6572553b30c4aa1b8a49fd70de6412654cb"
+dependencies = [
+ "anes",
+ "atty",
+ "cast",
+ "ciborium",
+ "clap 3.2.23",
+ "criterion-plot 0.5.0",
+ "itertools",
+ "lazy_static",
+ "num-traits",
+ "oorandom",
+ "plotters",
+ "rayon",
+ "regex",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "tinytemplate",
+ "walkdir",
+]
+
+[[package]]
 name = "criterion-plot"
 version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -898,6 +1035,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "criterion-plot"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
+dependencies = [
+ "cast",
+ "itertools",
+]
+
+[[package]]
 name = "crossbeam"
 version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -987,7 +1134,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf"
 dependencies = [
  "lab",
- "phf 0.11.1",
+ "phf",
 ]
 
 [[package]]
@@ -1013,9 +1160,9 @@ dependencies = [
 
 [[package]]
 name = "cxx"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9c00419335c41018365ddf7e4d5f1c12ee3659ddcf3e01974650ba1de73d038"
+checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
 dependencies = [
  "cc",
  "cxxbridge-flags",
@@ -1025,9 +1172,9 @@ dependencies = [
 
 [[package]]
 name = "cxx-build"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb8307ad413a98fff033c8545ecf133e3257747b3bae935e7602aab8aa92d4ca"
+checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
 dependencies = [
  "cc",
  "codespan-reporting",
@@ -1035,24 +1182,24 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edc52e2eb08915cb12596d29d55f0b5384f00d697a646dbd269b6ecb0fbd9d31"
+checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "631569015d0d8d54e6c241733f944042623ab6df7bc3be7466874b05fcdb1c5f"
+checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -1061,7 +1208,7 @@ version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libloading 0.7.4",
  "winapi",
 ]
@@ -1167,20 +1314,11 @@ checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
 
 [[package]]
 name = "digest"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "digest"
 version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
 dependencies = [
- "block-buffer 0.10.4",
+ "block-buffer",
  "crypto-common",
 ]
 
@@ -1285,7 +1423,7 @@ version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "44fe60b864b6544ad211d4053ced474a9b9d2c8d66b77f01d6c6bcfed10c6bf0"
 dependencies = [
- "phf 0.11.1",
+ "phf",
 ]
 
 [[package]]
@@ -1310,9 +1448,9 @@ dependencies = [
 
 [[package]]
 name = "enumflags2"
-version = "0.7.5"
+version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb"
+checksum = "0044ebdf7fbb2a772e0c0233a9d3173c5cd8af8ae7078d4c5188af44ffffaa4b"
 dependencies = [
  "enumflags2_derive",
  "serde",
@@ -1320,13 +1458,13 @@ dependencies = [
 
 [[package]]
 name = "enumflags2_derive"
-version = "0.7.4"
+version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae"
+checksum = "9d2c772ccdbdfd1967b4f5d79d17c98ebf92009fdcc838db7aa434462f600c26"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -1407,9 +1545,9 @@ dependencies = [
 
 [[package]]
 name = "euclid"
-version = "0.22.8"
+version = "0.22.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff8b5875b64eb55f4b554f9d0e6413da078d96374974d8bb3bed5f02d55451ce"
+checksum = "87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787"
 dependencies = [
  "num-traits",
 ]
@@ -1449,6 +1587,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
 
 [[package]]
+name = "fancy-regex"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2"
+dependencies = [
+ "bit-set",
+ "regex",
+]
+
+[[package]]
 name = "fastrand"
 version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1497,7 +1645,7 @@ checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "windows-sys 0.45.0",
 ]
 
@@ -1542,7 +1690,7 @@ dependencies = [
  "futures-sink",
  "nanorand",
  "pin-project",
- "spin 0.9.6",
+ "spin 0.9.7",
 ]
 
 [[package]]
@@ -1611,9 +1759,9 @@ dependencies = [
 
 [[package]]
 name = "futures"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "531ac96c6ff5fd7c62263c5e3c67a603af4fcaee2e1a0ae5565ba3a11e69e549"
+checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1626,9 +1774,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -1636,15 +1784,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1997dd9df74cdac935c76252744c1ed5794fac083242ea4fe77ef3ed60ba0f83"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -1653,9 +1801,9 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d422fa3cbe3b40dca574ab087abb5bc98258ea57eea3fd6f1fa7162c778b91"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-lite"
@@ -1674,26 +1822,26 @@ dependencies = [
 
 [[package]]
 name = "futures-macro"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3eb14ed937631bd8b8b8977f2c198443447a8355b6e3ca599f38c975e5a963b6"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
 
 [[package]]
 name = "futures-task"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-timer"
@@ -1703,9 +1851,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
 
 [[package]]
 name = "futures-util"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1746,9 +1894,9 @@ dependencies = [
 
 [[package]]
 name = "generic-array"
-version = "0.14.6"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
@@ -1808,7 +1956,7 @@ version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ccf7f68c2995f392c49fffb4f95ae2c873297830eb25c6bc4c114ce8f4562acc"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libc",
  "libgit2-sys",
  "log",
@@ -1862,7 +2010,7 @@ version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "ignore",
  "walkdir",
 ]
@@ -1902,7 +2050,7 @@ version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7fc59e5f710e310e76e6707f86c561dd646f69a8876da9131703b2f717de818d"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "gpu-alloc-types",
 ]
 
@@ -1912,7 +2060,7 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
@@ -1934,7 +2082,7 @@ version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "gpu-descriptor-types",
  "hashbrown 0.12.3",
 ]
@@ -1945,7 +2093,7 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
@@ -2033,7 +2181,7 @@ version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "90601c6189668c7345fc53842cb3f3a3d872203d523be1b3cb44a36a3e62fb85"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "com-rs",
  "libc",
  "libloading 0.7.4",
@@ -2133,9 +2281,9 @@ dependencies = [
 
 [[package]]
 name = "http_req"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba2b47a95070b135fd0e17a307ab18af91e15d4df99cc59e046fafb904404926"
+checksum = "5825a38a94c3aff23ea7f60572726829ef055ca02fc64899c3e2e7db2ce4f03f"
 dependencies = [
  "native-tls",
  "unicase",
@@ -2212,7 +2360,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0c17cc76786e99f8d2f055c11159e7f0091c42474dcc3189fbab96072e873e6d"
 dependencies = [
  "android_system_properties",
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys 0.8.4",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
@@ -2297,7 +2445,7 @@ version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "inotify-sys",
  "libc",
 ]
@@ -2351,19 +2499,19 @@ dependencies = [
 
 [[package]]
 name = "ipnet"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146"
+checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f"
 
 [[package]]
 name = "is-terminal"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8687c819457e979cc940d09cb16e42a1bf70aa6b60a549de6d3a62a0ee90c69e"
+checksum = "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8"
 dependencies = [
  "hermit-abi 0.3.1",
  "io-lifetimes",
- "rustix 0.36.11",
+ "rustix 0.37.6",
  "windows-sys 0.45.0",
 ]
 
@@ -2470,7 +2618,7 @@ version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libc",
 ]
 
@@ -2594,10 +2742,11 @@ dependencies = [
 
 [[package]]
 name = "libssh-rs"
-version = "0.1.7"
-source = "git+https://github.com/wez/libssh-rs.git#44a08196acd1a2277ec7ebce2a47618775f3c59c"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "411ad6d6b81fd5544f9a9b3b25a9da5533112880fff69b3b659d271a70ec4797"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libssh-rs-sys",
  "openssl-sys",
  "thiserror",
@@ -2606,7 +2755,8 @@ dependencies = [
 [[package]]
 name = "libssh-rs-sys"
 version = "0.1.3"
-source = "git+https://github.com/wez/libssh-rs.git#44a08196acd1a2277ec7ebce2a47618775f3c59c"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d592a55d4efe34f3e437e3f74e32b6d60d54aa3270fe2925840173c7d8648a42"
 dependencies = [
  "cc",
  "libz-sys",
@@ -2681,9 +2831,9 @@ checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd550e73688e6d578f0ac2119e32b797a327631a42f9433e59d02e139c8df60d"
+checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f"
 
 [[package]]
 name = "lock_api"
@@ -2854,7 +3004,7 @@ version = "0.24.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de11355d1f6781482d027a3b4d4de7825dcedb197bf573e0596d00008402d060"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "core-graphics-types",
  "foreign-types",
@@ -2965,11 +3115,12 @@ dependencies = [
  "async-trait",
  "base64 0.21.0",
  "bintree",
- "bitflags",
+ "bitflags 1.3.2",
  "chrono",
  "config",
  "crossbeam",
  "downcast-rs",
+ "fancy-regex",
  "filedescriptor",
  "finl_unicode",
  "flume",
@@ -2990,8 +3141,8 @@ dependencies = [
  "procinfo",
  "promise",
  "rangeset",
- "regex",
  "serde",
+ "serial",
  "shell-words",
  "smol",
  "terminfo",
@@ -3031,7 +3182,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5eafe22a23b797c9bc227c6c896419b26b5bb88fa903417a3adaed08778850d5"
 dependencies = [
  "bit-set",
- "bitflags",
+ "bitflags 1.3.2",
  "codespan-reporting",
  "hexf-parse",
  "indexmap",
@@ -3086,7 +3237,7 @@ version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cc",
  "cfg-if",
  "libc",
@@ -3099,7 +3250,7 @@ version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "libc",
  "memoffset 0.6.5",
@@ -3112,7 +3263,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
 dependencies = [
  "autocfg",
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "libc",
  "memoffset 0.6.5",
@@ -3125,7 +3276,7 @@ version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "libc",
  "memoffset 0.7.1",
@@ -3167,7 +3318,7 @@ version = "5.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "58ea850aa68a06e48fdb069c0ec44d0d64c8dbffa49bf3b6f7f0a901fdea1ba9"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "crossbeam-channel",
  "filetime",
  "fsevent-sys",
@@ -3357,18 +3508,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
 
 [[package]]
-name = "opaque-debug"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
-[[package]]
 name = "openssl"
 version = "0.10.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0c7ae222234c30df141154f159066c5093ff73b63204dcda7121eb082fc56a95"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -3384,9 +3529,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-src"
-version = "300.0.13+3.0.8"
+version = "300.1.0+3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f00789a63ec8951fcda9adb0f2258582afdcfe1b2435e332d3a859896f814f0a"
+checksum = "8596d772e98cb74f66ca3e86d7bf90d0464c0eb3da9f7d84798ee841ecfc9322"
 dependencies = [
  "cc",
 ]
@@ -3467,7 +3612,7 @@ dependencies = [
  "cfg-if",
  "instant",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "smallvec",
  "winapi",
 ]
@@ -3480,7 +3625,7 @@ checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "smallvec",
  "windows-sys 0.45.0",
 ]
@@ -3502,9 +3647,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
 
 [[package]]
 name = "pest"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cbd939b234e95d72bc393d51788aec68aeeb5d51e748ca08ff3aad58cb722f7"
+checksum = "7b1403e8401ad5dedea73c626b99758535b342502f8d1e361f4a2dd952749122"
 dependencies = [
  "thiserror",
  "ucd-trie",
@@ -3512,9 +3657,9 @@ dependencies = [
 
 [[package]]
 name = "pest_derive"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a81186863f3d0a27340815be8f2078dd8050b14cd71913db9fbda795e5f707d7"
+checksum = "be99c4c1d2fc2769b1d00239431d711d08f6efedcecb8b6e30707160aee99c15"
 dependencies = [
  "pest",
  "pest_generator",
@@ -3522,35 +3667,26 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75a1ef20bf3193c15ac345acb32e26b3dc3223aff4d77ae4fc5359567683796b"
+checksum = "e56094789873daa36164de2e822b3888c6ae4b4f9da555a1103587658c805b1e"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e3b284b1f13a20dc5ebc90aff59a51b8d7137c221131b52a7260c08cbc1cc80"
+checksum = "6733073c7cff3d8459fda0e42f13a047870242aed8b509fe98000928975f359e"
 dependencies = [
  "once_cell",
  "pest",
- "sha2 0.10.6",
-]
-
-[[package]]
-name = "phf"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
-dependencies = [
- "phf_shared 0.10.0",
+ "sha2",
 ]
 
 [[package]]
@@ -3560,7 +3696,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "928c6535de93548188ef63bb7c4036bd415cd8f36ad25af44b9789b2ee72a48c"
 dependencies = [
  "phf_macros",
- "phf_shared 0.11.1",
+ "phf_shared",
 ]
 
 [[package]]
@@ -3570,7 +3706,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a56ac890c5e3ca598bbdeaa99964edb5b0258a583a9eb6ef4e89fc85d9224770"
 dependencies = [
  "phf_generator",
- "phf_shared 0.11.1",
+ "phf_shared",
 ]
 
 [[package]]
@@ -3579,7 +3715,7 @@ version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b1181c94580fa345f50f19d738aaa39c0ed30a600d95cb2d3e23f94266f14fbf"
 dependencies = [
- "phf_shared 0.11.1",
+ "phf_shared",
  "rand",
 ]
 
@@ -3590,7 +3726,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "92aacdc5f16768709a569e913f7451034034178b05bdc8acda226659a3dccc66"
 dependencies = [
  "phf_generator",
- "phf_shared 0.11.1",
+ "phf_shared",
  "proc-macro2",
  "quote",
  "syn 1.0.109",
@@ -3598,15 +3734,6 @@ dependencies = [
 
 [[package]]
 name = "phf_shared"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
-dependencies = [
- "siphasher",
-]
-
-[[package]]
-name = "phf_shared"
 version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1fb5f6f826b772a8d4c0394209441e7d37cbbb967ae9c7e0e8134365c9ee676"
@@ -3713,7 +3840,7 @@ version = "0.17.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "crc32fast",
  "flate2",
  "miniz_oxide 0.6.2",
@@ -3726,7 +3853,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7e1f879b2998099c2d69ab9605d145d5b661195627eccc680002c4918a7fb6fa"
 dependencies = [
  "autocfg",
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "concurrent-queue",
  "libc",
@@ -3740,7 +3867,7 @@ name = "portable-pty"
 version = "0.8.1"
 dependencies = [
  "anyhow",
- "bitflags",
+ "bitflags 1.3.2",
  "downcast-rs",
  "filedescriptor",
  "futures",
@@ -3807,9 +3934,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.53"
+version = "1.0.55"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba466839c78239c09faf015484e5cc04860f88242cff4d03eb038f04b4699b73"
+checksum = "1d0dd4be24fcdcfeaa12a432d588dc59bbad6cad3510c67e74a2b6b2fc950564"
 dependencies = [
  "unicode-ident",
 ]
@@ -3863,7 +3990,7 @@ version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "getopts",
  "memchr",
  "unicase",
@@ -3967,7 +4094,7 @@ checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab"
 name = "rangeset"
 version = "0.1.0"
 dependencies = [
- "criterion",
+ "criterion 0.3.6",
  "num",
 ]
 
@@ -3985,14 +4112,14 @@ version = "10.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
 name = "raw-window-handle"
-version = "0.5.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f851a03551ceefd30132e447f07f96cb7011d6b658374f3aed847333adb5559"
+checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
 
 [[package]]
 name = "rayon"
@@ -4034,7 +4161,16 @@ version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+dependencies = [
+ "bitflags 1.3.2",
 ]
 
 [[package]]
@@ -4044,7 +4180,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
  "getrandom",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "thiserror",
 ]
 
@@ -4079,9 +4215,9 @@ checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157"
 
 [[package]]
 name = "reqwest"
-version = "0.11.15"
+version = "0.11.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ba30cc2c0cd02af1222ed216ba659cdb2f879dfe3181852fe7c50b1d0005949"
+checksum = "27b71749df584b7f4cac2c426c127a7c785a5106cc98f7a8feb044115f0fa254"
 dependencies = [
  "base64 0.21.0",
  "bytes",
@@ -4185,7 +4321,7 @@ version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "85127183a999f7db96d1a976a309eebbfb6ea3b0b400ddd8340190129de6eb7a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "fallible-iterator",
  "fallible-streaming-iterator",
  "hashlink",
@@ -4221,7 +4357,7 @@ version = "0.36.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "db4165c9963ab29e422d6c26fbc1d37f15bace6b2810221f9d925023480fcf0e"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "errno 0.2.8",
  "io-lifetimes",
  "libc",
@@ -4231,15 +4367,15 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.37.3"
+version = "0.37.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b24138615de35e32031d041a09032ef3487a616d901ca4db224e7d557efae2"
+checksum = "d097081ed288dfe45699b72f5b5d648e5f15d64d900c7080273baa20c16a6849"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "errno 0.3.0",
  "io-lifetimes",
  "libc",
- "linux-raw-sys 0.3.0",
+ "linux-raw-sys 0.3.1",
  "windows-sys 0.45.0",
 ]
 
@@ -4297,9 +4433,9 @@ version = "2.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a332be01508d814fed64bf28f798a146d73792121129962fdf335bb3c49a4254"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.9.3",
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys 0.8.4",
  "libc",
  "security-framework-sys",
 ]
@@ -4310,7 +4446,7 @@ version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4"
 dependencies = [
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys 0.8.4",
  "libc",
 ]
 
@@ -4340,9 +4476,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.158"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9"
+checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065"
 dependencies = [
  "serde_derive",
 ]
@@ -4359,20 +4495,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.158"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad"
+checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.94"
+version = "1.0.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea"
+checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744"
 dependencies = [
  "itoa",
  "ryu",
@@ -4387,7 +4523,7 @@ checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -4502,20 +4638,7 @@ checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
 dependencies = [
  "cfg-if",
  "cpufeatures",
- "digest 0.10.6",
-]
-
-[[package]]
-name = "sha2"
-version = "0.9.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
-dependencies = [
- "block-buffer 0.9.0",
- "cfg-if",
- "cpufeatures",
- "digest 0.9.0",
- "opaque-debug",
+ "digest",
 ]
 
 [[package]]
@@ -4526,7 +4649,7 @@ checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
 dependencies = [
  "cfg-if",
  "cpufeatures",
- "digest 0.10.6",
+ "digest",
 ]
 
 [[package]]
@@ -4565,16 +4688,6 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
 
 [[package]]
 name = "signal-hook"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e31d442c16f047a671b5a71e2161d6e68814012b7f5379d269ebd915fac2729"
-dependencies = [
- "libc",
- "signal-hook-registry",
-]
-
-[[package]]
-name = "signal-hook"
 version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9"
@@ -4640,7 +4753,7 @@ version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f307c47d32d2715eb2e0ece5589057820e0e5e70d07c247d1063e844e107f454"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "dlib",
  "lazy_static",
  "log",
@@ -4742,9 +4855,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
 
 [[package]]
 name = "spin"
-version = "0.9.6"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5d6e0250b93c8427a177b849d144a96d5acc57006149479403d7861ab721e34"
+checksum = "c0959fd6f767df20b231736396e4f602171e00d95205676286e79d4a4eb67bef"
 dependencies = [
  "lock_api",
 ]
@@ -4755,7 +4868,7 @@ version = "0.2.0+1.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "num-traits",
 ]
 
@@ -4787,7 +4900,7 @@ version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e7fe461910559f6d5604c3731d00d2aafc4a83d1665922e280f42f9a168d5455"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libc",
  "libssh2-sys",
  "parking_lot 0.11.2",
@@ -4826,7 +4939,7 @@ checksum = "9df65f20698aeed245efdde3628a6b559ea1239bbb871af1b6e3b58c413b2bd1"
 name = "strip-ansi-escapes"
 version = "0.1.0"
 dependencies = [
- "clap 4.1.13",
+ "clap 4.2.1",
  "termwiz",
 ]
 
@@ -4855,9 +4968,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.10"
+version = "2.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aad1363ed6d37b84299588d62d3a7d95b5a5c2d9aad5c85609fda12afaa1f40"
+checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -4925,15 +5038,15 @@ dependencies = [
 
 [[package]]
 name = "tempfile"
-version = "3.4.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
+checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall",
- "rustix 0.36.11",
- "windows-sys 0.42.0",
+ "redox_syscall 0.3.5",
+ "rustix 0.37.6",
+ "windows-sys 0.45.0",
 ]
 
 [[package]]
@@ -4974,7 +5087,7 @@ dependencies = [
  "dirs",
  "fnv",
  "nom",
- "phf 0.11.1",
+ "phf",
  "phf_codegen",
 ]
 
@@ -5008,10 +5121,11 @@ version = "0.22.0"
 dependencies = [
  "anyhow",
  "base64 0.21.0",
- "bitflags",
+ "bitflags 2.0.2",
  "cassowary",
- "criterion",
+ "criterion 0.4.0",
  "env_logger",
+ "fancy-regex",
  "filedescriptor",
  "finl_unicode",
  "fixedbitset",
@@ -5023,18 +5137,17 @@ dependencies = [
  "libc",
  "log",
  "memmem",
- "nix 0.24.3",
+ "nix 0.26.2",
  "num-derive",
  "num-traits",
  "ordered-float",
  "pest",
  "pest_derive",
- "phf 0.10.1",
- "regex",
+ "phf",
  "semver 0.11.0",
  "serde",
- "sha2 0.9.9",
- "signal-hook 0.1.17",
+ "sha2",
+ "signal-hook",
  "siphasher",
  "tempfile",
  "terminfo",
@@ -5063,6 +5176,7 @@ dependencies = [
  "terminfo",
  "termwiz",
  "wezterm-dynamic",
+ "wezterm-input-types",
 ]
 
 [[package]]
@@ -5102,7 +5216,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -5236,14 +5350,13 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.26.0"
+version = "1.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64"
+checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001"
 dependencies = [
  "autocfg",
  "bytes",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
  "pin-project-lite",
@@ -5254,13 +5367,13 @@ dependencies = [
 
 [[package]]
 name = "tokio-macros"
-version = "1.8.2"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8"
+checksum = "61a573bdc87985e9d6ddeed1b3d864e8a302c847e40d647746df2f1de209d1ce"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -5673,7 +5786,7 @@ version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "downcast-rs",
  "libc",
  "nix 0.24.3",
@@ -5722,7 +5835,7 @@ version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "wayland-client",
  "wayland-commons",
  "wayland-scanner",
@@ -5770,12 +5883,14 @@ name = "wezterm"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "cc",
  "chrono",
- "clap 4.1.13",
+ "clap 4.2.1",
  "clap_complete",
  "clap_complete_fig",
  "codec",
  "config",
+ "embed-resource",
  "env-bootstrap",
  "filedescriptor",
  "hostname",
@@ -5820,7 +5935,7 @@ dependencies = [
  "mac_address",
  "once_cell",
  "serde",
- "sha2 0.9.9",
+ "sha2",
  "tempfile",
  "thiserror",
  "uuid",
@@ -5945,11 +6060,11 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "benchmarking",
- "bitflags",
+ "bitflags 1.3.2",
  "bytemuck",
  "cc",
  "chrono",
- "clap 4.1.13",
+ "clap 4.2.1",
  "codec",
  "colorgrad",
  "config",
@@ -5991,7 +6106,6 @@ dependencies = [
  "regex",
  "serde",
  "serde_json",
- "serial",
  "shared_library",
  "shlex",
  "smol",
@@ -6033,7 +6147,7 @@ name = "wezterm-gui-subcommands"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "clap 4.1.13",
+ "clap 4.2.1",
  "config",
 ]
 
@@ -6041,7 +6155,7 @@ dependencies = [
 name = "wezterm-input-types"
 version = "0.1.0"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "euclid",
  "lazy_static",
  "serde",
@@ -6054,8 +6168,10 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async_ossl",
- "clap 4.1.13",
+ "cc",
+ "clap 4.2.1",
  "config",
+ "embed-resource",
  "env-bootstrap",
  "libc",
  "log",
@@ -6112,9 +6228,9 @@ dependencies = [
  "assert_fs",
  "async_ossl",
  "base64 0.21.0",
- "bitflags",
+ "bitflags 1.3.2",
  "camino",
- "clap 4.1.13",
+ "clap 4.2.1",
  "dirs-next",
  "env_logger",
  "filedescriptor",
@@ -6144,8 +6260,9 @@ name = "wezterm-term"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "bitflags",
+ "bitflags 1.3.2",
  "csscolorparser",
+ "downcast-rs",
  "env_logger",
  "finl_unicode",
  "hex",
@@ -6217,7 +6334,7 @@ checksum = "7131408d940e335792645a98f03639573b0480e9e2e7cddbbab74f7c6d9f3fff"
 dependencies = [
  "arrayvec",
  "bit-vec",
- "bitflags",
+ "bitflags 1.3.2",
  "codespan-reporting",
  "fxhash",
  "log",
@@ -6242,7 +6359,7 @@ dependencies = [
  "arrayvec",
  "ash",
  "bit-set",
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "core-graphics-types",
  "d3d12",
@@ -6280,7 +6397,7 @@ version = "0.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "32444e121b0bd00cb02c0de32fde457a9491bd44e03e7a5db6df9b1da2f6f110"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "js-sys",
  "web-sys",
 ]
@@ -6341,7 +6458,7 @@ dependencies = [
  "async-io",
  "async-task",
  "async-trait",
- "bitflags",
+ "bitflags 1.3.2",
  "bytes",
  "cgl",
  "clipboard-win",
@@ -6616,7 +6733,7 @@ version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0faeb4d7e2d54fff4a0584f61297e86b106914af2029778de7b427f72564d6c5"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libc",
  "quick-xml 0.22.0",
  "x11",
@@ -6627,7 +6744,7 @@ name = "xcb-imdkit"
 version = "0.2.0"
 source = "git+https://github.com/wez/xcb-imdkit-rs.git?branch=hangfix#c6859ab2b8a233ca5dda5e8e4f1634d34ce9c85c"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cc",
  "lazy_static",
  "pkg-config",
@@ -6774,9 +6891,9 @@ dependencies = [
 
 [[package]]
 name = "zune-inflate"
-version = "0.2.52"
+version = "0.2.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10ca8ee3897e213bf74d46641942575fb9b4bd9933cbce0b40eb320836da67e0"
+checksum = "440a08fd59c6442e4b846ea9b10386c38307eae728b216e1ab2c305d1c9daaf8"
 dependencies = [
  "simd-adler32",
 ]
diff --git a/pkgs/applications/terminal-emulators/wezterm/default.nix b/pkgs/applications/terminal-emulators/wezterm/default.nix
index 899c599c23f38..26c35d50d214d 100644
--- a/pkgs/applications/terminal-emulators/wezterm/default.nix
+++ b/pkgs/applications/terminal-emulators/wezterm/default.nix
@@ -31,14 +31,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wezterm";
-  version = "20230326-111934-3666303c";
+  version = "20230408-112425-69ae8472";
 
   src = fetchFromGitHub {
     owner = "wez";
     repo = pname;
     rev = version;
     fetchSubmodules = true;
-    sha256 = "sha256-tgJUnQKVdLJKohda9oy9dwz53OiK4O0A9YlsI0o+meY=";
+    hash = "sha256-Uk6I/JtSkGCQGG95DDD1hsu40X00/k5d44WP3OJ+rn4=";
   };
 
   postPatch = ''
@@ -52,7 +52,6 @@ rustPlatform.buildRustPackage rec {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "image-0.24.5" = "sha256-fTajVwm88OInqCPZerWcSAm1ga46ansQ3EzAmbT58Js=";
-      "libssh-rs-0.1.7" = "sha256-pLaWKk/iGy7FfoVafpPYzErnKudxeIWzssWv2Zlm58s=";
       "xcb-imdkit-0.2.0" = "sha256-QOT9HLlA26DVPUF4ViKH2ckexUsu45KZMdJwoUhW+hA=";
     };
   };
@@ -136,6 +135,6 @@ rustPlatform.buildRustPackage rec {
     description = "GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust";
     homepage = "https://wezfurlong.org/wezterm";
     license = licenses.mit;
-    maintainers = with maintainers; [ SuperSandro2000 ];
+    maintainers = with maintainers; [ SuperSandro2000 mimame ];
   };
 }
diff --git a/pkgs/applications/version-management/forgejo/default.nix b/pkgs/applications/version-management/forgejo/default.nix
index 25cce789bc88b..0ba9c073e1fc8 100644
--- a/pkgs/applications/version-management/forgejo/default.nix
+++ b/pkgs/applications/version-management/forgejo/default.nix
@@ -25,11 +25,11 @@
 
 buildGoModule rec {
   pname = "forgejo";
-  version = "1.19.0-3";
+  version = "1.19.1-0";
 
   src = fetchurl {
     url = "https://codeberg.org/forgejo/forgejo/releases/download/v${version}/forgejo-src-${version}.tar.gz";
-    hash = "sha256-u27DDw3JUtVJ2nvkKfaGzpYP8bpRnwc1LUVra8Epkjc=";
+    hash = "sha256-zoYEkUmJx7lt++2Rmjx/jgyZ2Y9uJH4k8VpD++My7mU=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/version-management/ghorg/default.nix b/pkgs/applications/version-management/ghorg/default.nix
index 22d9ada544c85..ebf123d415346 100644
--- a/pkgs/applications/version-management/ghorg/default.nix
+++ b/pkgs/applications/version-management/ghorg/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "ghorg";
-  version = "1.9.1";
+  version = "1.9.4";
 
   src = fetchFromGitHub {
     owner = "gabrie30";
     repo = "ghorg";
     rev = "v${version}";
-    sha256 = "sha256-1wtpbwTO8MdEvcdo5ImNuiNOtyPfaKFpr2Rezac4ofU=";
+    sha256 = "sha256-J/oZrtm/Bs4SU/Wl9LEH0kMxkOEXR2g/Bod5QFoCudU=";
   };
 
   doCheck = false;
-  vendorSha256 = null;
+  vendorHash = null;
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/version-management/ghq/default.nix b/pkgs/applications/version-management/ghq/default.nix
index b9bfc6f745ec7..80704e49a208a 100644
--- a/pkgs/applications/version-management/ghq/default.nix
+++ b/pkgs/applications/version-management/ghq/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ghq";
-  version = "1.4.1";
+  version = "1.4.2";
 
   src = fetchFromGitHub {
     owner = "x-motemen";
     repo = "ghq";
     rev = "v${version}";
-    sha256 = "sha256-dUW5eZODHkhhzC21uA9jFnwb9Q+9/t7o0K/nGbsZH84=";
+    sha256 = "sha256-ggTx5Kz9cRqOqxxzERv4altf7m1GlreGgOiYCnHyJks=";
   };
 
-  vendorHash = "sha256-Q3sIXt8srGI1ZFUdQ+x6I6Tc07HqyH0Hyu4kBe64uRs=";
+  vendorHash = "sha256-6ZDvU3RQ/1M4DZMFOaQsEuodldB8k+2thXNhvZlVQEg=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/version-management/git-dive/default.nix b/pkgs/applications/version-management/git-dive/default.nix
index 06cf6b3c28a45..a843b5243352f 100644
--- a/pkgs/applications/version-management/git-dive/default.nix
+++ b/pkgs/applications/version-management/git-dive/default.nix
@@ -13,16 +13,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-dive";
-  version = "0.1.5";
+  version = "0.1.6";
 
   src = fetchFromGitHub {
     owner = "gitext-rs";
     repo = "git-dive";
     rev = "v${version}";
-    hash = "sha256-LOvrPId/GBWPq73hdCdaMNKH7K7cmGmlkepkQiwGC60=";
+    hash = "sha256-sy2qNFn8JLE173HVWfFXBx21jcx4kpFMwi9a0m38lso=";
   };
 
-  cargoHash = "sha256-JDybjIUjj9ivJ5hJJB9bvGB18TdwEXQZfKfXPkyopK0=";
+  cargoHash = "sha256-Z3TgVunC/qNzUe0X9xIg3fTFXFk2w9yDA+EskSCg0Qo=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/version-management/git-ignore/default.nix b/pkgs/applications/version-management/git-ignore/default.nix
index b6595a7278ea2..b6b8b6f941345 100644
--- a/pkgs/applications/version-management/git-ignore/default.nix
+++ b/pkgs/applications/version-management/git-ignore/default.nix
@@ -1,36 +1,43 @@
-{ lib, stdenv, fetchFromGitHub, installShellFiles, rustPlatform, pkg-config, openssl, darwin }:
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, installShellFiles
+, stdenv
+, darwin
+}:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "git-ignore";
-  version = "1.2.0";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "sondr3";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Bfr+4zDi6QqirlqccW1jU95eb4q82ZFG9LtT2mCPYLc=";
+    hash = "sha256-kIRuoY0dM2t+aY4iYdik9gUpG+81sDiJLD11Bmx68FI=";
   };
 
-  cargoSha256 = "sha256-ehEUI4M2IxqS6QhyqOncwP+w6IGbIlSFNIP/FEVH/JI=";
+  cargoHash = "sha256-6sb+OW5VtA6vY6fDtsaZePZD53ehH7QawxJJlUNsrnM=";
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
 
-  nativeBuildInputs = [ pkg-config installShellFiles ];
-  buildInputs = [ openssl ]
-  ++ lib.optionals stdenv.isDarwin [
+  buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
   ];
 
   postInstall = ''
-    installManPage assets/git-ignore.1
-    # There's also .elv and .ps1 completion files but I don't know where to install those
-    installShellCompletion assets/git-ignore.{bash,fish} --zsh assets/_git-ignore
+    assets=$releaseDir/../assets
+    installManPage $assets/git-ignore.1
+    installShellCompletion $assets/git-ignore.{bash,fish} --zsh $assets/_git-ignore
   '';
 
   meta = with lib; {
     description = "Quickly and easily fetch .gitignore templates from gitignore.io";
     homepage = "https://github.com/sondr3/git-ignore";
+    changelog = "https://github.com/sondr3/git-ignore/blob/${src.rev}/CHANGELOG.md";
     license = licenses.gpl3Plus;
-    maintainers = [ ];
+    maintainers = with maintainers; [ figsoda ];
   };
 }
diff --git a/pkgs/applications/version-management/git-machete/default.nix b/pkgs/applications/version-management/git-machete/default.nix
index d449e7f44eb15..66d0ef0d1b8ee 100644
--- a/pkgs/applications/version-management/git-machete/default.nix
+++ b/pkgs/applications/version-management/git-machete/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonApplication rec {
   pname = "git-machete";
-  version = "3.16.3";
+  version = "3.17.0";
 
   src = fetchFromGitHub {
     owner = "virtuslab";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-pd+ZK34dPSCwl8bOwH388NZ6QNIlU5TqL7EabsWw7kk=";
+    hash = "sha256-F+2xbfMsc6izL0f8EjDfGaJs17xDNQn8/k8mvnLYzcM=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/applications/version-management/git-stack/default.nix b/pkgs/applications/version-management/git-stack/default.nix
index 69b1f299f5e7c..ec86a344fb5ab 100644
--- a/pkgs/applications/version-management/git-stack/default.nix
+++ b/pkgs/applications/version-management/git-stack/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-stack";
-  version = "0.10.14";
+  version = "0.10.15";
 
   src = fetchFromGitHub {
     owner = "gitext-rs";
     repo = "git-stack";
     rev = "v${version}";
-    hash = "sha256-DAvvVI3npHM7ln/EAr0RjtUCqCoKx9QHsCw69F8C8p4=";
+    hash = "sha256-DUr3kD27wWuWuArVVhGFYHmX7cA5+J1/dGsZIuWh30c=";
   };
 
-  cargoHash = "sha256-KDVHSCQx7qIS/Gwx/wlpdIMgirPSfG535dvu33gjF7c=";
+  cargoHash = "sha256-4p6vWVVHzjE66mnoXKbZJrh77q40OM49fHwCFCgE0W4=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     Security
diff --git a/pkgs/applications/version-management/glab/default.nix b/pkgs/applications/version-management/glab/default.nix
index 09e5525e22c35..847a25f3be606 100644
--- a/pkgs/applications/version-management/glab/default.nix
+++ b/pkgs/applications/version-management/glab/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "glab";
-  version = "1.26.0";
+  version = "1.28.0";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-k0wkHw12MyVsAudaihoymGkP4y5y98cR7LKa+hEC1Mc=";
+    hash = "sha256-e3tblY/lf25TJrsLeQdaPcgVlsaEimkjQxO0P9X1o6w=";
   };
 
-  vendorHash = "sha256-FZ1CiR8Rj/sMoCnQm6ArGQfRTlvmD14EZDmufnlTSTk=";
+  vendorHash = "sha256-PH0PJujdRtnVS0s6wWtS6kffQBQduqb2KJYru9ePatw=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/version-management/hut/default.nix b/pkgs/applications/version-management/hut/default.nix
index f2623d326d0ac..ef188ba68d95d 100644
--- a/pkgs/applications/version-management/hut/default.nix
+++ b/pkgs/applications/version-management/hut/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "hut";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromSourcehut {
     owner = "~emersion";
     repo = "hut";
     rev = "v${version}";
-    sha256 = "sha256-g9KbOtZaBAgy/iBBh/Tv5ULJNnNzwzZpA6DOynl+dnk=";
+    sha256 = "sha256-kr5EWQ3zHUp/oNPZV2d3j9AyoEmHEX8/rETiMKTBi3s=";
   };
 
-  vendorSha256 = "sha256-vuAx8B34Za+GEtekFOUaY07hBk3O2OaJ1JmulbIhwbs=";
+  vendorHash = "sha256-aoqGb7g8UEC/ydmL3GbWGy3HDD1kfDJOMeUP4nO9waA=";
 
   nativeBuildInputs = [
     scdoc
diff --git a/pkgs/applications/version-management/lefthook/default.nix b/pkgs/applications/version-management/lefthook/default.nix
index 7f4affc34fe90..b1ab249748ded 100644
--- a/pkgs/applications/version-management/lefthook/default.nix
+++ b/pkgs/applications/version-management/lefthook/default.nix
@@ -6,7 +6,7 @@
 
 let
   pname = "lefthook";
-  version = "1.3.9";
+  version = "1.3.10";
 in
 buildGoModule rec {
   inherit pname version;
@@ -15,10 +15,10 @@ buildGoModule rec {
     owner = "evilmartians";
     repo = "lefthook";
     rev = "v${version}";
-    hash = "sha256-6XsSnFrYRsVNzp5Kr1+GghbNh2uOOyT4BQm9yBw3jRU=";
+    hash = "sha256-dV8Zs62I61SXTX3NQs0n1P0LKNfyfZNHvdKzvJ3r5Z8=";
   };
 
-  vendorHash = "sha256-cMRl+TqSLlfoAja+JNaNKfHDR9fkvMTWdB1FT3XxPd4=";
+  vendorHash = "sha256-UMT39If9Oa7vgpkW2oltCUkaNQ0Qf1nCO5Z8F8SaajA=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index f284274203253..5f2f9837cc01c 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -21,11 +21,11 @@ let
 
   self = python3Packages.buildPythonApplication rec {
     pname = "mercurial${lib.optionalString fullBuild "-full"}";
-    version = "6.4";
+    version = "6.4.2";
 
     src = fetchurl {
       url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
-      sha256 = "sha256-6Iv7y5kR52kEoxuXLlf4bajmzliSuYw53VHTuVmcE0c=";
+      sha256 = "sha256-W59qPDX05GlchU73FCjPlGHKGlKfaRwG3G97SOe7MzU=";
     };
 
     format = "other";
@@ -35,7 +35,7 @@ let
     cargoDeps = if rustSupport then rustPlatform.fetchCargoTarball {
       inherit src;
       name = "mercurial-${version}";
-      sha256 = "sha256-jgB9UMuZ9v+euGN2LPzg0vNK0KeEa8GpQxLJYgQzzbw=";
+      sha256 = "sha256-dRajIqM91fESEm4EEa9qvS8h6/HlLZIJZztVGoS/G+M=";
       sourceRoot = "mercurial-${version}/rust";
     } else null;
     cargoRoot = if rustSupport then "rust" else null;
@@ -110,22 +110,6 @@ let
       gnupg
     ];
 
-    patches = [
-      # remove dependency over packaging for test runner
-      # https://bz.mercurial-scm.org/show_bug.cgi?id=6805
-      (fetchpatch {
-        url = "https://foss.heptapod.net/mercurial/mercurial-devel/-/commit/5e5e3733082a25856038f0fde66d4e08d8881539.patch";
-        hash = "sha256-JNxESWpWZW3AENz57tNJTV/ALnJjkmG1ZnTWSvTr4qY=";
-      })
-
-      # sligthly different test output matching
-      # https://bz.mercurial-scm.org/show_bug.cgi?id=6807
-      (fetchpatch {
-        url = "https://foss.heptapod.net/mercurial/mercurial-devel/-/commit/2231f7d8a60266bb6907b1708400c970ed799017.patch";
-        hash = "sha256-Lm5qXvM9nbmTpuMuvDoWhY4cQQQN7PFZtmu5e7mQVw4=";
-      })
-    ];
-
     postPatch = ''
       patchShebangs .
 
@@ -168,10 +152,6 @@ let
     # Python 3.10-3.12 deprecation warning: asyncore
     # https://bz.mercurial-scm.org/show_bug.cgi?id=6727
     test-patchbomb-tls.t
-
-    # Test wanting TLS 1.0 and 1.1, not available with OpenSSL v3.
-    # https://bz.mercurial-scm.org/show_bug.cgi?id=6760
-    test-https.t
     EOF
 
     export HGTEST_REAL_HG="${mercurial}/bin/hg"
diff --git a/pkgs/applications/version-management/radicle-cli/default.nix b/pkgs/applications/version-management/radicle-cli/default.nix
index 25168d7519061..3f4073945106e 100644
--- a/pkgs/applications/version-management/radicle-cli/default.nix
+++ b/pkgs/applications/version-management/radicle-cli/default.nix
@@ -38,6 +38,9 @@ rustPlatform.buildRustPackage rec {
     };
   };
 
+  # Otherwise, there are errors due to the `abigen` macro from `ethers`.
+  auditable = false;
+
   nativeBuildInputs = [
     pkg-config
     cmake
diff --git a/pkgs/applications/version-management/sapling/Cargo.lock b/pkgs/applications/version-management/sapling/Cargo.lock
index c18683f53274b..9a466c45f1e04 100644
--- a/pkgs/applications/version-management/sapling/Cargo.lock
+++ b/pkgs/applications/version-management/sapling/Cargo.lock
@@ -48,7 +48,7 @@ version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
 dependencies = [
- "getrandom 0.2.8",
+ "getrandom 0.2.9",
  "once_cell",
  "version_check",
 ]
@@ -97,18 +97,18 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.69"
+version = "1.0.70"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800"
+checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4"
 dependencies = [
  "backtrace",
 ]
 
 [[package]]
 name = "arbitrary"
-version = "1.2.3"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e90af4de65aa7b293ef2d09daff88501eb254f58edde2e1ac02c82d873eadad"
+checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e"
 
 [[package]]
 name = "arc-swap"
@@ -153,22 +153,22 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "1.12.0"
+version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794"
+checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
 dependencies = [
  "async-lock",
  "autocfg",
+ "cfg-if 1.0.0",
  "concurrent-queue",
  "futures-lite",
- "libc",
  "log",
  "parking",
  "polling",
+ "rustix",
  "slab",
  "socket2",
  "waker-fn",
- "windows-sys 0.42.0",
 ]
 
 [[package]]
@@ -184,7 +184,7 @@ dependencies = [
 name = "async-runtime"
 version = "0.1.0"
 dependencies = [
- "futures 0.3.26",
+ "futures 0.3.28",
  "num_cpus",
  "once_cell",
  "tokio",
@@ -192,13 +192,13 @@ dependencies = [
 
 [[package]]
 name = "async-trait"
-version = "0.1.65"
+version = "0.1.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "095183a3539c7c7649b2beb87c2d3f0591f3a7fed07761cc546d244e27e0238c"
+checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -263,7 +263,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -395,6 +395,7 @@ dependencies = [
  "pymanifest",
  "pymetalog",
  "pymutationstore",
+ "pynodeipc",
  "pynodemap",
  "pypathhistory",
  "pypathmatcher",
@@ -481,9 +482,9 @@ dependencies = [
 
 [[package]]
 name = "block-buffer"
-version = "0.10.3"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
 dependencies = [
  "generic-array",
 ]
@@ -511,9 +512,9 @@ dependencies = [
 
 [[package]]
 name = "bstr"
-version = "1.3.0"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ffdb39cb703212f3c11973452c2861b972f757b021158f3516ba10f2fa8b2c1"
+checksum = "c3d4260bcc2e8fc9df1eac4919a720effeb63a3f0952f5bf4944adfa18897f09"
 dependencies = [
  "memchr",
  "serde",
@@ -581,15 +582,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "camino"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6031a462f977dd38968b6f23378356512feeace69cef817e1a4475108093cec3"
-dependencies = [
- "serde",
-]
-
-[[package]]
 name = "cassowary"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -654,7 +646,7 @@ dependencies = [
  "async-trait",
  "configmodel",
  "fail",
- "futures 0.3.26",
+ "futures 0.3.28",
  "io",
  "manifest",
  "manifest-tree",
@@ -682,9 +674,9 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
 dependencies = [
  "iana-time-zone",
  "js-sys",
@@ -726,7 +718,7 @@ dependencies = [
  "regex",
  "strsim 0.10.0",
  "termcolor",
- "terminal_size 0.2.5",
+ "terminal_size 0.2.6",
  "textwrap 0.16.0",
  "unicase",
 ]
@@ -741,7 +733,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -822,12 +814,12 @@ dependencies = [
 [[package]]
 name = "cloned"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 
 [[package]]
 name = "codegen_includer_proc_macro"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "quote",
 ]
@@ -871,7 +863,7 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "filetime",
- "futures 0.3.26",
+ "futures 0.3.28",
  "hostcaps",
  "identity",
  "lazy_static",
@@ -907,9 +899,9 @@ dependencies = [
 
 [[package]]
 name = "concurrent-queue"
-version = "2.1.0"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e"
+checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c"
 dependencies = [
  "crossbeam-utils 0.8.15",
 ]
@@ -923,7 +915,7 @@ dependencies = [
  "codegen_includer_proc_macro",
  "const-cstr",
  "fbthrift",
- "futures 0.3.26",
+ "futures 0.3.28",
  "once_cell",
  "ref-cast",
  "serde",
@@ -943,7 +935,7 @@ dependencies = [
  "codegen_includer_proc_macro",
  "const-cstr",
  "fbthrift",
- "futures 0.3.26",
+ "futures 0.3.28",
  "once_cell",
  "ref-cast",
  "serde",
@@ -959,6 +951,7 @@ name = "configloader"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "base64 0.11.0",
  "configmodel",
  "configset",
  "dirs 2.0.2",
@@ -1051,8 +1044,16 @@ name = "copytrace"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "async-trait",
  "dag",
  "git2",
+ "manifest",
+ "manifest-tree",
+ "pathhistory",
+ "pathmatcher",
+ "storemodel",
+ "thiserror",
+ "tracing",
  "types",
 ]
 
@@ -1068,15 +1069,15 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
+checksum = "280a9f2d8b3a38871a3c8a46fb80db65e5e5ed97da80c4d08bf27fb63e35e181"
 dependencies = [
  "libc",
 ]
@@ -1102,7 +1103,7 @@ dependencies = [
  "async-runtime",
  "cpython",
  "cpython_ext",
- "futures 0.3.26",
+ "futures 0.3.28",
  "itertools 0.10.5",
  "tokio",
 ]
@@ -1190,7 +1191,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c"
 dependencies = [
  "cfg-if 1.0.0",
- "crossbeam-channel 0.5.7",
+ "crossbeam-channel 0.5.8",
  "crossbeam-deque 0.8.3",
  "crossbeam-epoch 0.9.14",
  "crossbeam-queue 0.3.8",
@@ -1218,9 +1219,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.7"
+version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c"
+checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
 dependencies = [
  "cfg-if 1.0.0",
  "crossbeam-utils 0.8.15",
@@ -1384,9 +1385,9 @@ dependencies = [
 
 [[package]]
 name = "csv"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af91f40b7355f82b0a891f50e70399475945bb0b0da4f1700ce60761c9d3e359"
+checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad"
 dependencies = [
  "csv-core",
  "itoa 1.0.6",
@@ -1410,7 +1411,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
 dependencies = [
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1440,9 +1441,9 @@ dependencies = [
 
 [[package]]
 name = "curl-sys"
-version = "0.4.60+curl-7.88.1"
+version = "0.4.61+curl-8.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "717abe2cb465a5da6ce06617388a3980c9a2844196734bec8ccb8e575250f13f"
+checksum = "14d05c10f541ae6f3bc5b3d923c20001f47db7d5f0b2bc6ad16490133842db79"
 dependencies = [
  "cc",
  "libc",
@@ -1456,9 +1457,9 @@ dependencies = [
 
 [[package]]
 name = "cxx"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d3488e7665a7a483b57e25bdd90d0aeb2bc7608c8d0346acf2ad3f1caf1d62"
+checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
 dependencies = [
  "cc",
  "cxxbridge-flags",
@@ -1468,9 +1469,9 @@ dependencies = [
 
 [[package]]
 name = "cxx-build"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48fcaf066a053a41a81dfb14d57d99738b767febb8b735c3016e469fac5da690"
+checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
 dependencies = [
  "cc",
  "codespan-reporting",
@@ -1478,24 +1479,24 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef98b8b717a829ca5603af80e1f9e2e48013ab227b68ef37872ef84ee479bf"
+checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "086c685979a698443656e5cf7856c95c642295a38599f12fb1ff76fb28d19892"
+checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -1511,7 +1512,7 @@ dependencies = [
  "drawdag",
  "fail",
  "fs2",
- "futures 0.3.26",
+ "futures 0.3.28",
  "indexedlog",
  "indexmap",
  "mincode",
@@ -1568,12 +1569,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "data-encoding"
-version = "2.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23d8666cb01533c39dde32bcbab8e227b4ed6679b2c925eba05feabea39508fb"
-
-[[package]]
 name = "debugtop"
 version = "0.1.0"
 dependencies = [
@@ -1584,9 +1579,9 @@ dependencies = [
 
 [[package]]
 name = "deltae"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e412cd91a4ec62fcc739ea50c40babe21e3de60d69f36393cce377c7c04ead5a"
+checksum = "3ef311e2c0a388b9ba56c839ac68d33b92d18ce7104d0acc4375cb479e2b9a53"
 
 [[package]]
 name = "dev-logger"
@@ -1624,7 +1619,7 @@ version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
 dependencies = [
- "block-buffer 0.10.3",
+ "block-buffer 0.10.4",
  "crypto-common",
 ]
 
@@ -1683,10 +1678,13 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-trait",
+ "configloader",
+ "configmodel",
  "dag",
  "edenapi_trait",
  "fail",
- "futures 0.3.26",
+ "futures 0.3.28",
+ "hgstore",
  "http",
  "identity",
  "manifest-tree",
@@ -1730,7 +1728,7 @@ dependencies = [
  "configmodel",
  "edenapi_trait",
  "edenapi_types",
- "futures 0.3.26",
+ "futures 0.3.28",
  "hg-http",
  "http-client",
  "itertools 0.10.5",
@@ -1763,7 +1761,7 @@ dependencies = [
  "crossbeam 0.8.2",
  "edenapi",
  "edenapi_types",
- "futures 0.3.26",
+ "futures 0.3.28",
  "itertools 0.10.5",
  "minibytes",
  "tokio",
@@ -1779,7 +1777,7 @@ dependencies = [
  "async-trait",
  "configmodel",
  "edenapi_types",
- "futures 0.3.26",
+ "futures 0.3.28",
  "http",
  "http-client",
  "minibytes",
@@ -1864,18 +1862,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "enum-as-inner"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21cdad81446a7f7dc43f6a77409efeb9733d2fa65553efef6018ef257c959b73"
-dependencies = [
- "heck 0.4.1",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
 name = "enum_dispatch"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1884,7 +1870,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1912,13 +1898,13 @@ dependencies = [
 
 [[package]]
 name = "errno"
-version = "0.2.8"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
 dependencies = [
  "errno-dragonfly",
  "libc",
- "winapi 0.3.9",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -1972,7 +1958,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2004,14 +1990,14 @@ dependencies = [
 [[package]]
 name = "fb303_core"
 version = "0.0.0"
-source = "git+https://github.com/facebook/fb303.git?branch=main#5d78ac1eb00320cb53f4333c5c55fecf51177393"
+source = "git+https://github.com/facebook/fb303.git?branch=main#55c736fe6b9f42458d39211ae236cc59412c8424"
 dependencies = [
  "anyhow",
  "async-trait",
  "codegen_includer_proc_macro",
  "const-cstr",
  "fbthrift",
- "futures 0.3.26",
+ "futures 0.3.28",
  "once_cell",
  "ref-cast",
  "serde",
@@ -2025,7 +2011,7 @@ dependencies = [
 [[package]]
 name = "fbinit"
 version = "0.1.2"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "fbinit_macros",
  "quickcheck",
@@ -2034,25 +2020,24 @@ dependencies = [
 [[package]]
 name = "fbinit_macros"
 version = "0.1.2"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "fbthrift"
 version = "0.0.1+unstable"
-source = "git+https://github.com/facebook/fbthrift.git?branch=main#a8ffeb94383c4c6dbdff5997a49851e830a18984"
+source = "git+https://github.com/facebook/fbthrift.git?branch=main#1e7f13644729f1f71434fa06395267db723ad4e0"
 dependencies = [
  "anyhow",
  "async-trait",
  "base64 0.11.0",
  "bufsize",
  "bytes 1.4.0",
- "camino",
- "futures 0.3.26",
+ "futures 0.3.28",
  "ghost",
  "num-derive",
  "num-traits",
@@ -2065,7 +2050,7 @@ dependencies = [
 [[package]]
 name = "fbthrift_framed"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "byteorder",
  "bytes 1.4.0",
@@ -2075,14 +2060,14 @@ dependencies = [
 [[package]]
 name = "fbthrift_socket"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "anyhow",
  "bytes 1.4.0",
  "fbthrift",
  "fbthrift_framed",
  "fbthrift_util",
- "futures 0.3.26",
+ "futures 0.3.28",
  "tokio",
  "tokio-tower",
  "tokio-util 0.6.10",
@@ -2092,13 +2077,24 @@ dependencies = [
 [[package]]
 name = "fbthrift_util"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "tokio",
 ]
 
 [[package]]
 name = "filedescriptor"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e70cb4dda2f343f3b7a98a6536559d04a700136cada190822e5d6a99e4184c06"
+dependencies = [
+ "anyhow",
+ "libc",
+ "winapi 0.3.9",
+]
+
+[[package]]
+name = "filedescriptor"
 version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7199d965852c3bac31f779ef99cbb4537f80e952e2d6aa0ffeb30cce00f4f46e"
@@ -2110,14 +2106,14 @@ dependencies = [
 
 [[package]]
 name = "filetime"
-version = "0.2.20"
+version = "0.2.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
+checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
- "redox_syscall",
- "windows-sys 0.45.0",
+ "redox_syscall 0.2.16",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2239,9 +2235,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678"
 
 [[package]]
 name = "futures"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84"
+checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -2254,9 +2250,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -2264,15 +2260,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -2281,15 +2277,15 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-lite"
-version = "1.12.0"
+version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
+checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
 dependencies = [
  "fastrand",
  "futures-core",
@@ -2302,26 +2298,26 @@ dependencies = [
 
 [[package]]
 name = "futures-macro"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
 
 [[package]]
 name = "futures-task"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-timer"
@@ -2331,9 +2327,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
 
 [[package]]
 name = "futures-util"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
  "futures 0.1.31",
  "futures-channel",
@@ -2350,9 +2346,9 @@ dependencies = [
 
 [[package]]
 name = "generic-array"
-version = "0.14.6"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
@@ -2380,9 +2376,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.8"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -2391,13 +2387,13 @@ dependencies = [
 
 [[package]]
 name = "ghost"
-version = "0.1.7"
+version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41973d4c45f7a35af8753ba3457cc99d406d863941fd7f52663cff54a5ab99b3"
+checksum = "e77ac7b51b8e6313251737fcef4b1c01a2ea102bde68415b62c0ee9268fec357"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -2439,7 +2435,7 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-trait",
- "futures 0.3.26",
+ "futures 0.3.28",
  "git2",
  "minibytes",
  "storemodel",
@@ -2467,9 +2463,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.16"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5be7b54589b581f624f566bf5d8eb2bab1db736c51528720b6bd36b96b55924d"
+checksum = "66b91535aa35fea1523ad1b86cb6b53c28e0ae566ba4a460f4457e936cad7c6f"
 dependencies = [
  "bytes 1.4.0",
  "fnv",
@@ -2542,6 +2538,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
 name = "hex"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2575,6 +2577,7 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-runtime",
+ "atexit",
  "bindings",
  "blackbox",
  "checkout",
@@ -2587,6 +2590,7 @@ dependencies = [
  "configmodel",
  "cpython",
  "cpython_ext",
+ "ctrlc",
  "dag",
  "debugtop",
  "eagerepo",
@@ -2609,6 +2613,7 @@ dependencies = [
  "mincode",
  "minibytes",
  "network-doctor",
+ "nodeipc",
  "once_cell",
  "parking_lot 0.11.2",
  "pathmatcher",
@@ -2649,7 +2654,7 @@ dependencies = [
  "async-trait",
  "dag",
  "edenapi",
- "futures 0.3.26",
+ "futures 0.3.28",
  "gitdag",
  "metalog",
  "minibytes",
@@ -2673,7 +2678,6 @@ dependencies = [
  "atexit",
  "clidispatch",
  "configloader",
- "ctrlc",
  "dirs 2.0.2",
  "encoding",
  "hgcommands",
@@ -2695,6 +2699,15 @@ name = "hgrc-parser"
 version = "0.1.0"
 
 [[package]]
+name = "hgstore"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "minibytes",
+ "types",
+]
+
+[[package]]
 name = "hgtime"
 version = "0.1.0"
 dependencies = [
@@ -2705,7 +2718,7 @@ dependencies = [
 [[package]]
 name = "hostcaps"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "lazy_static",
 ]
@@ -2713,7 +2726,7 @@ dependencies = [
 [[package]]
 name = "hostname"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "anyhow",
  "hostname 0.3.1",
@@ -2764,7 +2777,7 @@ dependencies = [
  "curl",
  "curl-sys",
  "env_logger 0.7.1",
- "futures 0.3.26",
+ "futures 0.3.28",
  "http",
  "lru-cache",
  "maplit",
@@ -2816,9 +2829,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.24"
+version = "0.14.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e011372fa0b68db8350aa7a248930ecc7839bf46d8485577d69f117a75f164c"
+checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4"
 dependencies = [
  "bytes 1.4.0",
  "futures-channel",
@@ -2866,16 +2879,16 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "winapi 0.3.9",
+ "windows",
 ]
 
 [[package]]
@@ -2902,17 +2915,6 @@ dependencies = [
 
 [[package]]
 name = "idna"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "idna"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
@@ -2963,9 +2965,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "1.9.2"
+version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "arbitrary",
  "autocfg",
@@ -2976,9 +2978,9 @@ dependencies = [
 
 [[package]]
 name = "insta"
-version = "1.28.0"
+version = "1.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea5b3894afe466b4bcf0388630fc15e11938a6074af0cd637c825ba2ec8a099"
+checksum = "9a28d25139df397cbca21408bb742cf6837e04cdbebf1b07b760caf971d6a972"
 dependencies = [
  "console",
  "lazy_static",
@@ -3021,12 +3023,13 @@ dependencies = [
 
 [[package]]
 name = "io-lifetimes"
-version = "1.0.5"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
+checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220"
 dependencies = [
+ "hermit-abi 0.3.1",
  "libc",
- "windows-sys 0.45.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -3039,22 +3042,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "ipconfig"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd302af1b90f2463a98fa5ad469fc212c8e3175a41c3068601bfa2727591c5be"
-dependencies = [
- "socket2",
- "widestring",
- "winapi 0.3.9",
- "winreg",
-]
-
-[[package]]
 name = "ipnet"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146"
+checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f"
 
 [[package]]
 name = "itertools"
@@ -3145,9 +3136,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.139"
+version = "0.2.141"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
+checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5"
 
 [[package]]
 name = "libgit2-sys"
@@ -3225,9 +3216,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.1.4"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
+checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f"
 
 [[package]]
 name = "local-encoding"
@@ -3355,12 +3346,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "matches"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
-
-[[package]]
 name = "maybe-uninit"
 version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3440,7 +3425,7 @@ dependencies = [
 name = "metrics"
 version = "0.1.0"
 dependencies = [
- "futures 0.3.26",
+ "futures 0.3.28",
  "once_cell",
 ]
 
@@ -3465,9 +3450,9 @@ dependencies = [
 
 [[package]]
 name = "mime"
-version = "0.3.16"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
 
 [[package]]
 name = "mime_guess"
@@ -3618,7 +3603,7 @@ dependencies = [
  "bitflags",
  "dag",
  "drawdag",
- "futures 0.3.26",
+ "futures 0.3.28",
  "indexedlog",
  "rand 0.8.5",
  "rand_chacha 0.3.1",
@@ -3686,6 +3671,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "nodeipc"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "filedescriptor 0.7.3",
+ "libc",
+ "once_cell",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "nodemap"
 version = "0.1.0"
 dependencies = [
@@ -3721,7 +3718,7 @@ dependencies = [
 name = "nonblocking"
 version = "0.1.0"
 dependencies = [
- "futures 0.3.26",
+ "futures 0.3.28",
 ]
 
 [[package]]
@@ -3762,7 +3759,7 @@ checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -3832,9 +3829,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
 name = "openssl"
-version = "0.10.45"
+version = "0.10.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b102428fd03bc5edf97f62620f7298614c45cedf287c271e7ed450bbaf83f2e1"
+checksum = "7e30d8bc91859781f0a943411186324d580f2bbeb71b452fe91ae344806af3f1"
 dependencies = [
  "bitflags",
  "cfg-if 1.0.0",
@@ -3847,13 +3844,13 @@ dependencies = [
 
 [[package]]
 name = "openssl-macros"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -3864,11 +3861,10 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.80"
+version = "0.9.85"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7"
+checksum = "0d3d193fb1488ad46ffe3aaabc912cc931d02ee8518fe2959aea8ef52718b0c0"
 dependencies = [
- "autocfg",
  "cc",
  "libc",
  "pkg-config",
@@ -3887,9 +3883,9 @@ dependencies = [
 
 [[package]]
 name = "ordered-float"
-version = "3.4.0"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d84eb1409416d254e4a9c8fa56cc24701755025b458f0fcd8e59e1f5f40c23bf"
+checksum = "13a384337e997e6860ffbaa83708b2ef329fd8c54cb67a5f64d421e0f943254f"
 dependencies = [
  "num-traits",
 ]
@@ -3906,9 +3902,9 @@ dependencies = [
 
 [[package]]
 name = "os_str_bytes"
-version = "6.4.1"
+version = "6.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
+checksum = "ceedf44fb00f2d1984b0bc98102627ce622e083e49a5bacdb3e514fa4238e267"
 
 [[package]]
 name = "output_vt100"
@@ -3933,9 +3929,9 @@ checksum = "384e52fd8fbd4cbe3c317e8216260c21a0f9134de108cea8a4dd4e7e152c472d"
 
 [[package]]
 name = "parking"
-version = "2.0.0"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
+checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e"
 
 [[package]]
 name = "parking_lot"
@@ -3967,7 +3963,7 @@ dependencies = [
  "cfg-if 1.0.0",
  "instant",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "smallvec",
  "winapi 0.3.9",
 ]
@@ -3980,16 +3976,16 @@ checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "smallvec",
  "windows-sys 0.45.0",
 ]
 
 [[package]]
 name = "paste"
-version = "1.0.11"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
+checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79"
 
 [[package]]
 name = "pathhistory"
@@ -4044,9 +4040,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
 
 [[package]]
 name = "pest"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cbd939b234e95d72bc393d51788aec68aeeb5d51e748ca08ff3aad58cb722f7"
+checksum = "7b1403e8401ad5dedea73c626b99758535b342502f8d1e361f4a2dd952749122"
 dependencies = [
  "thiserror",
  "ucd-trie",
@@ -4054,9 +4050,9 @@ dependencies = [
 
 [[package]]
 name = "pest_derive"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a81186863f3d0a27340815be8f2078dd8050b14cd71913db9fbda795e5f707d7"
+checksum = "be99c4c1d2fc2769b1d00239431d711d08f6efedcecb8b6e30707160aee99c15"
 dependencies = [
  "pest",
  "pest_generator",
@@ -4064,22 +4060,22 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75a1ef20bf3193c15ac345acb32e26b3dc3223aff4d77ae4fc5359567683796b"
+checksum = "e56094789873daa36164de2e822b3888c6ae4b4f9da555a1103587658c805b1e"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e3b284b1f13a20dc5ebc90aff59a51b8d7137c221131b52a7260c08cbc1cc80"
+checksum = "6733073c7cff3d8459fda0e42f13a047870242aed8b509fe98000928975f359e"
 dependencies = [
  "once_cell",
  "pest",
@@ -4135,7 +4131,7 @@ dependencies = [
  "phf_shared 0.11.1",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -4182,7 +4178,7 @@ checksum = "851c8d0ce9bebe43790dedfc86614c23494ac9f423dd618d3a61fc693eafe61e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -4193,7 +4189,7 @@ checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -4251,16 +4247,18 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "2.5.2"
+version = "2.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6"
+checksum = "4be1c66a6add46bff50935c313dae30a5030cf8385c5206e8a95e9e9def974aa"
 dependencies = [
  "autocfg",
+ "bitflags",
  "cfg-if 1.0.0",
+ "concurrent-queue",
  "libc",
  "log",
- "wepoll-ffi",
- "windows-sys 0.42.0",
+ "pin-project-lite",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -4298,7 +4296,7 @@ dependencies = [
  "proc-macro-error-attr",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "version_check",
 ]
 
@@ -4315,9 +4313,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.51"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
 dependencies = [
  "unicode-ident",
 ]
@@ -4483,10 +4481,15 @@ dependencies = [
 name = "pycopytrace"
 version = "0.1.0"
 dependencies = [
+ "anyhow",
+ "async-runtime",
  "copytrace",
  "cpython",
  "cpython_ext",
+ "dag",
  "parking_lot 0.11.2",
+ "pymanifest",
+ "storemodel",
  "types",
 ]
 
@@ -4499,7 +4502,7 @@ dependencies = [
  "cpython",
  "cpython_ext",
  "dag",
- "futures 0.3.26",
+ "futures 0.3.28",
  "hgcommits",
  "minibytes",
  "parking_lot 0.11.2",
@@ -4554,6 +4557,7 @@ dependencies = [
  "dag",
  "eagerepo",
  "edenapi_types",
+ "pyconfigloader",
  "pydag",
  "pyedenapi",
  "storemodel",
@@ -4573,7 +4577,8 @@ dependencies = [
  "edenapi",
  "edenapi_ext",
  "edenapi_types",
- "futures 0.3.26",
+ "futures 0.3.28",
+ "hgstore",
  "minibytes",
  "progress-model",
  "pyconfigloader",
@@ -4753,6 +4758,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "pynodeipc"
+version = "0.1.0"
+dependencies = [
+ "cpython",
+ "cpython_ext",
+ "nodeipc",
+ "serde_json",
+]
+
+[[package]]
 name = "pynodemap"
 version = "0.1.0"
 dependencies = [
@@ -4870,7 +4885,7 @@ dependencies = [
  "configmodel",
  "cpython",
  "cpython_ext",
- "futures 0.3.26",
+ "futures 0.3.28",
  "io",
  "minibytes",
  "parking_lot 0.11.2",
@@ -5049,12 +5064,12 @@ dependencies = [
 [[package]]
 name = "quickcheck_arbitrary_derive"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "proc-macro2",
  "quickcheck",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -5065,14 +5080,14 @@ checksum = "b22a693222d716a9587786f37ac3f6b4faedb5b80c23914e7303ff5a1d8016e9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.23"
+version = "1.0.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
 dependencies = [
  "proc-macro2",
 ]
@@ -5175,7 +5190,7 @@ version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "getrandom 0.2.8",
+ "getrandom 0.2.9",
 ]
 
 [[package]]
@@ -5203,7 +5218,7 @@ version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
 dependencies = [
- "crossbeam-channel 0.5.7",
+ "crossbeam-channel 0.5.8",
  "crossbeam-deque 0.8.3",
  "crossbeam-utils 0.8.15",
  "num_cpus",
@@ -5228,34 +5243,43 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
 name = "redox_users"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.8",
- "redox_syscall",
+ "getrandom 0.2.9",
+ "redox_syscall 0.2.16",
  "thiserror",
 ]
 
 [[package]]
 name = "ref-cast"
-version = "1.0.15"
+version = "1.0.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9af2cf09ef80e610097515e80095b7f76660a92743c4185aff5406cd5ce3dd5"
+checksum = "f43faa91b1c8b36841ee70e97188a869d37ae21759da6846d4be66de5bf7b12c"
 dependencies = [
  "ref-cast-impl",
 ]
 
 [[package]]
 name = "ref-cast-impl"
-version = "1.0.15"
+version = "1.0.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c501201393982e275433bc55de7d6ae6f00e7699cd5572c5b57581cd69c881b"
+checksum = "8d2275aab483050ab2a7364c1a46604865ee7d6906684e08db0f090acf74f9e7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -5267,9 +5291,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.7.1"
+version = "1.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
+checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -5287,9 +5311,9 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.28"
+version = "0.6.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "remove_dir_all"
@@ -5328,6 +5352,7 @@ dependencies = [
  "identity",
  "manifest-tree",
  "metalog",
+ "once_cell",
  "parking_lot 0.11.2",
  "refencode",
  "repolock",
@@ -5368,10 +5393,11 @@ dependencies = [
 
 [[package]]
 name = "reqwest"
-version = "0.11.11"
-source = "git+https://github.com/vmagro/reqwest?rev=f9490c06756a9d35ab874c44657db790a87af80b#f9490c06756a9d35ab874c44657db790a87af80b"
+version = "0.11.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "27b71749df584b7f4cac2c426c127a7c785a5106cc98f7a8feb044115f0fa254"
 dependencies = [
- "base64 0.13.1",
+ "base64 0.21.0",
  "bytes 1.4.0",
  "encoding_rs",
  "futures-core",
@@ -5384,11 +5410,11 @@ dependencies = [
  "hyper-tls",
  "ipnet",
  "js-sys",
- "lazy_static",
  "log",
  "mime",
  "mime_guess",
  "native-tls",
+ "once_cell",
  "percent-encoding",
  "pin-project-lite",
  "rustls",
@@ -5402,10 +5428,10 @@ dependencies = [
  "tokio-rustls",
  "tokio-util 0.7.7",
  "tower-service",
- "trust-dns-resolver",
  "url",
  "wasm-bindgen",
  "wasm-bindgen-futures",
+ "wasm-streams",
  "web-sys",
  "webpki-roots",
  "winreg",
@@ -5428,16 +5454,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "resolv-conf"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00"
-dependencies = [
- "hostname 0.3.1",
- "quick-error",
-]
-
-[[package]]
 name = "revisionstore"
 version = "0.1.0"
 dependencies = [
@@ -5453,10 +5469,11 @@ dependencies = [
  "edenapi",
  "edenapi_types",
  "fbinit",
- "futures 0.3.26",
+ "futures 0.3.28",
  "hex",
  "hg-http",
  "hg-metrics",
+ "hgstore",
  "hgtime",
  "http",
  "http-client",
@@ -5591,9 +5608,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-demangle"
-version = "0.1.21"
+version = "0.1.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342"
+checksum = "d4a36c42d1873f9a77c53bde094f9664d9891bc604a45b4798fd2c389ed12e5b"
 
 [[package]]
 name = "rustc_version"
@@ -5601,21 +5618,21 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
- "semver 1.0.16",
+ "semver 1.0.17",
 ]
 
 [[package]]
 name = "rustix"
-version = "0.36.9"
+version = "0.37.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc"
+checksum = "85597d61f83914ddeba6a47b3b8ffe7365107221c2e557ed94426489fefb5f77"
 dependencies = [
  "bitflags",
  "errno",
  "io-lifetimes",
  "libc",
  "linux-raw-sys",
- "windows-sys 0.45.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -5705,9 +5722,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
 name = "scratch"
-version = "1.0.4"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d5e082f6ea090deaf0e6dd04b68360fd5cddb152af6ce8927c9d25db299f98c"
+checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
 
 [[package]]
 name = "sct"
@@ -5753,9 +5770,9 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a"
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
 
 [[package]]
 name = "semver-parser"
@@ -5768,9 +5785,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.152"
+version = "1.0.160"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "bb2f3770c8bce3bcda7e149193a069a0f4365bda1fa5cd88e03bca26afc1216c"
 dependencies = [
  "serde_derive",
 ]
@@ -5782,7 +5799,7 @@ version = "0.1.0"
 [[package]]
 name = "serde_bser"
 version = "0.3.1"
-source = "git+https://github.com/facebook/watchman.git?branch=main#12a12d48d21300a67ce900d434aa3172ee9fbd90"
+source = "git+https://github.com/facebook/watchman.git?branch=main#efc891b9f64a7b560b9e06f62fb8767343501729"
 dependencies = [
  "anyhow",
  "byteorder",
@@ -5813,20 +5830,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.152"
+version = "1.0.160"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "291a097c63d8497e00160b166a967a4a79c64f3facdd01cbd7502231688d77df"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.93"
+version = "1.0.96"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1"
 dependencies = [
  "itoa 1.0.6",
  "ryu",
@@ -6023,7 +6040,7 @@ dependencies = [
 [[package]]
 name = "sorted_vector_map"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "itertools 0.10.5",
  "quickcheck",
@@ -6034,7 +6051,7 @@ name = "sparse"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "futures 0.3.26",
+ "futures 0.3.28",
  "globset",
  "once_cell",
  "pathmatcher",
@@ -6097,7 +6114,7 @@ dependencies = [
  "anyhow",
  "async-trait",
  "auto_impl",
- "futures 0.3.26",
+ "futures 0.3.28",
  "minibytes",
  "types",
 ]
@@ -6133,7 +6150,7 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-trait",
- "futures 0.3.26",
+ "futures 0.3.28",
  "pin-project 0.4.30",
  "tokio",
 ]
@@ -6171,7 +6188,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -6189,7 +6206,7 @@ dependencies = [
  "heck 0.3.3",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -6216,6 +6233,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "syn"
+version = "2.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
 name = "synstructure"
 version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6223,7 +6251,7 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "unicode-xid",
 ]
 
@@ -6239,15 +6267,15 @@ dependencies = [
 
 [[package]]
 name = "tempfile"
-version = "3.4.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
+checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
 dependencies = [
  "cfg-if 1.0.0",
  "fastrand",
- "redox_syscall",
+ "redox_syscall 0.3.5",
  "rustix",
- "windows-sys 0.42.0",
+ "windows-sys 0.45.0",
 ]
 
 [[package]]
@@ -6271,12 +6299,12 @@ dependencies = [
 
 [[package]]
 name = "terminal_size"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c9afddd2cec1c0909f06b00ef33f94ab2cc0578c4a610aa208ddfec8aa2b43a"
+checksum = "8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237"
 dependencies = [
  "rustix",
- "windows-sys 0.45.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -6333,7 +6361,7 @@ dependencies = [
  "bitflags",
  "cassowary",
  "cfg-if 1.0.0",
- "filedescriptor",
+ "filedescriptor 0.8.2",
  "finl_unicode",
  "fixedbitset",
  "fnv",
@@ -6345,7 +6373,7 @@ dependencies = [
  "nix 0.24.3",
  "num-derive",
  "num-traits",
- "ordered-float 3.4.0",
+ "ordered-float 3.6.0",
  "pest",
  "pest_derive",
  "phf 0.10.1",
@@ -6381,28 +6409,28 @@ version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
 dependencies = [
- "terminal_size 0.2.5",
+ "terminal_size 0.2.6",
  "unicode-width",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.38"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
+checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.38"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
+checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -6426,7 +6454,7 @@ dependencies = [
  "const-cstr",
  "fb303_core",
  "fbthrift",
- "futures 0.3.26",
+ "futures 0.3.28",
  "once_cell",
  "ref-cast",
  "serde",
@@ -6447,7 +6475,7 @@ dependencies = [
  "config_thrift",
  "fb303_core",
  "fbthrift",
- "futures 0.3.26",
+ "futures 0.3.28",
  "thiserror",
  "thrift",
 ]
@@ -6455,7 +6483,7 @@ dependencies = [
 [[package]]
 name = "thrift_compiler"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "anyhow",
  "clap 2.34.0",
@@ -6529,14 +6557,13 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.26.0"
+version = "1.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64"
+checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001"
 dependencies = [
  "autocfg",
  "bytes 1.4.0",
  "libc",
- "memchr",
  "mio 0.8.6",
  "num_cpus",
  "parking_lot 0.12.1",
@@ -6561,13 +6588,13 @@ dependencies = [
 
 [[package]]
 name = "tokio-macros"
-version = "1.8.2"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8"
+checksum = "61a573bdc87985e9d6ddeed1b3d864e8a302c847e40d647746df2f1de209d1ce"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.15",
 ]
 
 [[package]]
@@ -6623,10 +6650,10 @@ dependencies = [
 [[package]]
 name = "tokio-uds-compat"
 version = "0.1.0"
-source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#fda41b401e251976b4a645650a3f429c6ef28f1a"
+source = "git+https://github.com/facebookexperimental/rust-shed.git?branch=main#c5c0563e8ff9946a116b19e92607288bebc071bc"
 dependencies = [
  "async-io",
- "futures 0.3.26",
+ "futures 0.3.28",
  "tokio",
  "tracing",
  "uds_windows",
@@ -6726,7 +6753,7 @@ checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -6759,6 +6786,8 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
 dependencies = [
+ "futures 0.3.28",
+ "futures-task",
  "pin-project 1.0.12",
  "tracing",
 ]
@@ -6869,51 +6898,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "trust-dns-proto"
-version = "0.21.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c31f240f59877c3d4bb3b3ea0ec5a6a0cff07323580ff8c7a605cd7d08b255d"
-dependencies = [
- "async-trait",
- "cfg-if 1.0.0",
- "data-encoding",
- "enum-as-inner",
- "futures-channel",
- "futures-io",
- "futures-util",
- "idna 0.2.3",
- "ipnet",
- "lazy_static",
- "log",
- "rand 0.8.5",
- "smallvec",
- "thiserror",
- "tinyvec",
- "tokio",
- "url",
-]
-
-[[package]]
-name = "trust-dns-resolver"
-version = "0.21.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4ba72c2ea84515690c9fcef4c6c660bb9df3036ed1051686de84605b74fd558"
-dependencies = [
- "cfg-if 1.0.0",
- "futures-util",
- "ipconfig",
- "lazy_static",
- "log",
- "lru-cache",
- "parking_lot 0.12.1",
- "resolv-conf",
- "smallvec",
- "thiserror",
- "tokio",
- "trust-dns-proto",
-]
-
-[[package]]
 name = "try-lock"
 version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6936,7 +6920,7 @@ version = "0.1.0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -6997,15 +6981,15 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.10"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58"
+checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.7"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "775c11906edafc97bc378816b94585fbd9a054eabaf86fdd0ced94af449efab7"
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
 
 [[package]]
 name = "unicode-normalization"
@@ -7056,15 +7040,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
 dependencies = [
  "form_urlencoded",
- "idna 0.3.0",
+ "idna",
  "percent-encoding",
 ]
 
 [[package]]
 name = "utf8parse"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "util"
@@ -7089,12 +7073,12 @@ dependencies = [
 
 [[package]]
 name = "uuid"
-version = "1.3.0"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1674845326ee10d37ca60470760d4288a6f80f304007d92e5c53bab78c9cfd79"
+checksum = "5b55a3fef2a1e3b3a00ce878640918820d3c51081576ac657d23af9fc7928fdb"
 dependencies = [
  "atomic",
- "getrandom 0.2.8",
+ "getrandom 0.2.9",
  "serde",
  "sha1_smol",
 ]
@@ -7151,7 +7135,9 @@ dependencies = [
  "minibytes",
  "once_cell",
  "tempfile",
+ "thiserror",
  "tokio",
+ "tracing",
  "types",
  "util",
 ]
@@ -7186,12 +7172,11 @@ checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
 
 [[package]]
 name = "walkdir"
-version = "2.3.2"
+version = "2.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
+checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
 dependencies = [
  "same-file",
- "winapi 0.3.9",
  "winapi-util",
 ]
 
@@ -7244,7 +7229,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-shared",
 ]
 
@@ -7278,7 +7263,7 @@ checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -7290,13 +7275,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
 
 [[package]]
+name = "wasm-streams"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6bbae3363c08332cadccd13b67db371814cd214c2524020932f0804b8cf7c078"
+dependencies = [
+ "futures-util",
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
 name = "watchman_client"
 version = "0.8.0"
-source = "git+https://github.com/facebook/watchman.git?branch=main#12a12d48d21300a67ce900d434aa3172ee9fbd90"
+source = "git+https://github.com/facebook/watchman.git?branch=main#efc891b9f64a7b560b9e06f62fb8767343501729"
 dependencies = [
  "anyhow",
  "bytes 1.4.0",
- "futures 0.3.26",
+ "futures 0.3.28",
  "maplit",
  "serde",
  "serde_bser",
@@ -7336,15 +7334,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-dependencies = [
- "cc",
-]
-
-[[package]]
 name = "wezterm-bidi"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7373,7 +7362,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a75e78c0cc60a76de5d93f9dad05651105351e151b6446ab305514945d7588aa"
 dependencies = [
  "log",
- "ordered-float 3.4.0",
+ "ordered-float 3.6.0",
  "strsim 0.10.0",
  "thiserror",
  "wezterm-dynamic-derive",
@@ -7387,7 +7376,7 @@ checksum = "0c9f5ef318442d07b3d071f9f43ea40b80992f87faee14bb4d017b6991c307f0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -7402,12 +7391,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "widestring"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983"
-
-[[package]]
 name = "winapi"
 version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7451,18 +7434,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+dependencies = [
+ "windows-targets 0.48.0",
+]
+
+[[package]]
 name = "windows-sys"
 version = "0.42.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
@@ -7471,65 +7463,131 @@ version = "0.45.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.42.2",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets 0.48.0",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
 name = "windows-targets"
-version = "0.42.1"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
+checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.0",
+ "windows_aarch64_msvc 0.48.0",
+ "windows_i686_gnu 0.48.0",
+ "windows_i686_msvc 0.48.0",
+ "windows_x86_64_gnu 0.48.0",
+ "windows_x86_64_gnullvm 0.48.0",
+ "windows_x86_64_msvc 0.48.0",
 ]
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.1"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.1"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.1"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
 
 [[package]]
 name = "winreg"
@@ -7547,10 +7605,11 @@ dependencies = [
  "anyhow",
  "async-runtime",
  "async-trait",
+ "bitflags",
  "configmodel",
  "crossbeam 0.8.2",
  "edenfs_client",
- "futures 0.3.26",
+ "futures 0.3.28",
  "identity",
  "io",
  "manifest",
@@ -7634,9 +7693,9 @@ dependencies = [
 
 [[package]]
 name = "zstd-sys"
-version = "2.0.7+zstd.1.5.4"
+version = "2.0.8+zstd.1.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94509c3ba2fe55294d752b79842c530ccfab760192521df74a081a78d2b3c7f5"
+checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c"
 dependencies = [
  "cc",
  "libc",
diff --git a/pkgs/applications/version-management/sapling/default.nix b/pkgs/applications/version-management/sapling/default.nix
index 222d77ca71636..825394c38fc8b 100644
--- a/pkgs/applications/version-management/sapling/default.nix
+++ b/pkgs/applications/version-management/sapling/default.nix
@@ -43,7 +43,7 @@ let
     owner = "facebook";
     repo = "sapling";
     rev = version;
-    hash = "sha256-e+S5gyyJF3bu6Yo+KjG2lLfjToYzzFj10GTcrPfzxDE=";
+    hash = "sha256-rZLLRcZNeYP7yKAgBujqEJ9TwwDPAct060pZ4aj/7PM=";
   };
 
   addonsSrc = "${src}/addons";
@@ -51,7 +51,7 @@ let
   # Fetches the Yarn modules in Nix to to be used as an offline cache
   yarnOfflineCache = fetchYarnDeps {
     yarnLock = "${addonsSrc}/yarn.lock";
-    sha256 = "sha256-bJpfa1i3G5Ym5CLVpCt+7q5FNv34CoJBefXaf4qlxNA=";
+    sha256 = "sha256-cEIij7hocCSPw1Q1ESI/t9IFmLM0Nbr/IjSz3HzBdzU=";
   };
 
   # Builds the NodeJS server that runs with `sl web`
@@ -101,11 +101,10 @@ python3Packages.buildPythonApplication {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "abomonation-0.7.3+smallvec1" = "sha256-AxEXR6GC8gHjycIPOfoViP7KceM29p2ZISIt4iwJzvM=";
-      "cloned-0.1.0" = "sha256-WHsvgnbAYrFx22p3rbMzlCIaZ8+BTsMswiTv4h+A/ZI=";
-      "fb303_core-0.0.0" = "sha256-bg4+4kdHfgaEbLzkCftdLH++QKherIAfM7IzlWeOWKI=";
-      "fbthrift-0.0.1+unstable" = "sha256-0qvab0a3PdvlOq2teXKjYrB9UbWLKzMbHgv/3LSsT+4=";
-      "reqwest-0.11.11" = "sha256-uhc8XhkGW22XDNo0qreWdXeFF2cslOOZHfTRQ30IBcE=";
-      "serde_bser-0.3.1" = "sha256-Sk3prRcLr2ExXvq7Px4+NRXbY8ZaRWOYexnaUAqQ4ao=";
+      "cloned-0.1.0" = "sha256-54XxXSeGoS0j0+dDUC15xn1Hvpvl2T7NJ0dZ6/ZSd9s=";
+      "fb303_core-0.0.0" = "sha256-YVPObJaxb5Giu3s70YP5syRSCmtijUK6y9g3UOzgrQU=";
+      "fbthrift-0.0.1+unstable" = "sha256-sfn8EB1hbJGq/jFjgCrf9OyBpXmIBv5qlIsiao071Os=";
+      "serde_bser-0.3.1" = "sha256-mrY6K6hoRo4exyZlStEIh8vuQdzd8XGkaR1MCEgKIP8=";
     };
   };
   postPatch = ''
diff --git a/pkgs/applications/version-management/sapling/deps.json b/pkgs/applications/version-management/sapling/deps.json
index a40543fde87af..78e4b81adb465 100644
--- a/pkgs/applications/version-management/sapling/deps.json
+++ b/pkgs/applications/version-management/sapling/deps.json
@@ -73,6 +73,6 @@
       "url": "https://files.pythonhosted.org/packages/4c/76/1e41fbb365ad20b6efab2e61b0f4751518444c953b390f9b2d36cf97eea0/Cython-0.29.32.tar.gz"
     }
   ],
-  "version": "0.2.20230228-144002-h9440b05e",
-  "versionHash": "6463510610610398322"
+  "version": "0.2.20230330-193452-h69692651",
+  "versionHash": "16853369111871393994"
 }
diff --git a/pkgs/applications/version-management/scriv/default.nix b/pkgs/applications/version-management/scriv/default.nix
index a1238ed01df49..79e1cb1a29233 100644
--- a/pkgs/applications/version-management/scriv/default.nix
+++ b/pkgs/applications/version-management/scriv/default.nix
@@ -9,11 +9,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "scriv";
-  version = "1.2.1";
+  version = "1.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-le39dmQs965rXNQJdVRdivWPY5jKv+g/91Xo7tuN3U4=";
+    hash = "sha256-TfWX7gp7PcwNUxXXZJ3wke/LGz/wjwtRppg0ByfRcRg=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/applications/version-management/srvc/default.nix b/pkgs/applications/version-management/srvc/default.nix
index 532e046713a6c..cb01990b60f9e 100644
--- a/pkgs/applications/version-management/srvc/default.nix
+++ b/pkgs/applications/version-management/srvc/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "srvc";
-  version = "0.17.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner = "insilica";
     repo = "rs-srvc";
     rev = "v${version}";
-    hash = "sha256-6cullXcSnFlGM5O/g/J5WwBBUPfg1cbvjyPcIZ6yjRE=";
+    hash = "sha256-WpzJzjGzYX1IxC9Vz//JhRYCPZyLchv+iv+kuKkw2Os=";
   };
 
-  cargoHash = "sha256-xmHCm4kH4y0ph0ssMXZn+TvLAciYrsggyjmar85zF74=";
+  cargoHash = "sha256-WhmcJQRh2x6DZRXwzy/KtK81XXIDmNMnUtq7ylCpwTw=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.CoreServices
diff --git a/pkgs/applications/video/davinci-resolve/default.nix b/pkgs/applications/video/davinci-resolve/default.nix
index c519d5254c3c5..0b7cec3477391 100644
--- a/pkgs/applications/video/davinci-resolve/default.nix
+++ b/pkgs/applications/video/davinci-resolve/default.nix
@@ -8,7 +8,7 @@
 , addOpenGLRunpath
 , libGLU
 , xorg
-, buildFHSUserEnv
+, buildFHSEnv
 , bash
 , writeText
 , ocl-icd
@@ -133,7 +133,7 @@ let
     }
   );
 in
-buildFHSUserEnv {
+buildFHSEnv {
   name = "davinci-resolve";
   targetPkgs = pkgs: with pkgs; [
     librsvg
diff --git a/pkgs/applications/video/filebot/default.nix b/pkgs/applications/video/filebot/default.nix
index 014e009f2496f..09f99f400aa6a 100644
--- a/pkgs/applications/video/filebot/default.nix
+++ b/pkgs/applications/video/filebot/default.nix
@@ -1,14 +1,19 @@
-{ lib, stdenv, fetchurl, openjdk17, makeWrapper, autoPatchelfHook
+{ lib, stdenv, fetchurl, coreutils, openjdk17, makeWrapper, autoPatchelfHook
 , zlib, libzen, libmediainfo, curlWithGnuTls, libmms, glib
 }:
 
-stdenv.mkDerivation rec {
+let
+  lanterna = fetchurl {
+    url = "https://search.maven.org/remotecontent?filepath=com/googlecode/lanterna/lanterna/3.1.1/lanterna-3.1.1.jar";
+    hash = "sha256-7zxCeXYW5v9ritnvkwRpPKdgSptCmkT3HJOaNgQHUmQ=";
+  };
+in stdenv.mkDerivation rec {
   pname = "filebot";
-  version = "5.0.1";
+  version = "5.0.2";
 
   src = fetchurl {
-    url = "https://web.archive.org/web/20220305095926/https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
-    sha256 = "sha256-0d0+o8ZiF1m83AasjoxUDNtUSquy69wFY1m1oYeybFw=";
+    url = "https://web.archive.org/web/20230418205553/https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
+    hash = "sha256-XnzBXZy/gNA8qf7XairoviRmdQiXHbW19BgbHL52SP0=";
   };
 
   unpackPhase = "tar xvf $src";
@@ -17,6 +22,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ zlib libzen libmediainfo curlWithGnuTls libmms glib ];
 
+  postPatch = ''
+    # replace lanterna.jar to be able to specify `com.googlecode.lanterna.terminal.UnixTerminal.sttyCommand`
+    cp ${lanterna} jar/lanterna.jar
+  '';
+
   dontBuild = true;
   installPhase = ''
     mkdir -p $out/opt $out/bin
@@ -25,7 +35,8 @@ stdenv.mkDerivation rec {
     # Filebot writes to $APP_DATA, which fails due to read-only filesystem. Using current user .local directory instead.
     substituteInPlace $out/opt/filebot.sh \
       --replace 'APP_DATA="$FILEBOT_HOME/data/$(id -u)"' 'APP_DATA=''${XDG_DATA_HOME:-$HOME/.local/share}/filebot/data' \
-      --replace '$FILEBOT_HOME/data/.license' '$APP_DATA/.license'
+      --replace '$FILEBOT_HOME/data/.license' '$APP_DATA/.license' \
+      --replace '-jar "$FILEBOT_HOME/jar/filebot.jar"' '-Dcom.googlecode.lanterna.terminal.UnixTerminal.sttyCommand=${coreutils}/bin/stty -jar "$FILEBOT_HOME/jar/filebot.jar"'
     wrapProgram $out/opt/filebot.sh \
       --prefix PATH : ${lib.makeBinPath [ openjdk17 ]}
     # Expose the binary in bin to make runnable.
diff --git a/pkgs/applications/video/jellyfin-media-player/default.nix b/pkgs/applications/video/jellyfin-media-player/default.nix
index d6379550e884f..c9cea8cb81c67 100644
--- a/pkgs/applications/video/jellyfin-media-player/default.nix
+++ b/pkgs/applications/video/jellyfin-media-player/default.nix
@@ -28,18 +28,18 @@
 
 mkDerivation rec {
   pname = "jellyfin-media-player";
-  version = "1.8.1";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin-media-player";
     rev = "v${version}";
-    sha256 = "sha256-/FqxZd0cFSfkeBQmZ2gU+5FUZZ+WbQ8c2IjaZ4/uGt8=";
+    sha256 = "sha256-PfzBxvGroHgjEz4OchnECSfcb1Ds8xbE28yxneaiPuo=";
   };
 
   patches = [
-    # the webclient-files are not copied in the regular build script. Copy them just like the linux build
-    ./fix-osx-resources.patch
+    # fix the location of the jellyfin-web path
+    ./fix-web-path.patch
     # disable update notifications since the end user can't simply download the release artifacts to update
     ./disable-update-notifications.patch
   ];
@@ -79,9 +79,9 @@ mkDerivation rec {
     "-DLINUX_X11POWER=ON"
   ];
 
-  preBuild = ''
-    # link the jellyfin-web files to the expected "dist" directory
-    ln -s ${jellyfin-web}/share/jellyfin-web dist
+  preConfigure = ''
+    # link the jellyfin-web files to be copied by cmake (see fix-web-path.patch)
+    ln -s ${jellyfin-web}/share/jellyfin-web .
   '';
 
   postInstall = lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/applications/video/jellyfin-media-player/fix-osx-resources.patch b/pkgs/applications/video/jellyfin-media-player/fix-osx-resources.patch
deleted file mode 100644
index 5c562295b40ea..0000000000000
--- a/pkgs/applications/video/jellyfin-media-player/fix-osx-resources.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 780c0d3..d9c2341 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -108,8 +108,8 @@ endif()
- set(RESOURCE_ROOT .)
- if(APPLE)
-   set(RESOURCE_ROOT Resources)
--  add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DEST ${RESOURCE_ROOT}/web-client/desktop)
--  add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_SOURCE_DIR}/native/ DEST ${RESOURCE_ROOT}/web-client/extension)
-+  install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DESTINATION ${RESOURCE_ROOT}/web-client/desktop)
-+  install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${RESOURCE_ROOT}/web-client/extension)
- endif()
- 
- if(NOT APPLE)
diff --git a/pkgs/applications/video/jellyfin-media-player/fix-web-path.patch b/pkgs/applications/video/jellyfin-media-player/fix-web-path.patch
new file mode 100644
index 0000000000000..250a5c0695450
--- /dev/null
+++ b/pkgs/applications/video/jellyfin-media-player/fix-web-path.patch
@@ -0,0 +1,28 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 5abca9b..d09176b 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -107,10 +107,8 @@ endif()
+ set(RESOURCE_ROOT .)
+ if(APPLE)
+   set(RESOURCE_ROOT Resources)
+-  if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/../dist/)
+-    add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DEST ${RESOURCE_ROOT}/web-client/desktop)
+-  endif()
+-  add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_SOURCE_DIR}/native/ DEST ${RESOURCE_ROOT}/web-client/extension)
++  install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${RESOURCE_ROOT}/web-client/desktop)
++  install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${RESOURCE_ROOT}/web-client/extension)
+ endif()
+ 
+ if(NOT APPLE)
+@@ -123,9 +121,7 @@ if(NOT APPLE)
+       install(FILES ${loc}/qtwebengine_devtools_resources.pak DESTINATION resources)
+     endif()
+   endforeach()
+-  if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/../dist/)
+-    install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
+-  endif()
++  install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
+   install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/extension)
+ endif()
+ 
diff --git a/pkgs/applications/video/kodi/addons/certifi/default.nix b/pkgs/applications/video/kodi/addons/certifi/default.nix
index 0e0699752a91b..8dd9c5702a2db 100644
--- a/pkgs/applications/video/kodi/addons/certifi/default.nix
+++ b/pkgs/applications/video/kodi/addons/certifi/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildKodiAddon, fetchzip, addonUpdateScript }:
+{ lib, buildKodiAddon, fetchzip, addonUpdateScript, cacert }:
 buildKodiAddon rec {
   pname = "certifi";
   namespace = "script.module.certifi";
@@ -9,6 +9,21 @@ buildKodiAddon rec {
     sha256 = "sha256-kIPGEjmnHlgVb11W2RKBlrMy3/+kUOcQZiLCcnHCcno=";
   };
 
+  patches = [
+    # Add support for NIX_SSL_CERT_FILE
+    ./env.patch
+  ];
+
+  postPatch = ''
+    # Use our system-wide ca-bundle instead of the bundled one
+    ln -snvf "${cacert}/etc/ssl/certs/ca-bundle.crt" "lib/certifi/cacert.pem"
+  '';
+
+  propagatedNativeBuildInputs = [
+    # propagate cacerts setup-hook to set up `NIX_SSL_CERT_FILE`
+    cacert
+  ];
+
   passthru = {
     pythonPath = "lib";
     updateScript = addonUpdateScript {
diff --git a/pkgs/applications/video/kodi/addons/certifi/env.patch b/pkgs/applications/video/kodi/addons/certifi/env.patch
new file mode 100644
index 0000000000000..087ab58e4414e
--- /dev/null
+++ b/pkgs/applications/video/kodi/addons/certifi/env.patch
@@ -0,0 +1,86 @@
+diff --git a/lib/certifi/core.py b/lib/certifi/core.py
+index de02898..c033d20 100644
+--- a/lib/certifi/core.py
++++ b/lib/certifi/core.py
+@@ -4,15 +4,25 @@ certifi.py
+ 
+ This module returns the installation location of cacert.pem or its contents.
+ """
++import os
+ import sys
+ 
+ 
++def get_cacert_path_from_environ():
++    path = os.environ.get("NIX_SSL_CERT_FILE", None)
++
++    if path == "/no-cert-file.crt":
++        return None
++
++    return path
++
++
+ if sys.version_info >= (3, 11):
+ 
+     from importlib.resources import as_file, files
+ 
+     _CACERT_CTX = None
+-    _CACERT_PATH = None
++    _CACERT_PATH = get_cacert_path_from_environ()
+ 
+     def where() -> str:
+         # This is slightly terrible, but we want to delay extracting the file
+@@ -39,14 +49,16 @@ if sys.version_info >= (3, 11):
+         return _CACERT_PATH
+ 
+     def contents() -> str:
+-        return files("certifi").joinpath("cacert.pem").read_text(encoding="ascii")
++        if _CACERT_PATH is not None:
++            return open(_CACERT_PATH, encoding="utf-8").read()
++        return files("certifi").joinpath("cacert.pem").read_text(encoding="utf-8")
+ 
+ elif sys.version_info >= (3, 7):
+ 
+     from importlib.resources import path as get_path, read_text
+ 
+     _CACERT_CTX = None
+-    _CACERT_PATH = None
++    _CACERT_PATH = get_cacert_path_from_environ()
+ 
+     def where() -> str:
+         # This is slightly terrible, but we want to delay extracting the
+@@ -74,7 +86,9 @@ elif sys.version_info >= (3, 7):
+         return _CACERT_PATH
+ 
+     def contents() -> str:
+-        return read_text("certifi", "cacert.pem", encoding="ascii")
++        if _CACERT_PATH is not None:
++            return open(_CACERT_PATH, encoding="utf-8").read()
++        return read_text("certifi", "cacert.pem", encoding="utf-8")
+ 
+ else:
+     import os
+@@ -84,6 +98,8 @@ else:
+     Package = Union[types.ModuleType, str]
+     Resource = Union[str, "os.PathLike"]
+ 
++    _CACERT_PATH = get_cacert_path_from_environ()
++
+     # This fallback will work for Python versions prior to 3.7 that lack the
+     # importlib.resources module but relies on the existing `where` function
+     # so won't address issues with environments like PyOxidizer that don't set
+@@ -102,7 +118,14 @@ else:
+     def where() -> str:
+         f = os.path.dirname(__file__)
+ 
++        if _CACERT_PATH is not None:
++            return _CACERT_PATH
++
+         return os.path.join(f, "cacert.pem")
+ 
+     def contents() -> str:
+-        return read_text("certifi", "cacert.pem", encoding="ascii")
++        if _CACERT_PATH is not None:
++            with open(_CACERT_PATH, encoding="utf-8") as data:
++                return data.read()
++
++        return read_text("certifi", "cacert.pem", encoding="utf-8")
diff --git a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
index fbace20ac6eaa..652dd3a40219a 100644
--- a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
+++ b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-hts";
   namespace = "pvr.hts";
-  version = "20.6.0";
+  version = "20.6.2";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.hts";
     rev = "${version}-${rel}";
-    sha256 = "sha256-D6t61/KUEQBMw5WrCfiWyFHnGbnpHWVKzzdgiRpviig=";
+    sha256 = "sha256-AQI7s6PAro+CZ6IoKGm8ii1ZKibfNc2oVVeCCZP+DTg=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/video/lightworks/default.nix b/pkgs/applications/video/lightworks/default.nix
index b01af67cd68e6..fab7d8a443522 100644
--- a/pkgs/applications/video/lightworks/default.nix
+++ b/pkgs/applications/video/lightworks/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, dpkg, makeWrapper, buildFHSUserEnv
+{ lib, stdenv, fetchurl, dpkg, makeWrapper, buildFHSEnv
 , gtk3, gdk-pixbuf, cairo, libjpeg_original, glib, pango, libGLU
 , libGL, nvidia_cg_toolkit, zlib, openssl, libuuid , alsa-lib, udev, libjack2
 }:
@@ -73,7 +73,7 @@ let
   };
 
 # Lightworks expects some files in /usr/share/lightworks
-in buildFHSUserEnv {
+in buildFHSEnv {
   name = lightworks.name;
 
   targetPkgs = pkgs: [
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index d36e2b6774447..5fdb7d24f3878 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -82,7 +82,7 @@ let
   inherit (darwin.apple_sdk_11_0.frameworks)
     AVFoundation CoreFoundation CoreMedia Cocoa CoreAudio MediaPlayer Accelerate;
   luaEnv = lua.withPackages (ps: with ps; [ luasocket ]);
-in stdenv.mkDerivation (self: {
+in stdenv.mkDerivation (finalAttrs: {
   pname = "mpv";
   version = "0.35.1";
 
@@ -91,7 +91,7 @@ in stdenv.mkDerivation (self: {
   src = fetchFromGitHub {
     owner = "mpv-player";
     repo = "mpv";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     sha256 = "sha256-CoYTX9hgxLo72YdMoa0sEywg4kybHbFsypHk1rCM6tM=";
   };
 
@@ -233,7 +233,7 @@ in stdenv.mkDerivation (self: {
       mpv is a free and open-source general-purpose video player, based on the
       MPlayer and mplayer2 projects, with great improvements above both.
     '';
-    changelog = "https://github.com/mpv-player/mpv/releases/tag/v${self.version}";
+    changelog = "https://github.com/mpv-player/mpv/releases/tag/v${finalAttrs.version}";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres fpletz globin ma27 tadeokondrak ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/video/mpv/scripts/mpvacious.nix b/pkgs/applications/video/mpv/scripts/mpvacious.nix
index af033781ac2c4..2ba2b80cbdcb4 100644
--- a/pkgs/applications/video/mpv/scripts/mpvacious.nix
+++ b/pkgs/applications/video/mpv/scripts/mpvacious.nix
@@ -8,13 +8,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "mpvacious";
-  version = "0.20";
+  version = "0.23";
 
   src = fetchFromGitHub {
     owner = "Ajatt-Tools";
     repo = "mpvacious";
     rev = "v${version}";
-    sha256 = "sha256-9Lf7MVaJ5eC5Gb1PdGBvtENU8AAVq2jsUkY3wJfztt8=";
+    sha256 = "sha256-b0JUT5Y0u/H9p5whuFTU8EgQnKzFCUR2HA9NO+mxe04=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/video/mpv/scripts/uosc.nix b/pkgs/applications/video/mpv/scripts/uosc.nix
index 1a486dbf556d4..b88cd2c5b968b 100644
--- a/pkgs/applications/video/mpv/scripts/uosc.nix
+++ b/pkgs/applications/video/mpv/scripts/uosc.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "uosc";
-  version = "4.6.0";
+  version = "4.7.0";
 
   src = fetchFromGitHub {
     owner = "tomasklaen";
     repo = "uosc";
     rev = finalAttrs.version;
-    hash = "sha256-AxApKlSaRLPl6VsXsARfaT3kWDK6AB2AAEmIHYiuFaM=";
+    hash = "sha256-JqlBjhwRgmXl6XfHYTwtNWZj656EDHjcdWOlCgihF5I=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix b/pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix
index a3acd60b43425..2c987d5ca9324 100644
--- a/pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix
+++ b/pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix
@@ -7,7 +7,10 @@
 , wayland
 , wayland-scanner
 , obs-studio
+, libffi
 , libX11
+, libXau
+, libXdmcp
 , libxcb
 , vulkan-headers
 , vulkan-loader
@@ -17,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "obs-vkcapture";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "nowrep";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-4rEUA8V5WgAVyBeUT0ALVmj14HaAgeASYd2YiBn8MC0=";
+    hash = "sha256-UQQ8oBEnOxmSN4ZyW4LdPZYvd5eB9EmdR0UvE1wgMZw=";
   };
 
   cmakeFlags = lib.optionals stdenv.isi686 [
@@ -35,7 +38,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake extra-cmake-modules ninja wayland-scanner ];
   buildInputs = [
     libGL
+    libffi
     libX11
+    libXau
+    libXdmcp
     libxcb
     vulkan-headers
     vulkan-loader
diff --git a/pkgs/applications/video/qmplay2/default.nix b/pkgs/applications/video/qmplay2/default.nix
index d4da46cfc887c..72dd596134443 100644
--- a/pkgs/applications/video/qmplay2/default.nix
+++ b/pkgs/applications/video/qmplay2/default.nix
@@ -21,14 +21,14 @@
 , wrapQtAppsHook
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "qmplay2";
   version = "23.02.05";
 
   src = fetchFromGitHub {
     owner = "zaps166";
     repo = "QMPlay2";
-    rev = self.version;
+    rev = finalAttrs.version;
     sha256 = "sha256-ZDpUgD9qTvjopGFVrwTBSEmrXn+4aKq2zeqoTnXwmI8=";
     fetchSubmodules = true;
   };
@@ -71,7 +71,7 @@ stdenv.mkDerivation (self: {
       files, Rayman 2 music and chiptunes. It contains YouTube and MyFreeMP3
       browser.
     '';
-    changelog = "https://github.com/zaps166/QMPlay2/releases/tag/${self.version}";
+    changelog = "https://github.com/zaps166/QMPlay2/releases/tag/${finalAttrs.version}";
     license = lib.licenses.lgpl3Plus;
     maintainers = with lib.maintainers; [ AndersonTorres ];
     platforms = lib.platforms.linux;
diff --git a/pkgs/applications/video/ustreamer/default.nix b/pkgs/applications/video/ustreamer/default.nix
index 70e335192d9d3..de2b6898ddeb9 100644
--- a/pkgs/applications/video/ustreamer/default.nix
+++ b/pkgs/applications/video/ustreamer/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ustreamer";
-  version = "5.36";
+  version = "5.37";
 
   src = fetchFromGitHub {
     owner = "pikvm";
     repo = "ustreamer";
     rev = "v${version}";
-    sha256 = "sha256-VnqCiEPaBzGN2TL7oXO4T7dcNdGneac/5nFPwRPiJ9c=";
+    sha256 = "sha256-Ervzk5TNYvo7nHyt0cBN8BMjgJKu2sqeXCltero3AnE=";
   };
 
   buildInputs = [ libbsd libevent libjpeg ];
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index 457aa7a0da5d0..fd263557d48ad 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -71,7 +71,7 @@
 , onlyLibVLC ? false
 , skins2Support ? !onlyLibVLC, freetype
 , waylandSupport ? true, wayland, wayland-protocols
-, withQt5 ? true, qtbase, qtsvg, qtwayland, qtx11extras, wrapQtAppsHook
+, withQt5 ? true, qtbase, qtsvg, qtwayland, qtx11extras, wrapQtAppsHook, wrapGAppsHook
 }:
 
 # chromecastSupport requires TCP port 8010 to be open for it to work.
@@ -177,6 +177,7 @@ stdenv.mkDerivation rec {
     pkg-config
     removeReferencesTo
     unzip
+    wrapGAppsHook
   ]
   ++ optionals withQt5 [ wrapQtAppsHook ]
   ++ optionals waylandSupport [ wayland wayland-protocols ];
@@ -209,6 +210,14 @@ stdenv.mkDerivation rec {
       /usr/share/fonts/truetype/freefont ${freefont_ttf}/share/fonts/truetype
   '';
 
+
+  # to prevent double wrapping of Qtwrap and Gwrap
+  dontWrapGApps = true;
+
+  preFixup = ''
+    qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   # - Touch plugins (plugins cache keyed off mtime and file size:
   #     https://github.com/NixOS/nixpkgs/pull/35124#issuecomment-370552830
   # - Remove references to the Qt development headers (used in error messages)
diff --git a/pkgs/applications/video/vokoscreen-ng/default.nix b/pkgs/applications/video/vokoscreen-ng/default.nix
index b20d73d7c09b9..75c8fbf982a80 100644
--- a/pkgs/applications/video/vokoscreen-ng/default.nix
+++ b/pkgs/applications/video/vokoscreen-ng/default.nix
@@ -22,13 +22,13 @@
 
 mkDerivation rec {
   pname = "vokoscreen-ng";
-  version = "3.5.0";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "vkohaupt";
     repo = "vokoscreenNG";
     rev = version;
-    sha256 = "sha256-4VEIQj9/rSzXM5EQFt2I+cKKOM1URKlblf+6vlWEuO0=";
+    sha256 = "sha256-Du/Dq7AUH5CeEKYr0kxcqguAyRVI5Ame41nU3FGvG+U=";
   };
 
   qmakeFlags = [ "src/vokoscreenNG.pro" ];
diff --git a/pkgs/applications/video/webtorrent_desktop/default.nix b/pkgs/applications/video/webtorrent_desktop/default.nix
index 8f1353fa83e48..47d22267c6de3 100644
--- a/pkgs/applications/video/webtorrent_desktop/default.nix
+++ b/pkgs/applications/video/webtorrent_desktop/default.nix
@@ -2,7 +2,7 @@
 ##  - export ELECTRON_SKIP_BINARY_DOWNLOAD=1
 ##  - jq "del(.scripts.preinstall)" node_modules/shellcheck/package.json | sponge node_modules/shellcheck/package.json
 {
-  lib, stdenv, buildFHSUserEnvBubblewrap, runCommand, writeScript, fetchurl, fetchzip
+  lib, stdenv, buildFHSEnv, runCommand, writeScript, fetchurl, fetchzip
 }:
 let
   pname = "webtorrent-desktop";
@@ -20,7 +20,7 @@ runCommand "${pname}-${version}" rec {
     else
       throw "Webtorrent is not currently supported on ${stdenv.hostPlatform.system}";
 
-  fhs = buildFHSUserEnvBubblewrap rec {
+  fhs = buildFHSEnv rec {
     name = "fhsEnterWebTorrent";
     runScript = "${src}/WebTorrent";
     ## use the trampoline, if you need to shell into the fhsenv
diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix
index 7350765ab5d2f..5499d7c2fd2a2 100644
--- a/pkgs/applications/virtualization/OVMF/default.nix
+++ b/pkgs/applications/virtualization/OVMF/default.nix
@@ -48,6 +48,8 @@ edk2.mkDerivation projectDscPath (finalAttrs: {
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Qunused-arguments";
 
+  env.PYTHON_COMMAND = "python3";
+
   postPatch = lib.optionalString csmSupport ''
     cp ${seabios}/Csm16.bin OvmfPkg/Csm/Csm16/Csm16.bin
   '';
diff --git a/pkgs/applications/virtualization/cloud-hypervisor/Cargo.lock b/pkgs/applications/virtualization/cloud-hypervisor/Cargo.lock
index 65175bd35aa38..5351b6c442a54 100644
--- a/pkgs/applications/virtualization/cloud-hypervisor/Cargo.lock
+++ b/pkgs/applications/virtualization/cloud-hypervisor/Cargo.lock
@@ -179,7 +179,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "cloud-hypervisor"
-version = "31.0.0"
+version = "31.1.0"
 dependencies = [
  "anyhow",
  "api_client",
@@ -545,8 +545,7 @@ dependencies = [
 [[package]]
 name = "kvm-ioctls"
 version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8f8dc9c1896e5f144ec5d07169bc29f39a047686d29585a91f30489abfaeb6b"
+source = "git+https://github.com/rust-vmm/kvm-ioctls?branch=main#23a3bb045a467e60bb00328a0b13cea13b5815d0"
 dependencies = [
  "kvm-bindings",
  "libc",
diff --git a/pkgs/applications/virtualization/cloud-hypervisor/default.nix b/pkgs/applications/virtualization/cloud-hypervisor/default.nix
index 7991b86c6936c..abfa0b02d3eb9 100644
--- a/pkgs/applications/virtualization/cloud-hypervisor/default.nix
+++ b/pkgs/applications/virtualization/cloud-hypervisor/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cloud-hypervisor";
-  version = "31.0";
+  version = "31.1";
 
   src = fetchFromGitHub {
     owner = "cloud-hypervisor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "RDHrBu8ePpFkN7BkTbqe2EXNNW7q96zNrjo269K1Zdo=";
+    sha256 = "vQa43ic3pRzRfT8S9LQIO+VIo6AS2tEMT16CDrMw8R0=";
   };
 
   cargoLock = {
@@ -16,6 +16,7 @@ rustPlatform.buildRustPackage rec {
     outputHashes = {
       "acpi_tables-0.1.0" = "sha256-hP9Fi1K6hX0PkOuomjIzY+oOiPO/5YSNzo0Z98Syz2A=";
       "kvm-bindings-0.6.0" = "sha256-wGdAuPwsgRIqx9dh0m+hC9A/Akz9qg9BM+p06Fi5ACM=";
+      "kvm-ioctls-0.13.0" = "sha256-jHnFGwBWnAa2lRu4a5eRNy1Y26NX5MV8alJ86VR++QE=";
       "micro_http-0.1.0" = "sha256-w2witqKXE60P01oQleujmHSnzMKxynUGKWyq5GEh1Ew=";
       "mshv-bindings-0.1.1" = "sha256-NwLPzX23nOe00qGoj1rLCWsJ5xEMmPUEtPVZNAYorWQ=";
       "versionize_derive-0.1.4" = "sha256-BPl294UqjVl8tThuvylXUFjFNjJx8OSfBGJLg8jIkWw=";
diff --git a/pkgs/applications/virtualization/cri-o/wrapper.nix b/pkgs/applications/virtualization/cri-o/wrapper.nix
index 5d15847d9c3ee..c8af1b909c848 100644
--- a/pkgs/applications/virtualization/cri-o/wrapper.nix
+++ b/pkgs/applications/virtualization/cri-o/wrapper.nix
@@ -4,6 +4,7 @@
 , lib
 , extraPackages ? []
 , runc # Default container runtime
+, conntrack-tools
 , crun # Container runtime (default with cgroups v2 for podman/buildah)
 , conmon # Container runtime monitor
 , util-linux # nsenter
@@ -13,6 +14,7 @@
 let
   binPath = lib.makeBinPath ([
     runc
+    conntrack-tools
     crun
     conmon
     util-linux
diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix
index c209fee63466f..ae4896e3570dd 100644
--- a/pkgs/applications/virtualization/crun/default.nix
+++ b/pkgs/applications/virtualization/crun/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "crun";
-  version = "1.8.3";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = version;
-    hash = "sha256-to4DP8cJakqLSjrMm6Y2vfYBZ9KgSMHxOULTF3vzu0g=";
+    hash = "sha256-wJ9V47X3tofFiwOzYignycm3PTRQWcAJ9iR2r5rJeJA=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/virtualization/ecs-agent/default.nix b/pkgs/applications/virtualization/ecs-agent/default.nix
index 58c303a46c404..928eb53c2715a 100644
--- a/pkgs/applications/virtualization/ecs-agent/default.nix
+++ b/pkgs/applications/virtualization/ecs-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "amazon-ecs-agent";
-  version = "1.67.2";
+  version = "1.70.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aws";
     repo = pname;
-    hash = "sha256-iSL5ogS8BLcxge3eo+kCqtsGmj7P1wbi+/84nA9fO2Q=";
+    hash = "sha256-CAoMXWxtsGJOEOxZ8ZLwLYAWW0kY/4jryrIAFDbOeXA=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/virtualization/nixpacks/default.nix b/pkgs/applications/virtualization/nixpacks/default.nix
index 4143c21218daf..097b9a657a778 100644
--- a/pkgs/applications/virtualization/nixpacks/default.nix
+++ b/pkgs/applications/virtualization/nixpacks/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nixpacks";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "railwayapp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-q+NMV0GagcGeUb+WD8BoFjAKJWgzBSq/POqwPUADAUI=";
+    sha256 = "sha256-ldX1V2QCqeCWkBT3qolkw6rYfuawnxE0ERMzgrjFmUQ=";
   };
 
-  cargoHash = "sha256-m9CvMorM7uX6OOfVCtM2pZPgRcKm7fVoTk/SCt8FXyU=";
+  cargoHash = "sha256-DEXVoG3uWXPiNVBaSdl/523MFXC21EtXZD8PFs+3rmQ=";
 
   # skip test due FHS dependency
   doCheck = false;
diff --git a/pkgs/applications/virtualization/podman-compose/default.nix b/pkgs/applications/virtualization/podman-compose/default.nix
index a05ff32e397b9..df73860dda8bf 100644
--- a/pkgs/applications/virtualization/podman-compose/default.nix
+++ b/pkgs/applications/virtualization/podman-compose/default.nix
@@ -1,14 +1,14 @@
 { lib, buildPythonApplication, fetchFromGitHub, python-dotenv, pyyaml }:
 
 buildPythonApplication rec {
-  version = "1.0.3";
+  version = "1.0.6";
   pname = "podman-compose";
 
   src = fetchFromGitHub {
     repo = "podman-compose";
     owner = "containers";
     rev = "v${version}";
-    sha256 = "sha256-Si/O4dx9bqqRp/hTv3WbTXj46OM+PpyPBnQQWUqcZfs=";
+    sha256 = "sha256-TsNM5xORqwWge+UCijKptwbAcIz1uZFN9BuIOl28vIU=";
   };
 
   propagatedBuildInputs = [ pyyaml python-dotenv ];
diff --git a/pkgs/applications/virtualization/podman-desktop/default.nix b/pkgs/applications/virtualization/podman-desktop/default.nix
index e574bb32bad11..30dd54ba85ce3 100644
--- a/pkgs/applications/virtualization/podman-desktop/default.nix
+++ b/pkgs/applications/virtualization/podman-desktop/default.nix
@@ -12,19 +12,19 @@
 , makeDesktopItem
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "podman-desktop";
   version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman-desktop";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     sha256 = "sha256-gEjcI+bfETYZB/pHDXRcNxNVDsbwuqQL1E22fMkIJHI=";
   };
 
   offlineCache = fetchYarnDeps {
-    yarnLock = "${self.src}/yarn.lock";
+    yarnLock = "${finalAttrs.src}/yarn.lock";
     sha256 = "sha256-x0hqNxi6r1i3vBe1tJQl+Oht2St9VIH3Eq27MZLkojA=";
   };
 
@@ -103,7 +103,7 @@ stdenv.mkDerivation (self: {
       icon = "podman-desktop";
       desktopName = "Podman Desktop";
       genericName = "Desktop client for podman";
-      comment = self.meta.description;
+      comment = finalAttrs.meta.description;
       categories = [ "Utility" ];
       startupWMClass = "Podman Desktop";
     })
@@ -112,7 +112,7 @@ stdenv.mkDerivation (self: {
   meta = with lib; {
     description = "A graphical tool for developing on containers and Kubernetes";
     homepage = "https://podman-desktop.io";
-    changelog = "https://github.com/containers/podman-desktop/releases/tag/v${self.version}";
+    changelog = "https://github.com/containers/podman-desktop/releases/tag/v${finalAttrs.version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ panda2134 ];
     inherit (electron.meta) platforms;
diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix
index 52a20bb57f20d..e9bd284e838ce 100644
--- a/pkgs/applications/virtualization/podman/default.nix
+++ b/pkgs/applications/virtualization/podman/default.nix
@@ -15,6 +15,7 @@
 , nixosTests
 , python3
 , makeWrapper
+, runtimeShell
 , symlinkJoin
 , extraPackages ? [ ]
 , runc
@@ -61,13 +62,13 @@ let
 in
 buildGoModule rec {
   pname = "podman";
-  version = "4.4.4";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman";
     rev = "v${version}";
-    hash = "sha256-rLXq+sveSxeoD3gyXSnfgGFx6alOBKSRCdDHGwwvPm4=";
+    hash = "sha256-udvvTdkpL8xvY0iIMBgBFQk5sybpn9vCFFXP0ZqOajM=";
   };
 
   patches = [
@@ -99,6 +100,7 @@ buildGoModule rec {
   buildPhase = ''
     runHook preBuild
     patchShebangs .
+    substituteInPlace Makefile --replace "/bin/bash" "${runtimeShell}"
     ${if stdenv.isDarwin then ''
       make podman-remote # podman-mac-helper uses FHS paths
     '' else ''
diff --git a/pkgs/applications/virtualization/pods/Cargo.lock b/pkgs/applications/virtualization/pods/Cargo.lock
index 47a9d426bce48..bab595a2aae69 100644
--- a/pkgs/applications/virtualization/pods/Cargo.lock
+++ b/pkgs/applications/virtualization/pods/Cargo.lock
@@ -28,15 +28,15 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.69"
+version = "1.0.70"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800"
+checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4"
 
 [[package]]
 name = "ashpd"
-version = "0.4.0-alpha.2"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "974f7451ac6438b57257de542be1ffc7a7c725b6f51c47dc19351e49f1c24687"
+checksum = "31688b40eb5d739049f721d8405c33d3796b3f51f2bea84421a542dafe397e41"
 dependencies = [
  "enumflags2",
  "futures-channel",
@@ -64,74 +64,25 @@ dependencies = [
 ]
 
 [[package]]
-name = "async-executor"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b"
-dependencies = [
- "async-lock",
- "async-task",
- "concurrent-queue",
- "fastrand",
- "futures-lite",
- "slab",
-]
-
-[[package]]
-name = "async-io"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794"
-dependencies = [
- "async-lock",
- "autocfg",
- "concurrent-queue",
- "futures-lite",
- "libc",
- "log",
- "parking",
- "polling",
- "slab",
- "socket2",
- "waker-fn",
- "windows-sys 0.42.0",
-]
-
-[[package]]
-name = "async-lock"
-version = "2.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa24f727524730b077666307f2734b4a1a1c57acb79193127dcc8914d5242dd7"
-dependencies = [
- "event-listener",
-]
-
-[[package]]
 name = "async-recursion"
-version = "1.0.2"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b015a331cc64ebd1774ba119538573603427eaace0a1950c423ab971f903796"
+checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
-name = "async-task"
-version = "4.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
-
-[[package]]
 name = "async-trait"
-version = "0.1.64"
+version = "0.1.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd7fce9ba8c3c042128ce72d8b2ddbf3a05747efb67ea0313c635e10bda47a2"
+checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -160,9 +111,9 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
 name = "block-buffer"
-version = "0.10.3"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
 dependencies = [
  "generic-array",
 ]
@@ -193,9 +144,9 @@ checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
 
 [[package]]
 name = "cairo-rs"
-version = "0.16.7"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3125b15ec28b84c238f6f476c6034016a5f6cc0221cb514ca46c532139fc97d"
+checksum = "a8af54f5d48af1226928adc1f57edd22f5df1349e7da1fc96ae15cf43db0e871"
 dependencies = [
  "bitflags",
  "cairo-sys-rs",
@@ -207,9 +158,9 @@ dependencies = [
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48f4af05fabdcfa9658178e1326efa061853f040ce7d72e33af6885196f421"
+checksum = "f55382a01d30e5e53f185eee269124f5e21ab526595b872751278dfbb463594e"
 dependencies = [
  "glib-sys",
  "libc",
@@ -224,9 +175,9 @@ checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
 
 [[package]]
 name = "cfg-expr"
-version = "0.11.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa"
+checksum = "a35b255461940a32985c627ce82900867c61db1659764d3675ea81963f72a4c6"
 dependencies = [
  "smallvec",
 ]
@@ -239,9 +190,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
 dependencies = [
  "iana-time-zone",
  "js-sys",
@@ -264,18 +215,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "concurrent-queue"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e"
-dependencies = [
- "crossbeam-utils",
-]
-
-[[package]]
 name = "containers-api"
-version = "0.7.0"
-source = "git+https://github.com/vv9k/containers-api#200805805981b2bbe7154922fa0da675e93acbfc"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef94b0ff8338282b35bafb408eb0a3e53ba05bdb3b36840589ab9a67a6682593"
 dependencies = [
  "chrono",
  "flate2",
@@ -303,9 +246,9 @@ checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
+checksum = "280a9f2d8b3a38871a3c8a46fb80db65e5e5ed97da80c4d08bf27fb63e35e181"
 dependencies = [
  "libc",
 ]
@@ -320,15 +263,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "crossbeam-utils"
-version = "0.8.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
 name = "crypto-common"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -340,9 +274,9 @@ dependencies = [
 
 [[package]]
 name = "cxx"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d3488e7665a7a483b57e25bdd90d0aeb2bc7608c8d0346acf2ad3f1caf1d62"
+checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
 dependencies = [
  "cc",
  "cxxbridge-flags",
@@ -352,9 +286,9 @@ dependencies = [
 
 [[package]]
 name = "cxx-build"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48fcaf066a053a41a81dfb14d57d99738b767febb8b735c3016e469fac5da690"
+checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
 dependencies = [
  "cc",
  "codespan-reporting",
@@ -362,24 +296,24 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef98b8b717a829ca5603af80e1f9e2e48013ab227b68ef37872ef84ee479bf"
+checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.91"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "086c685979a698443656e5cf7856c95c642295a38599f12fb1ff76fb28d19892"
+checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -390,7 +324,7 @@ checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -441,18 +375,18 @@ checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "errno"
-version = "0.2.8"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0"
 dependencies = [
  "errno-dragonfly",
  "libc",
- "winapi",
+ "windows-sys",
 ]
 
 [[package]]
@@ -491,11 +425,11 @@ dependencies = [
 
 [[package]]
 name = "field-offset"
-version = "0.3.4"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
+checksum = "a3cf3a800ff6e860c863ca6d4b16fd999db8b752819c1606884047b73e468535"
 dependencies = [
- "memoffset",
+ "memoffset 0.8.0",
  "rustc_version",
 ]
 
@@ -507,8 +441,8 @@ checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall",
- "windows-sys 0.45.0",
+ "redox_syscall 0.2.16",
+ "windows-sys",
 ]
 
 [[package]]
@@ -538,9 +472,9 @@ dependencies = [
 
 [[package]]
 name = "futures"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84"
+checksum = "531ac96c6ff5fd7c62263c5e3c67a603af4fcaee2e1a0ae5565ba3a11e69e549"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -553,9 +487,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5"
+checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -563,15 +497,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608"
+checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e"
+checksum = "1997dd9df74cdac935c76252744c1ed5794fac083242ea4fe77ef3ed60ba0f83"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -580,53 +514,38 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531"
-
-[[package]]
-name = "futures-lite"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
-dependencies = [
- "fastrand",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
+checksum = "89d422fa3cbe3b40dca574ab087abb5bc98258ea57eea3fd6f1fa7162c778b91"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70"
+checksum = "3eb14ed937631bd8b8b8977f2c198443447a8355b6e3ca599f38c975e5a963b6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364"
+checksum = "ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2"
 
 [[package]]
 name = "futures-task"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366"
+checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879"
 
 [[package]]
 name = "futures-util"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1"
+checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -654,22 +573,23 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.16.7"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3578c60dee9d029ad86593ed88cb40f35c1b83360e12498d055022385dd9a05"
+checksum = "b023fbe0c6b407bd3d9805d107d9800da3829dc5a676653210f1d5f16d7f59bf"
 dependencies = [
  "bitflags",
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3092cf797a5f1210479ea38070d9ae8a5b8e9f8f1be9f32f4643c529c7d70016"
+checksum = "7b41bd2b44ed49d99277d3925652a163038bd5ed943ec9809338ffb2f4391e3b"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -680,9 +600,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2181330ebf9d091f8ea7fed6877f7adc92114128592e1fdaeb1da28e0d01e9"
+checksum = "c3abf96408a26e3eddf881a7f893a1e111767137136e347745e8ea6ed12731ff"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -696,9 +616,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de55cb49432901fe2b3534177fa06844665b9b0911d85d8601a8d8b88b7791db"
+checksum = "1bc92aa1608c089c49393d014c38ac0390d01e4841e1fedaa75dbcef77aaed64"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -713,9 +633,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9998dedfee371c33356809f24790a1593c4751367ace7f66256dd759173701a"
+checksum = "2fa73894ed86fe10157436123d8baae5f2924ebc4fa48a11d8f093e07b9ecbbd"
 dependencies = [
  "gdk4",
  "gdk4-wayland-sys",
@@ -726,9 +646,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland-sys"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7017f59dc8c3a0c25756d617be038540642be64b9f229a531507b8f8e3e645ea"
+checksum = "af41c5a9cd7e06f612b91ec45ecb423ab57921bbd92f56e46a67b962be198e0c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -737,9 +657,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d739e89b1be52f2216a6fe81a8ed7225c882b7c4f67a44c13506cc028ec48e62"
+checksum = "17de2c3554d5127b9dfacd4d1801e2e3c9163bce01c6e1c407c054e9b771f2ee"
 dependencies = [
  "gdk4",
  "gdk4-x11-sys",
@@ -750,9 +670,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11-sys"
-version = "0.5.4"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5493c6af80cdc84b284714b3313af45788a8f1afd34b020f915f6e7cd65f502"
+checksum = "e6ca6c03d5019467d21671936edeba09f908039900af8ce4b834c19646031c72"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -762,9 +682,9 @@ dependencies = [
 
 [[package]]
 name = "generic-array"
-version = "0.14.6"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
@@ -803,9 +723,9 @@ dependencies = [
 
 [[package]]
 name = "gio"
-version = "0.16.7"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a1c84b4534a290a29160ef5c6eff2a9c95833111472e824fc5cb78b513dd092"
+checksum = "2261a3b4e922ec676d1c27ac466218c38cf5dcb49a759129e54bb5046e442125"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -823,9 +743,9 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9b693b8e39d042a95547fc258a7b07349b1f0b48f4b2fa3108ba3c51c0b5229"
+checksum = "6b1d43b0d7968b48455244ecafe41192871257f5740aa6b095eb19db78e362a5"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -836,9 +756,9 @@ dependencies = [
 
 [[package]]
 name = "glib"
-version = "0.16.7"
+version = "0.17.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddd4df61a866ed7259d6189b8bcb1464989a77f1d85d25d002279bbe9dd38b2f"
+checksum = "cfb53061756195d76969292c2d2e329e01259276524a9bae6c9b73af62854773"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -851,6 +771,7 @@ dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
+ "memchr",
  "once_cell",
  "smallvec",
  "thiserror",
@@ -858,9 +779,9 @@ dependencies = [
 
 [[package]]
 name = "glib-macros"
-version = "0.16.3"
+version = "0.17.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e084807350b01348b6d9dbabb724d1a0bb987f47a2c85de200e98e12e30733bf"
+checksum = "32e73a9790e243f6d55d8e302426419f6084a1de7a84cd07f7268300408a19de"
 dependencies = [
  "anyhow",
  "heck",
@@ -868,14 +789,14 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61a4f46316d06bfa33a7ac22df6f0524c8be58e3db2d9ca99ccb1f357b62a65"
+checksum = "49f00ad0a1bf548e61adfff15d83430941d9e1bb620e334f779edd1c745680a5"
 dependencies = [
  "libc",
  "system-deps",
@@ -883,9 +804,9 @@ dependencies = [
 
 [[package]]
 name = "gobject-sys"
-version = "0.16.3"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3520bb9c07ae2a12c7f2fbb24d4efc11231c8146a86956413fb1a79bb760a0f1"
+checksum = "15e75b0000a64632b2d8ca3cf856af9308e3a970844f6e9659bd197f026793d0"
 dependencies = [
  "glib-sys",
  "libc",
@@ -894,9 +815,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.16.3"
+version = "0.17.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ecb4d347e6d09820df3bdfd89a74a8eec07753a06bb92a3aac3ad31d04447b"
+checksum = "21cf11565bb0e4dfc2f99d4775b6c329f0d40a2cff9c0066214d31a0e1b46256"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -905,9 +826,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9aa82337d3972b4eafdea71e607c23f47be6f27f749aab613f1ad8ddbe6dcd6"
+checksum = "cf80a4849a8d9565410a8fec6fc3678e9c617f4ac7be182ca55ab75016e07af9"
 dependencies = [
  "glib-sys",
  "libc",
@@ -917,9 +838,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "591239f5c52ca803b222124ac9c47f230cd180cee9b114c4d672e4a94b74f491"
+checksum = "6f01ef44fa7cac15e2da9978529383e6bee03e570ba5bf7036b4c10a15cc3a3c"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -933,9 +854,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "195a63f0be42529f98c3eb3bae0decfd0428ba2cc683b3e20ced88f340904ec5"
+checksum = "c07a84fb4dcf1323d29435aa85e2f5f58bef564342bef06775ec7bd0da1f01b0"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -949,9 +870,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.5.5"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd89dba65def483a233dc4fdd3f3dab01576e3d83f80f6c9303ebe421661855e"
+checksum = "1e30e124b5a605f6f5513db13958bfcd51d746607b20bc7bb718b33e303274ed"
 dependencies = [
  "bitflags",
  "cairo-rs",
@@ -972,23 +893,23 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.5.5"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "832687a415d9d8bc11fe9c17dda1bf13ee262c41b995dd4df1d1cce33cead405"
+checksum = "f041a797fb098bfb06e432c61738133604bfa3af57f13f1da3b9d46271422ef0"
 dependencies = [
  "anyhow",
  "proc-macro-crate",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "gtk4-sys"
-version = "0.5.5"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e370564e3fdacff7cffc99f7366b6a4689feb44e819d3ccee598a9a215b71605"
+checksum = "5f8283f707b07e019e76c7f2934bdd4180c277e08aa93f4c0d8dd07b7a34e22f"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1025,6 +946,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
 name = "hex"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1077,9 +1004,9 @@ checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
 
 [[package]]
 name = "hyper"
-version = "0.14.24"
+version = "0.14.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e011372fa0b68db8350aa7a248930ecc7839bf46d8485577d69f117a75f164c"
+checksum = "cc5e554ff619822309ffd57d8734d77cd5ce6238bc956f037ea06c58238c9899"
 dependencies = [
  "bytes 1.4.0",
  "futures-channel",
@@ -1113,16 +1040,16 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.55"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "716f12fbcfac6ffab0a5e9ec51d0a0ff70503742bb2dc7b99396394c9dc323f0"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "winapi",
+ "windows",
 ]
 
 [[package]]
@@ -1147,9 +1074,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "1.9.2"
+version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
  "hashbrown",
@@ -1167,19 +1094,20 @@ dependencies = [
 
 [[package]]
 name = "io-lifetimes"
-version = "1.0.5"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
+checksum = "09270fd4fa1111bc614ed2246c7ef56239a3063d5be0d1ec3b589c505d400aeb"
 dependencies = [
+ "hermit-abi 0.3.1",
  "libc",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.5"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
 
 [[package]]
 name = "js-sys"
@@ -1198,9 +1126,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libadwaita"
-version = "0.2.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dfa0722d4f1724f661cbf668c273c5926296ca411ed3814e206f8fd082b6c48"
+checksum = "b1c4efd2020a4fcedbad2c4a97de97bf6045e5dc49d61d5a5d0cfd753db60700"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -1217,9 +1145,9 @@ dependencies = [
 
 [[package]]
 name = "libadwaita-sys"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de902982372b454a0081d7fd9dd567b37b73ae29c8f6da1820374d345fd95d5b"
+checksum = "0727b85b4fe2b1bed5ac90df6343de15cbf8118bfb96d7c3cc1512681a4b34ac"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -1233,15 +1161,15 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.139"
+version = "0.2.140"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
+checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
 
 [[package]]
 name = "libpanel"
-version = "0.1.2"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1ec3283c330f31d070da43c360ab23a43f13a88a2c9f1897161d3358d27fec"
+checksum = "a5313f06d37cb94e7a54ce3eb8a706e0263c8ed718671d6c775e3935f23abd7a"
 dependencies = [
  "futures-core",
  "gdk4",
@@ -1254,9 +1182,9 @@ dependencies = [
 
 [[package]]
 name = "libpanel-sys"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57246fd0e698fac89bd794371e7a7db705d09ead1473cfb7f9976ddcfc215776"
+checksum = "3a80572ca80bb4d578cbc1ffe4d848c59815fc567fd67c5a64f2bf53ad78dc0e"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -1279,9 +1207,9 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.1.4"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
+checksum = "cd550e73688e6d578f0ac2119e32b797a327631a42f9433e59d02e139c8df60d"
 
 [[package]]
 name = "locale_config"
@@ -1328,18 +1256,27 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
 
 [[package]]
 name = "memoffset"
-version = "0.6.5"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
+checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "memoffset"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "mime"
-version = "0.3.16"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
 
 [[package]]
 name = "miniz_oxide"
@@ -1359,7 +1296,7 @@ dependencies = [
  "libc",
  "log",
  "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
@@ -1373,16 +1310,16 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.25.1"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
+checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
 dependencies = [
- "autocfg",
  "bitflags",
  "cfg-if",
  "libc",
- "memoffset",
+ "memoffset 0.7.1",
  "pin-utils",
+ "static_assertions",
 ]
 
 [[package]]
@@ -1410,7 +1347,7 @@ version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
 dependencies = [
- "hermit-abi",
+ "hermit-abi 0.2.6",
  "libc",
 ]
 
@@ -1470,9 +1407,9 @@ dependencies = [
 
 [[package]]
 name = "pango"
-version = "0.16.5"
+version = "0.17.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdff66b271861037b89d028656184059e03b0b6ccb36003820be19f7200b1e94"
+checksum = "52c280b82a881e4208afb3359a8e7fde27a1b272280981f1f34610bed5770d37"
 dependencies = [
  "bitflags",
  "gio",
@@ -1484,9 +1421,9 @@ dependencies = [
 
 [[package]]
 name = "pango-sys"
-version = "0.16.3"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e134909a9a293e04d2cc31928aa95679c5e4df954d0b85483159bd20d8f047f"
+checksum = "4293d0f0b5525eb5c24734d30b0ed02cd02aa734f216883f376b54de49625de8"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -1495,16 +1432,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "parking"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-
-[[package]]
 name = "paste"
-version = "1.0.11"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
+checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79"
 
 [[package]]
 name = "percent-encoding"
@@ -1513,16 +1444,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
 
 [[package]]
-name = "pest"
-version = "2.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "028accff104c4e513bad663bbcd2ad7cfd5304144404c31ed0a77ac103d00660"
-dependencies = [
- "thiserror",
- "ucd-trie",
-]
-
-[[package]]
 name = "pin-project"
 version = "0.4.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1548,7 +1469,7 @@ checksum = "851c8d0ce9bebe43790dedfc86614c23494ac9f423dd618d3a61fc693eafe61e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1559,7 +1480,7 @@ checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1582,8 +1503,8 @@ checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
 
 [[package]]
 name = "podman-api"
-version = "0.8.0"
-source = "git+https://github.com/vv9k/podman-api-rs.git#34c8f52c6a6096debe03668026d26585b02263e4"
+version = "0.10.0-dev"
+source = "git+https://github.com/vv9k/podman-api-rs.git#33cf4bf6723f269f632115c9c165d54c501e1890"
 dependencies = [
  "base64",
  "byteorder",
@@ -1605,8 +1526,8 @@ dependencies = [
 
 [[package]]
 name = "podman-api-stubs"
-version = "0.8.0"
-source = "git+https://github.com/vv9k/podman-api-rs.git#34c8f52c6a6096debe03668026d26585b02263e4"
+version = "0.10.0-dev"
+source = "git+https://github.com/vv9k/podman-api-rs.git#33cf4bf6723f269f632115c9c165d54c501e1890"
 dependencies = [
  "chrono",
  "serde",
@@ -1615,7 +1536,7 @@ dependencies = [
 
 [[package]]
 name = "pods"
-version = "1.0.6"
+version = "1.1.0"
 dependencies = [
  "anyhow",
  "ashpd",
@@ -1641,20 +1562,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "polling"
-version = "2.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6"
-dependencies = [
- "autocfg",
- "cfg-if",
- "libc",
- "log",
- "wepoll-ffi",
- "windows-sys 0.42.0",
-]
-
-[[package]]
 name = "ppv-lite86"
 version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1679,7 +1586,7 @@ dependencies = [
  "proc-macro-error-attr",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "version_check",
 ]
 
@@ -1696,18 +1603,18 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.51"
+version = "1.0.54"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+checksum = "e472a104799c74b514a57226160104aa483546de37e839ec50e3c2e41dd87534"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.23"
+version = "1.0.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
 dependencies = [
  "proc-macro2",
 ]
@@ -1752,21 +1659,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
 name = "redox_users"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
  "getrandom",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.7.1"
+version = "1.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
+checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1775,88 +1691,76 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.28"
+version = "0.6.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "rustc_version"
-version = "0.3.3"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
  "semver",
 ]
 
 [[package]]
 name = "rustix"
-version = "0.36.8"
+version = "0.37.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43abb88211988493c1abb44a70efa56ff0ce98f233b7b276146f1f3f7ba9644"
+checksum = "0e78cc525325c06b4a7ff02db283472f3c042b7ff0c391f96c6d5ac6f4f91b75"
 dependencies = [
  "bitflags",
  "errno",
  "io-lifetimes",
  "libc",
  "linux-raw-sys",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.12"
+version = "1.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
 
 [[package]]
 name = "scratch"
-version = "1.0.3"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
+checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
 
 [[package]]
 name = "semver"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
-dependencies = [
- "semver-parser",
-]
-
-[[package]]
-name = "semver-parser"
-version = "0.10.2"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
-dependencies = [
- "pest",
-]
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
 
 [[package]]
 name = "serde"
-version = "1.0.152"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.152"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.93"
+version = "1.0.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744"
 dependencies = [
  "itoa",
  "ryu",
@@ -1865,13 +1769,22 @@ dependencies = [
 
 [[package]]
 name = "serde_repr"
-version = "0.1.10"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e"
+checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
+]
+
+[[package]]
+name = "serde_spanned"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4"
+dependencies = [
+ "serde",
 ]
 
 [[package]]
@@ -1911,9 +1824,9 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
 
 [[package]]
 name = "socket2"
-version = "0.4.7"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
 dependencies = [
  "libc",
  "winapi",
@@ -1921,9 +1834,9 @@ dependencies = [
 
 [[package]]
 name = "sourceview5"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "922cc28db6bec169868319262dd932f6403e5ce95dad0d2bb6fcc9ac03be7f10"
+checksum = "850a255e21be2bfd5db5ae76f90b1748f7b397440912031eab5e10b5cab2bde8"
 dependencies = [
  "bitflags",
  "futures-channel",
@@ -1940,9 +1853,9 @@ dependencies = [
 
 [[package]]
 name = "sourceview5-sys"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73277b2a53923aeecd212a89379dce7e6c687fe35fe6dd41d9b0d7b3d4c2eb0b"
+checksum = "e7a23462cd3d696199b56317d35e69b240d655b8c70c12bd8f443b672313776c"
 dependencies = [
  "gdk-pixbuf-sys",
  "gdk4-sys",
@@ -1973,6 +1886,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "syn"
+version = "2.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21e3787bb71465627110e7d87ed4faaa36c1f61042ee67badb9e2ef173accc40"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
 name = "syslog"
 version = "6.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1987,9 +1911,9 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.0.3"
+version = "6.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff"
+checksum = "555fc8147af6256f3931a36bb83ad0023240ce9cf2b319dec8236fd1f220b05f"
 dependencies = [
  "cfg-expr",
  "heck",
@@ -2017,15 +1941,15 @@ checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
 
 [[package]]
 name = "tempfile"
-version = "3.4.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
+checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall",
+ "redox_syscall 0.3.5",
  "rustix",
- "windows-sys 0.42.0",
+ "windows-sys",
 ]
 
 [[package]]
@@ -2039,22 +1963,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.38"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
+checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.38"
+version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
+checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -2114,21 +2038,20 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.26.0"
+version = "1.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64"
+checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001"
 dependencies = [
  "autocfg",
  "bytes 1.4.0",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2",
  "tracing",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
@@ -2151,7 +2074,7 @@ dependencies = [
  "filetime",
  "futures-core",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "tokio",
  "tokio-stream",
  "xattr",
@@ -2159,11 +2082,14 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.5.11"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
+checksum = "b403acf6f2bb0859c93c7f0d967cb4a75a7ac552100f9322faf64dc047669b21"
 dependencies = [
  "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
 ]
 
 [[package]]
@@ -2171,14 +2097,19 @@ name = "toml_datetime"
 version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622"
+dependencies = [
+ "serde",
+]
 
 [[package]]
 name = "toml_edit"
-version = "0.19.4"
+version = "0.19.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a1eb0622d28f4b9c90adc4ea4b2b46b47663fde9ac5fafcb14a1369d5508825"
+checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13"
 dependencies = [
  "indexmap",
+ "serde",
+ "serde_spanned",
  "toml_datetime",
  "winnow",
 ]
@@ -2209,7 +2140,7 @@ checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2234,12 +2165,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
 
 [[package]]
-name = "ucd-trie"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81"
-
-[[package]]
 name = "uds_windows"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2251,15 +2176,15 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.10"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58"
+checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.6"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
 
 [[package]]
 name = "unicode-normalization"
@@ -2290,9 +2215,9 @@ dependencies = [
 
 [[package]]
 name = "utf8parse"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "version-compare"
@@ -2319,14 +2244,14 @@ dependencies = [
 [[package]]
 name = "vte4"
 version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4520ffebab5e51521768dd986c52079cec892ab92818f9c99dcad85816bd4fb8"
+source = "git+https://gitlab.gnome.org/World/Rust/vte4-rs.git#b8d3b182e9c28235961741e1d3d311d9689f07ff"
 dependencies = [
  "bitflags",
  "gdk4",
  "gio",
  "glib",
  "gtk4",
+ "io-lifetimes",
  "libc",
  "pango",
  "vte4-sys",
@@ -2335,8 +2260,7 @@ dependencies = [
 [[package]]
 name = "vte4-sys"
 version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f6cafdaaf6768a31d96fbd80f1e29506c21ab53d1eae1c6d803d2c48f788b63"
+source = "git+https://gitlab.gnome.org/World/Rust/vte4-rs.git#b8d3b182e9c28235961741e1d3d311d9689f07ff"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -2358,12 +2282,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "waker-fn"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
-
-[[package]]
 name = "want"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2406,7 +2324,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-shared",
 ]
 
@@ -2428,7 +2346,7 @@ checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -2440,15 +2358,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
 
 [[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-dependencies = [
- "cc",
-]
-
-[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2480,18 +2389,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows-sys"
-version = "0.42.0"
+name = "windows"
+version = "0.47.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "2649ff315bee4c98757f15dac226efe3d81927adbb6e882084bb1ee3e0c330a7"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows-targets 0.47.0",
 ]
 
 [[package]]
@@ -2500,71 +2403,128 @@ version = "0.45.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.42.2",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
 name = "windows-targets"
-version = "0.42.1"
+version = "0.47.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
+checksum = "2f8996d3f43b4b2d44327cd71b7b0efd1284ab60e6e9d0e8b630e18555d87d3e"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.47.0",
+ "windows_aarch64_msvc 0.47.0",
+ "windows_i686_gnu 0.47.0",
+ "windows_i686_msvc 0.47.0",
+ "windows_x86_64_gnu 0.47.0",
+ "windows_x86_64_gnullvm 0.47.0",
+ "windows_x86_64_msvc 0.47.0",
 ]
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "831d567d53d4f3cb1db332b68e6e2b6260228eb4d99a777d8b2e8ed794027c90"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a42d54a417c60ce4f0e31661eed628f0fa5aca73448c093ec4d45fab4c51cdf"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1925beafdbb22201a53a483db861a5644123157c1c3cee83323a2ed565d71e3"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.1"
+version = "0.47.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "3a8ef8f2f1711b223947d9b69b596cf5a4e452c930fb58b6fc3fdae7d0ec6b31"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7acaa0c2cf0d2ef99b61c308a0c3dbae430a51b7345dedec470bd8f53f5a3642"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5a0628f71be1d11e17ca4a0e9e15b3a5180f6fbf1c2d55e3ba3f850378052c1"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.47.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d6e62c256dc6d40b8c8707df17df8d774e60e39db723675241e7c15e910bce7"
 
 [[package]]
 name = "winnow"
-version = "0.3.3"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "faf09497b8f8b5ac5d3bb4d05c0a99be20f26fd3d5f2db7b0716e946d5103658"
+checksum = "ae8970b36c66498d8ff1d66685dc86b91b29db0c7739899012f63a63814b4b28"
 dependencies = [
  "memchr",
 ]
@@ -2580,16 +2540,12 @@ dependencies = [
 
 [[package]]
 name = "zbus"
-version = "3.10.0"
+version = "3.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f770930448dd412a4a7131dd968a8e6df0064db4d7916fbbd2d6c3f26b566938"
+checksum = "3dc29e76f558b2cb94190e8605ecfe77dd40f5df8c072951714b4b71a97f5848"
 dependencies = [
  "async-broadcast",
- "async-executor",
- "async-io",
- "async-lock",
  "async-recursion",
- "async-task",
  "async-trait",
  "byteorder",
  "derivative",
@@ -2620,15 +2576,16 @@ dependencies = [
 
 [[package]]
 name = "zbus_macros"
-version = "3.10.0"
+version = "3.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4832059b438689017db7340580ebabba07f114eab91bf990c6e55052408b40d8"
+checksum = "62a80fd82c011cd08459eaaf1fd83d3090c1b61e6d5284360074a7475af3a85d"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
  "regex",
- "syn",
+ "syn 1.0.109",
+ "zvariant_utils",
 ]
 
 [[package]]
@@ -2644,9 +2601,9 @@ dependencies = [
 
 [[package]]
 name = "zvariant"
-version = "3.11.0"
+version = "3.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "903169c05b9ab948ee93fefc9127d08930df4ce031d46c980784274439803e51"
+checksum = "46fe4914a985446d6fd287019b5fceccce38303d71407d9e6e711d44954a05d8"
 dependencies = [
  "byteorder",
  "enumflags2",
@@ -2659,12 +2616,24 @@ dependencies = [
 
 [[package]]
 name = "zvariant_derive"
-version = "3.11.0"
+version = "3.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cce76636e8fab7911be67211cf378c252b115ee7f2bae14b18b84821b39260b5"
+checksum = "34c20260af4b28b3275d6676c7e2a6be0d4332e8e0aba4616d34007fd84e462a"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
+ "zvariant_utils",
+]
+
+[[package]]
+name = "zvariant_utils"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53b22993dbc4d128a17a3b6c92f1c63872dd67198537ee728d8b5d7c40640a8b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
 ]
diff --git a/pkgs/applications/virtualization/pods/default.nix b/pkgs/applications/virtualization/pods/default.nix
index c10cfa3be031c..7ae492b860ad6 100644
--- a/pkgs/applications/virtualization/pods/default.nix
+++ b/pkgs/applications/virtualization/pods/default.nix
@@ -17,20 +17,20 @@
 
 stdenv.mkDerivation rec {
   pname = "pods";
-  version = "1.0.6";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "marhkb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZryzNlEj/2JTp5FJiDzXN9v1DvczfebqEOrJP+dKaRw=";
+    sha256 = "sha256-BvSDFWmIQ55kbZtWybemZXT7lSDwxSCpPAsqwElZOBM=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "containers-api-0.7.0" = "sha256-S6uDIjxFxHNqt1GK4Z+ZSTxjChNP1R5ASrO24/2oDi0=";
-      "podman-api-0.8.0" = "sha256-Gq1xcqqQZPqQ3+VEyfbdiBxeiaYiluXIa6E0el/sUIo=";
+      "podman-api-0.10.0-dev" = "sha256-6xpPdssfgXY5sDyZOzApaZPjzDLqq734UEl9FTkZyQQ=";
+      "vte4-0.5.0" = "sha256-7yXIcvMNAAeyK57O5l42ndBI+Ij55KFwClhBeLM5Zlo=";
     };
   };
 
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index c882493d8c3a9..0761d58c7265c 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -1,10 +1,10 @@
 { lib, stdenv, fetchurl, fetchpatch, python3Packages, zlib, pkg-config, glib, buildPackages
-, perl, pixman, vde2, alsa-lib, texinfo, flex
+, pixman, vde2, alsa-lib, texinfo, flex
 , bison, lzo, snappy, libaio, libtasn1, gnutls, nettle, curl, ninja, meson, sigtool
 , makeWrapper, runtimeShell, removeReferencesTo
 , attr, libcap, libcap_ng, socat, libslirp
 , CoreServices, Cocoa, Hypervisor, rez, setfile, vmnet
-, guestAgentSupport ? with stdenv.hostPlatform; isLinux || isSunOS || isWindows
+, guestAgentSupport ? with stdenv.hostPlatform; isLinux || isNetBSD || isOpenBSD || isSunOS || isWindows
 , numaSupport ? stdenv.isLinux && !stdenv.isAarch32, numactl
 , seccompSupport ? stdenv.isLinux, libseccomp
 , alsaSupport ? lib.hasSuffix "linux" stdenv.hostPlatform.system && !nixosTestRunner
@@ -27,6 +27,7 @@
 , tpmSupport ? true
 , uringSupport ? stdenv.isLinux, liburing
 , canokeySupport ? false, canokey-qemu
+, enableDocs ? true
 , hostCpuOnly ? false
 , hostCpuTargets ? (if hostCpuOnly
                     then (lib.optional stdenv.isx86_64 "i386-softmmu"
@@ -37,31 +38,37 @@
 , qemu  # for passthru.tests
 }:
 
+let
+  hexagonSupport = hostCpuTargets == null || lib.elem "hexagon" hostCpuTargets;
+in
+
 stdenv.mkDerivation rec {
   pname = "qemu"
     + lib.optionalString xenSupport "-xen"
     + lib.optionalString hostCpuOnly "-host-cpu-only"
     + lib.optionalString nixosTestRunner "-for-vm-tests";
-  version = "7.2.1";
+  version = "8.0.0";
 
   src = fetchurl {
     url = "https://download.qemu.org/qemu-${version}.tar.xz";
-    sha256 = "jIVpms+dekOl/immTN1WNwsMLRrQdLr3CYqCTReq1zs=";
+    sha256 = "u2DwNBUxGB1sw5ad0ZoBPQQnqH+RgZOXDZrbkRMeVtA=";
   };
 
-  depsBuildBuild = [ buildPackages.stdenv.cc ];
+  depsBuildBuild = [ buildPackages.stdenv.cc ]
+    ++ lib.optionals hexagonSupport [ pkg-config ];
 
   nativeBuildInputs = [
     makeWrapper removeReferencesTo
-    pkg-config flex bison meson ninja perl
+    pkg-config flex bison meson ninja
 
     # Don't change this to python3 and python3.pkgs.*, breaks cross-compilation
     python3Packages.python python3Packages.sphinx python3Packages.sphinx-rtd-theme
   ]
     ++ lib.optionals gtkSupport [ wrapGAppsHook ]
+    ++ lib.optionals hexagonSupport [ glib ]
     ++ lib.optionals stdenv.isDarwin [ sigtool ];
 
-  buildInputs = [ zlib glib perl pixman
+  buildInputs = [ zlib glib pixman
     vde2 texinfo lzo snappy libtasn1
     gnutls nettle curl libslirp
   ]
@@ -117,15 +124,6 @@ stdenv.mkDerivation rec {
       sha256 = "sha256-oC+bRjEHixv1QEFO9XAm4HHOwoiT+NkhknKGPydnZ5E=";
       revert = true;
     })
-    # glibc >=2.37 compat, see https://lore.kernel.org/qemu-devel/20230110174901.2580297-1-berrange@redhat.com/
-    (fetchpatch {
-      url = "https://gitlab.com/qemu-project/qemu/-/commit/9f0246539ae84a5e21efd1cc4516fc343f08115a.patch";
-      sha256 = "sha256-1iWOWkLH0WP1Hk23fmrRVdX7YZWUXOvWRMTt8QM93BI=";
-    })
-    (fetchpatch {
-      url = "https://gitlab.com/qemu-project/qemu/-/commit/6003159ce18faad4e1bc7bf9c85669019cd4950e.patch";
-      sha256 = "sha256-DKGCbR+VDIFLp6FhER78gyJ3Rn1dD47pMtkcIIMd0B8=";
-    })
   ]
   ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
 
@@ -150,7 +148,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--disable-strip" # We'll strip ourselves after separating debug info.
-    "--enable-docs"
+    (lib.enableFeature enableDocs "docs")
     "--enable-tools"
     "--localstatedir=/var"
     "--sysconfdir=/etc"
@@ -241,8 +239,6 @@ stdenv.mkDerivation rec {
   # Add a ‘qemu-kvm’ wrapper for compatibility/convenience.
   postInstall = ''
     ln -s $out/bin/qemu-system-${stdenv.hostPlatform.qemuArch} $out/bin/qemu-kvm
-  '' + lib.optionalString stdenv.isLinux ''
-    ln -s $out/libexec/virtiofsd $out/bin
   '';
 
   passthru = {
@@ -262,6 +258,5 @@ stdenv.mkDerivation rec {
     mainProgram = "qemu-kvm";
     maintainers = with maintainers; [ eelco qyliss ];
     platforms = platforms.unix;
-    priority = 10; # Prefer virtiofsd from the virtiofsd package.
   };
 }
diff --git a/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch b/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch
index 98cc09d720032..dc4f4abb27383 100644
--- a/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch
+++ b/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch
@@ -1,4 +1,4 @@
-From 747a741772cde6bb340eb8bdb493390280de8d16 Mon Sep 17 00:00:00 2001
+From 2ec149ea3f0046fa83e3be74aca192649a60be47 Mon Sep 17 00:00:00 2001
 From: Keno Fischer <keno@juliacomputing.com>
 Date: Sat, 16 Jun 2018 20:56:54 -0400
 Subject: [PATCH] 9p: darwin: Provide fallback impl for utimensat
@@ -29,23 +29,23 @@ Signed-off-by: Will Cohen <wwcohen@gmail.com>
  4 files changed, 111 insertions(+), 1 deletion(-)
 
 diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c
-index d42ce6d8b8..b2c1fa42e1 100644
+index 9d07620235..9c77a431d5 100644
 --- a/hw/9pfs/9p-local.c
 +++ b/hw/9pfs/9p-local.c
-@@ -1085,7 +1085,7 @@ static int local_utimensat(FsContext *s, V9fsPath *fs_path,
+@@ -1081,7 +1081,7 @@ static int local_utimensat(FsContext *s, V9fsPath *fs_path,
          goto out;
      }
  
--    ret = utimensat(dirfd, name, buf, AT_SYMLINK_NOFOLLOW);
+-    ret = qemu_utimensat(dirfd, name, buf, AT_SYMLINK_NOFOLLOW);
 +    ret = utimensat_nofollow(dirfd, name, buf);
      close_preserve_errno(dirfd);
  out:
      g_free(dirpath);
 diff --git a/hw/9pfs/9p-util-darwin.c b/hw/9pfs/9p-util-darwin.c
-index bec0253474..2fc0475292 100644
+index 95146e7354..74ab2a7f99 100644
 --- a/hw/9pfs/9p-util-darwin.c
 +++ b/hw/9pfs/9p-util-darwin.c
-@@ -95,3 +95,99 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
+@@ -145,3 +145,99 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
  }
  
  #endif
@@ -160,12 +160,12 @@ index db451b0784..320697f347 100644
 +    return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW);
 +}
 diff --git a/hw/9pfs/9p-util.h b/hw/9pfs/9p-util.h
-index 97e681e167..fd50d6243a 100644
+index c314cf381d..12d57f3398 100644
 --- a/hw/9pfs/9p-util.h
 +++ b/hw/9pfs/9p-util.h
-@@ -36,6 +36,12 @@ static inline int qemu_lsetxattr(const char *path, const char *name,
- #define qemu_lsetxattr lsetxattr
- #endif
+@@ -101,6 +101,12 @@ static inline int errno_to_dotl(int err) {
+ #define qemu_utimensat  utimensat
+ #define qemu_unlinkat   unlinkat
  
 +/* Compatibility with old SDK Versions for Darwin */
 +#if defined(CONFIG_DARWIN) && !defined(UTIME_NOW)
@@ -176,7 +176,7 @@ index 97e681e167..fd50d6243a 100644
  static inline void close_preserve_errno(int fd)
  {
      int serrno = errno;
-@@ -98,6 +104,8 @@ ssize_t flistxattrat_nofollow(int dirfd, const char *filename,
+@@ -163,6 +169,8 @@ ssize_t flistxattrat_nofollow(int dirfd, const char *filename,
                                char *list, size_t size);
  ssize_t fremovexattrat_nofollow(int dirfd, const char *filename,
                                  const char *name);
@@ -186,5 +186,4 @@ index 97e681e167..fd50d6243a 100644
  /*
   * Darwin has d_seekoff, which appears to function similarly to d_off.
 -- 
-2.35.1
-
+2.39.2
diff --git a/pkgs/applications/virtualization/rvvm/default.nix b/pkgs/applications/virtualization/rvvm/default.nix
index 54f3cf7700be8..1c5a20d8b852d 100644
--- a/pkgs/applications/virtualization/rvvm/default.nix
+++ b/pkgs/applications/virtualization/rvvm/default.nix
@@ -1,35 +1,24 @@
-{ lib, stdenv, fetchFromGitHub, SDL_compat }:
+{ lib, stdenv, fetchFromGitHub, SDL_compat, libX11, libXext }:
 
 stdenv.mkDerivation rec {
   pname = "rvvm";
-  version = "unstable-2023-01-25";
+  version = "0.5";
 
   src = fetchFromGitHub {
     owner = "LekKit";
     repo = "RVVM";
-    rev = "4de27d7083db34bd074b4f056d6eb3871ccf5c10";
-    sha256 = "sha256-FjEcXfweL6FzA6iLxl9XnKaD4Fh/wZuRTJzZzHkc/B4=";
+    rev = "v${version}";
+    sha256 = "sha256-1wAKijRYB0FGBe4cSHUynkO4ePVG4QvVIgSoWzNbqtE=";
   };
 
-  buildInputs = [ SDL_compat ];
+  buildInputs = if stdenv.isDarwin then [ SDL_compat ] else [ libX11 libXext ];
 
-  makeFlags =
-    [ "BUILDDIR=out" "BINARY=rvvm" "USE_SDL=1" "GIT_COMMIT=${src.rev}" "all" "lib" ]
+  buildFlags = [ "all" "lib" ];
+
+  makeFlags = [ "PREFIX=$(out)" ]
     # work around https://github.com/NixOS/nixpkgs/issues/19098
     ++ lib.optional (stdenv.cc.isClang && stdenv.isDarwin) "CFLAGS=-fno-lto";
 
-  installPhase = ''
-    runHook preInstall
-
-    install -d    $out/{bin,lib,include/devices}
-    install -m755 out/rvvm           -t $out/bin
-    install -m755 out/librvvm.{a,so} -t $out/lib
-    install -m644 src/rvvmlib.h      -t $out/include
-    install -m644 src/devices/*.h    -t $out/include/devices
-
-    runHook postInstall
-  '';
-
   meta = with lib; {
     homepage = "https://github.com/LekKit/RVVM";
     description = "The RISC-V Virtual Machine";
diff --git a/pkgs/applications/virtualization/sail-riscv/default.nix b/pkgs/applications/virtualization/sail-riscv/default.nix
index b952b0f189185..9a1f650132fda 100644
--- a/pkgs/applications/virtualization/sail-riscv/default.nix
+++ b/pkgs/applications/virtualization/sail-riscv/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , lib
 , arch
 , ocamlPackages
@@ -24,14 +25,24 @@ stdenv.mkDerivation rec {
   buildInputs = with ocamlPackages; [ zlib linksem ];
   strictDeps = true;
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/riscv/sail-riscv/pull/250/commits/8bd37c484b83a8ce89c8bb7a001b8ae34dc4d77f.patch";
+      hash = "sha256-tDgkGhcbT6phoCAvilxMI56YUuUqQFgvh+2QduOjdMg=";
+    })
+  ];
+
   postPatch = ''
     rm -r prover_snapshots
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
+    substituteInPlace Makefile --replace "-flto" ""
   '';
 
   makeFlags = [
     "SAIL=sail"
     "ARCH=${arch}"
     "SAIL_DIR=${ocamlPackages.sail}/share/sail"
+    "LEM_DIR=${ocamlPackages.sail}/share/lem"
   ];
 
   installPhase = ''
@@ -50,6 +61,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/riscv/sail-riscv";
     description = "A formal specification of the RISC-V architecture, written in Sail";
     maintainers = with maintainers; [ genericnerdyusername ];
+    broken = stdenv.isDarwin && stdenv.isAarch64;
     license = licenses.bsd2;
   };
 }
diff --git a/pkgs/applications/virtualization/singularity/generic.nix b/pkgs/applications/virtualization/singularity/generic.nix
index 5312dbdda0ff2..ab9f1d1ce710a 100644
--- a/pkgs/applications/virtualization/singularity/generic.nix
+++ b/pkgs/applications/virtualization/singularity/generic.nix
@@ -36,7 +36,9 @@ in
 , conmon
 , coreutils
 , cryptsetup
+, e2fsprogs
 , fakeroot
+, fuse2fs ? e2fsprogs.fuse2fs
 , go
 , gpgme
 , libseccomp
@@ -46,6 +48,10 @@ in
 , openssl
 , squashfsTools
 , squashfuse
+  # Test dependencies
+, singularity-tools
+, cowsay
+, hello
   # Overridable configurations
 , enableNvidiaContainerCli ? true
   # Compile with seccomp support
@@ -83,7 +89,7 @@ let
     ln -s ${lib.escapeShellArg newgidmapPath} "$out/bin/newgidmap"
   '');
 in
-buildGoModule {
+(buildGoModule {
   inherit pname version src;
 
   # Override vendorHash with the output got from
@@ -113,6 +119,12 @@ buildGoModule {
     which
   ];
 
+  # Search inside the project sources
+  # and see the `control` file of the Debian package from upstream repos
+  # for build-time dependencies and run-time utilities
+  # apptainer/apptainer: https://github.com/apptainer/apptainer/blob/main/dist/debian/control
+  # sylabs/singularity: https://github.com/sylabs/singularity/blob/main/debian/control
+
   buildInputs = [
     bash # To patch /bin/sh shebangs.
     conmon
@@ -120,8 +132,7 @@ buildGoModule {
     gpgme
     libuuid
     openssl
-    squashfsTools
-    squashfuse
+    squashfsTools # Required at build time by SingularityCE
   ]
   ++ lib.optional enableNvidiaContainerCli nvidia-docker
   ++ lib.optional enableSeccomp libseccomp
@@ -144,6 +155,8 @@ buildGoModule {
     bash
     coreutils
     cryptsetup # cryptsetup
+    fakeroot
+    fuse2fs # Mount ext3 filesystems
     go
     privileged-un-utils
     squashfsTools # mksquashfs unsquashfs # Make / unpack squashfs image
@@ -191,10 +204,7 @@ buildGoModule {
     substituteInPlace "$out/bin/run-singularity" \
       --replace "/usr/bin/env ${projectName}" "$out/bin/${projectName}"
     wrapProgram "$out/bin/${projectName}" \
-      --prefix PATH : "${lib.makeBinPath [
-        fakeroot
-        squashfsTools # Singularity (but not Apptainer) expects unsquashfs from the host PATH
-      ]}"
+      --prefix PATH : "''${defaultPathInputs// /\/bin:}"
     # Make changes in the config file
     ${lib.optionalString enableNvidiaContainerCli ''
       substituteInPlace "$out/etc/${projectName}/${projectName}.conf" \
@@ -235,4 +245,14 @@ buildGoModule {
     maintainers = with maintainers; [ jbedo ShamrockLee ];
     mainProgram = projectName;
   } // extraMeta;
-}
+}).overrideAttrs (finalAttrs: prevAttrs: {
+  passthru = prevAttrs.passthru or { } // {
+    tests = {
+      image-hello-cowsay = singularity-tools.buildImage {
+        name = "hello-cowsay";
+        contents = [ hello cowsay ];
+        singularity = finalAttrs.finalPackage;
+      };
+    };
+  };
+})
diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix
index a21066d775746..73bed19fb7344 100644
--- a/pkgs/applications/virtualization/singularity/packages.nix
+++ b/pkgs/applications/virtualization/singularity/packages.nix
@@ -7,20 +7,20 @@ let
   apptainer = callPackage
     (import ./generic.nix rec {
       pname = "apptainer";
-      version = "1.1.5";
+      version = "1.1.7";
       projectName = "apptainer";
 
       src = fetchFromGitHub {
         owner = "apptainer";
         repo = "apptainer";
         rev = "v${version}";
-        hash = "sha256-onJkpHJNsO0cQO2m+TmdMuMkuvH178mDhOeX41bYFic=";
+        hash = "sha256-3F8qwP27IXcnnEYMnLzkCOxQDx7yej6QIZ40Wb5pk34=";
       };
 
       # Update by running
       # nix-prefetch -E "{ sha256 }: ((import ./. { }).apptainer.override { vendorHash = sha256; }).go-modules"
       # at the root directory of the Nixpkgs repository
-      vendorHash = "sha256-tAnh7A8Lw5KtY7hq+sqHMEUlgXvgeeCKKIfRZFoRtug=";
+      vendorHash = "sha256-PfFubgR/W1WBXIsRO+Kg7hA6ebeAcRiJlTlAZbnl19A=";
 
       extraDescription = " (previously known as Singularity)";
       extraMeta.homepage = "https://apptainer.org";
@@ -38,20 +38,20 @@ let
   singularity = callPackage
     (import ./generic.nix rec {
       pname = "singularity-ce";
-      version = "3.10.4";
+      version = "3.11.1";
       projectName = "singularity";
 
       src = fetchFromGitHub {
         owner = "sylabs";
         repo = "singularity";
         rev = "v${version}";
-        hash = "sha256-bUnQXQVwaVA3Lkw3X9TBWqNBgiPxAVCHnkq0vc+CIsM=";
+        hash = "sha256-gdgg6VN3Ily+2Remz6dZBhhfWIxyaBa4bIlFcgrA/uY=";
       };
 
       # Update by running
       # nix-prefetch -E "{ sha256 }: ((import ./. { }).singularity.override { vendorHash = sha256; }).go-modules"
       # at the root directory of the Nixpkgs repository
-      vendorHash = "sha256-K8helLcOuz3E4LzBE9y3pnZqwdwhO/iMPTN1o22ipVg=";
+      vendorHash = "sha256-mBhlH6LSmcJuc6HbU/3Q9ii7vJkW9jcikBWCl8oeMOk=";
 
       # Do not build conmon from the Git submodule source,
       # Use Nixpkgs provided version
diff --git a/pkgs/applications/virtualization/vmware-workstation/default.nix b/pkgs/applications/virtualization/vmware-workstation/default.nix
index 035fc9ceb2d00..f15bc9163480f 100755
--- a/pkgs/applications/virtualization/vmware-workstation/default.nix
+++ b/pkgs/applications/virtualization/vmware-workstation/default.nix
@@ -1,5 +1,5 @@
 { stdenv
-, buildFHSUserEnv
+, buildFHSEnv
 , fetchurl
 , lib
 , zlib
@@ -64,7 +64,7 @@ let
     '';
   });
 
-  vmware-unpack-env = buildFHSUserEnv rec {
+  vmware-unpack-env = buildFHSEnv rec {
     name = "vmware-unpack-env";
     targetPkgs = pkgs: [ zlib ];
   };
diff --git a/pkgs/applications/window-managers/dwl/default.nix b/pkgs/applications/window-managers/dwl/default.nix
index 6e2e45e8b9a67..7bab957da046d 100644
--- a/pkgs/applications/window-managers/dwl/default.nix
+++ b/pkgs/applications/window-managers/dwl/default.nix
@@ -22,14 +22,14 @@
 let
   wlroots = wlroots_0_16;
 in
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "dwl";
   version = "0.4";
 
   src = fetchFromGitHub {
     owner = "djpohly";
     repo = "dwl";
-    rev = "v${self.version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-OW7K7yMYSzqZWpQ9Vmpy8EgdWvyv3q1uh8A40f6AQF4=";
   };
 
@@ -87,7 +87,7 @@ stdenv.mkDerivation (self: {
       - Limited to 2000 SLOC to promote hackability
       - Tied to as few external dependencies as possible
     '';
-    changelog = "https://github.com/djpohly/dwl/releases/tag/v${self.version}";
+    changelog = "https://github.com/djpohly/dwl/releases/tag/v${finalAttrs.version}";
     license = lib.licenses.gpl3Only;
     maintainers = [ lib.maintainers.AndersonTorres ];
     inherit (wayland.meta) platforms;
diff --git a/pkgs/applications/window-managers/hyprwm/hypr/default.nix b/pkgs/applications/window-managers/hyprwm/hypr/default.nix
index 292894b47a010..18aa5e32261f8 100644
--- a/pkgs/applications/window-managers/hyprwm/hypr/default.nix
+++ b/pkgs/applications/window-managers/hyprwm/hypr/default.nix
@@ -20,7 +20,7 @@
 , xmodmap
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "hypr";
   version = "unstable-2023-01-26";
 
@@ -72,7 +72,7 @@ stdenv.mkDerivation (self: {
   '';
 
   meta = with lib; {
-    inherit (self.src.meta) homepage;
+    inherit (finalAttrs.src.meta) homepage;
     description = "A tiling X11 window manager written in modern C++";
     license = licenses.bsd3;
     maintainers = with maintainers; [ AndersonTorres ];
diff --git a/pkgs/applications/window-managers/i3/lock-fancy-rapid.nix b/pkgs/applications/window-managers/i3/lock-fancy-rapid.nix
index 29bd81fe872c9..7060a502f128c 100644
--- a/pkgs/applications/window-managers/i3/lock-fancy-rapid.nix
+++ b/pkgs/applications/window-managers/i3/lock-fancy-rapid.nix
@@ -1,16 +1,18 @@
 { lib, stdenv, fetchFromGitHub, xorg, i3lock }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "i3lock-fancy-rapid";
-  version = "2019-10-09";
+  version = "unstable-2021-04-21";
+
   src = fetchFromGitHub {
     owner = "yvbbrjdr";
     repo = "i3lock-fancy-rapid";
-    rev = "c67f09bc8a48798c7c820d7d4749240b10865ce0";
-    sha256 = "0jhvlj6v6wx70239pgkjxd42z1s2bzfg886ra6n1rzsdclf4rkc6";
+    rev = "6eeebd4caa177b82fa5010b5e8828cce3f89fb97";
+    hash = "sha256-EoX8ts0yV/zkb4wgEh4P8noU+UraRS4w9pp+76v+Nm0=";
   };
 
   buildInputs = [ xorg.libX11 ];
+
   propagatedBuildInputs = [ i3lock ];
 
   postPatch = ''
@@ -19,8 +21,12 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
+    runHook preInstall
+
     install -D i3lock-fancy-rapid $out/bin/i3lock-fancy-rapid
     ln -s $out/bin/i3lock-fancy-rapid $out/bin/i3lock
+
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 52e6f7667a73a..7c403c6740c98 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.30.5";
+  version = "0.30.7";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-7Fjz6Q/f6jocMPAcgeodzdImILKuRmF6V0zo00ZPfjI=";
+    hash = "sha256-mxkwAKfra2btUa/l3TjJac68SmzyGwjmz4HD2yN/U8U=";
   };
 
-  cargoHash = "sha256-cHG3wUlk0AotfrQ8pYZNQDualhKSp6aNpY2mbjgnqzU=";
+  cargoHash = "sha256-jJ9JrpEJyk3Cg7YCZadESR0+9vB+ZdTQhG2affoCdx4=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 20f73952eebf8..8e2e3c9d1250d 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.3.2";
+  version = "3.3.3";
 
   src = fetchFromGitHub {
     owner = "ice-wm";
     repo = "icewm";
     rev = finalAttrs.version;
-    hash = "sha256-9fw3vqcorWZZROYm1vbDOrlkzEbuk7X2dOO/Edo3AOg=";
+    hash = "sha256-VcUc1T3uTj8fhSZ+/XWRzgoenjqA/gguxuNsj+PYzB0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/window-managers/katriawm/default.nix b/pkgs/applications/window-managers/katriawm/default.nix
index 4c75b082506d4..27ac9d75e8ae3 100644
--- a/pkgs/applications/window-managers/katriawm/default.nix
+++ b/pkgs/applications/window-managers/katriawm/default.nix
@@ -7,13 +7,13 @@
 , pkg-config
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "katriawm";
   version = "22.12";
 
   src = fetchzip {
-    name = self.pname + "-" + self.version;
-    url = "https://www.uninformativ.de/git/katriawm/archives/katriawm-v${self.version}.tar.gz";
+    name = finalAttrs.pname + "-" + finalAttrs.version;
+    url = "https://www.uninformativ.de/git/katriawm/archives/katriawm-v${finalAttrs.version}.tar.gz";
     hash = "sha256-xFKr4PxqvnQEAWplhRsaL5rhmSJpnImpk1eXFX0N1tc=";
   };
 
diff --git a/pkgs/applications/window-managers/labwc/default.nix b/pkgs/applications/window-managers/labwc/default.nix
index db8230e41c5e2..4182eb2c66677 100644
--- a/pkgs/applications/window-managers/labwc/default.nix
+++ b/pkgs/applications/window-managers/labwc/default.nix
@@ -23,14 +23,14 @@
 let
   wlroots = wlroots_0_16;
 in
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "labwc";
   version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "labwc";
     repo = "labwc";
-    rev = self.version;
+    rev = finalAttrs.version;
     hash = "sha256-yZ1tXx7AA9pFc5C6c/J3B03/TfXw1PsAunNNiee3BGU=";
   };
 
@@ -64,7 +64,7 @@ stdenv.mkDerivation (self: {
   meta = with lib; {
     homepage = "https://github.com/labwc/labwc";
     description = "A Wayland stacking compositor, similar to Openbox";
-    changelog = "https://raw.githubusercontent.com/labwc/labwc/${self.version}/NEWS.md";
+    changelog = "https://raw.githubusercontent.com/labwc/labwc/${finalAttrs.version}/NEWS.md";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres ];
     inherit (wayland.meta) platforms;
diff --git a/pkgs/applications/window-managers/owl/default.nix b/pkgs/applications/window-managers/owl/default.nix
new file mode 100644
index 0000000000000..ac42c38e7aaa4
--- /dev/null
+++ b/pkgs/applications/window-managers/owl/default.nix
@@ -0,0 +1,87 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, gnustep
+, libxkbcommon
+, makeWrapper
+, wayland
+, wayland-scanner
+, darwin
+}:
+
+assert wayland.withLibraries;
+
+let
+  mkDerivation = if stdenv.isDarwin then stdenv.mkDerivation else gnustep.gsmakeDerivation;
+in
+mkDerivation {
+  pname = "owl";
+  version = "unstable-2021-11-10";
+
+  src = fetchFromGitHub {
+    owner = "owl-compositor";
+    repo = "owl";
+    rev = "91abf02613cd2ddb97be58b5b6703240320233a0";
+    hash = "sha256-a+TznasOVEzSNrs66/y91AeMRDEfyd+WO5mO811hLj0=";
+  };
+
+  # use pregenerated nib files because generating them requires Xcode
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    sed -i "/ibtool/d" configure
+    mkdir -p build/Owl.app/Contents/Resources/English.lproj
+    cp ${./mac/MainMenu.nib} build/Owl.app/Contents/Resources/English.lproj/MainMenu.nib
+    cp ${./mac/OwlPreferences.nib} build/Owl.app/Contents/Resources/English.lproj/OwlPreferences.nib
+  '';
+
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    makeWrapper
+    wayland-scanner
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.DarwinTools
+    darwin.bootstrap_cmds
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    gnustep.make
+  ];
+
+  buildInputs = [
+    libxkbcommon
+    wayland
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Cocoa
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    gnustep.back
+    gnustep.base
+    gnustep.gui
+  ];
+
+  preConfigure = ''
+    mkdir -p build
+    cd build
+  '';
+
+  configureScript = "../configure";
+
+  # error: "Your gnustep-base was configured for the objc-nonfragile-abi but you are not using it now."
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (!stdenv.isDarwin) "-fobjc-runtime=gnustep-2.0";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/{Applications,bin}
+    mv Owl.app $out/Applications
+    makeWrapper $out/{Applications/Owl.app${lib.optionalString stdenv.isDarwin "/Contents/MacOS"},bin}/Owl
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A portable Wayland compositor in Objective-C";
+    homepage = "https://github.com/owl-compositor/owl";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ wegank ];
+    platforms = platforms.unix;
+    mainProgram = "Owl";
+  };
+}
diff --git a/pkgs/applications/window-managers/owl/mac/MainMenu.nib b/pkgs/applications/window-managers/owl/mac/MainMenu.nib
new file mode 100644
index 0000000000000..ea5c6f8fe3a0d
--- /dev/null
+++ b/pkgs/applications/window-managers/owl/mac/MainMenu.nib
Binary files differdiff --git a/pkgs/applications/window-managers/owl/mac/OwlPreferences.nib b/pkgs/applications/window-managers/owl/mac/OwlPreferences.nib
new file mode 100644
index 0000000000000..14f187d144e58
--- /dev/null
+++ b/pkgs/applications/window-managers/owl/mac/OwlPreferences.nib
Binary files differdiff --git a/pkgs/applications/window-managers/pekwm/default.nix b/pkgs/applications/window-managers/pekwm/default.nix
index f2d0e1d484d76..dcd2bb27a71d5 100644
--- a/pkgs/applications/window-managers/pekwm/default.nix
+++ b/pkgs/applications/window-managers/pekwm/default.nix
@@ -16,14 +16,14 @@
 , pkg-config
 }:
 
-stdenv.mkDerivation (self: {
+stdenv.mkDerivation (finalAttrs: {
   pname = "pekwm";
   version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "pekdon";
     repo = "pekwm";
-    rev = "release-${self.version}";
+    rev = "release-${finalAttrs.version}";
     hash= "sha256-hA+TBAs9NMcc5DKIkzyUHWck3Xht+yeCO54xJ6oXXuQ=";
   };
 
@@ -65,7 +65,7 @@ stdenv.mkDerivation (self: {
         they should when starting applications.
       - Chainable Keygrabber, usability for everyone.
     '';
-    changelog = "https://raw.githubusercontent.com/pekwm/pekwm/release-${self.version}/NEWS.md";
+    changelog = "https://raw.githubusercontent.com/pekwm/pekwm/release-${finalAttrs.version}/NEWS.md";
     license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.AndersonTorres ];
     platforms = lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/sway/fx.nix b/pkgs/applications/window-managers/sway/fx.nix
new file mode 100644
index 0000000000000..27c440a38c729
--- /dev/null
+++ b/pkgs/applications/window-managers/sway/fx.nix
@@ -0,0 +1,29 @@
+{ fetchFromGitHub, lib, sway-unwrapped }:
+
+sway-unwrapped.overrideAttrs (oldAttrs: rec {
+  pname = "swayfx";
+  version = "0.2";
+
+  src = fetchFromGitHub {
+    owner = "WillPower3309";
+    repo = "swayfx";
+    rev = version;
+    sha256 = "sha256-nVy7GdAnheWhjevcCPE407xWSLN8F4Le0uq2RDwv/Zc=";
+  };
+
+  meta = with lib; {
+    description = "A Beautiful Sway Fork";
+    homepage = "https://github.com/WillPower3309/swayfx";
+    maintainers = with maintainers; [ ricarch97 ];
+    license = licenses.mit;
+    platforms = platforms.linux;
+
+    longDescription = ''
+      Fork of Sway, an incredible and one of the most well established Wayland
+      compositors, and a drop-in replacement for the i3 window manager for X11.
+      SwayFX adds extra options and effects to the original Sway, such as rounded corners,
+      shadows and inactive window dimming to bring back some of the Picom X11
+      compositor functionality, which was commonly used with the i3 window manager.
+    '';
+  };
+})